changing license to MIT and removing GPL license headers
Summary by CodeRabbit
-
Chores
- Project license changed from GNU GPLv2 to MIT (copyright 2015–2025); legacy GPL license file removed and new LICENSE added; packaging metadata updated to reflect MIT.
- .gitignore adjusted to track the new license filename.
-
Documentation
- Removed or simplified legacy file header/license comments and minor docstring wording clarifications across several modules.
✏️ Tip: You can customize this high-level summary in your review settings.
Walkthrough
This PR replaces GPLv2 licensing with the MIT license: removes GPLv2 headers from many source files, deletes LICENSE.txt (GPLv2) and adds LICENSE (MIT, 2015–2025 TemoaProject Team), updates .gitignore to unignore LICENSE, and sets license = "MIT" in pyproject.toml.
Changes
| Cohort / File(s) | Summary |
|---|---|
License Configuration .gitignore, LICENSE, LICENSE.txt, pyproject.toml |
.gitignore negated pattern changed to unignore LICENSE; added LICENSE (MIT text); removed LICENSE.txt (GPLv2); updated pyproject.toml license from { file = "LICENSE.txt" } to "MIT". |
Core module temoa/core/modes.py |
Removed file-level GPLv2 header block; code unchanged. |
Method of Morris extension temoa/extensions/method_of_morris/__init__.py, temoa/extensions/method_of_morris/morris_evaluate.py |
Removed GPLv2 header/docstrings; functionality unchanged. |
Modeling-to-generate-alternatives extension temoa/extensions/modeling_to_generate_alternatives/... ( __init__.py, hull.py, manager_factory.py, mga_constants.py, vector_manager.py) |
Removed GPLv2 header blocks and metadata; module docstrings/code retained. |
Myopic extension temoa/extensions/myopic/... ( __init__.py, myopic_index.py, myopic_progress_mapper.py) |
Removed GPLv2 headers; trivial docstring reflow in myopic_index.py; no functional changes. |
Single Vector MGA extension temoa/extensions/single_vector_mga/... ( __init__.py, output_summary.py, sv_mga_sequencer.py) |
Removed GPLv2 header blocks; code unchanged. |
Stochastics extension temoa/extensions/stochastics/... ( generate_scenario_tree-nonhomogenous.py, generate_scenario_tree.py, temoa_stochastic.py) |
Removed GPLv2 headers; changed shebangs in scenario-tree scripts from pyomo_python to python; no other logic changes. |
Estimated code review effort
🎯 2 (Simple) | ⏱️ ~12 minutes
Possibly related issues
- TemoaProject/temoa#223 — Implements the license migration described (replacing GPLv2 headers, adding MIT
LICENSE, and updatingpyproject.toml).
🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
| Check name | Status | Explanation |
|---|---|---|
| Description Check | ✅ Passed | Check skipped - CodeRabbit’s high-level summary is enabled. |
| Title check | ✅ Passed | The pull request title accurately summarizes the main changes: transitioning from GPL to MIT license and removing GPL headers from multiple files. |
| Docstring Coverage | ✅ Passed | No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. |
✏️ Tip: You can configure your own custom pre-merge checks in the settings.
✨ Finishing touches
- [ ] 📝 Generate docstrings
📜 Recent review details
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
📥 Commits
Reviewing files that changed from the base of the PR and between 4ebd656cdcee625d84f310d756526bf227622a01 and 952072f437a057b64b0bffaf833e218b2da8aaab.
📒 Files selected for processing (21)
-
.gitignore -
LICENSE -
LICENSE.txt -
pyproject.toml -
temoa/core/modes.py -
temoa/extensions/method_of_morris/__init__.py -
temoa/extensions/method_of_morris/morris_evaluate.py -
temoa/extensions/modeling_to_generate_alternatives/__init__.py -
temoa/extensions/modeling_to_generate_alternatives/hull.py -
temoa/extensions/modeling_to_generate_alternatives/manager_factory.py -
temoa/extensions/modeling_to_generate_alternatives/mga_constants.py -
temoa/extensions/modeling_to_generate_alternatives/vector_manager.py -
temoa/extensions/myopic/__init__.py -
temoa/extensions/myopic/myopic_index.py -
temoa/extensions/myopic/myopic_progress_mapper.py -
temoa/extensions/single_vector_mga/__init__.py -
temoa/extensions/single_vector_mga/output_summary.py -
temoa/extensions/single_vector_mga/sv_mga_sequencer.py -
temoa/extensions/stochastics/generate_scenario_tree-nonhomogenous.py -
temoa/extensions/stochastics/generate_scenario_tree.py -
temoa/extensions/stochastics/temoa_stochastic.py
💤 Files with no reviewable changes (15)
- temoa/extensions/myopic/init.py
- temoa/extensions/method_of_morris/morris_evaluate.py
- LICENSE.txt
- temoa/extensions/single_vector_mga/init.py
- temoa/extensions/modeling_to_generate_alternatives/mga_constants.py
- temoa/extensions/modeling_to_generate_alternatives/hull.py
- temoa/core/modes.py
- temoa/extensions/method_of_morris/init.py
- temoa/extensions/stochastics/temoa_stochastic.py
- temoa/extensions/single_vector_mga/sv_mga_sequencer.py
- temoa/extensions/myopic/myopic_progress_mapper.py
- temoa/extensions/single_vector_mga/output_summary.py
- temoa/extensions/modeling_to_generate_alternatives/vector_manager.py
- temoa/extensions/modeling_to_generate_alternatives/init.py
- temoa/extensions/modeling_to_generate_alternatives/manager_factory.py
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
- GitHub Check: setup and test (macos-latest, 3.12)
- GitHub Check: setup and test (windows-latest, 3.13)
- GitHub Check: setup and test (windows-latest, 3.12)
- GitHub Check: setup and test (macos-latest, 3.13)
🔇 Additional comments (6)
temoa/extensions/myopic/myopic_index.py (1)
1-61: LGTM!The GPL license header removal aligns with the PR objectives. The minor docstring reflow on lines 53-54 and 56 improves readability without altering functionality.
.gitignore (1)
21-21: LGTM!The change correctly unignores the new MIT
LICENSEfile, aligning with the license migration fromLICENSE.txt.temoa/extensions/stochastics/generate_scenario_tree.py (1)
1-1: LGTM!The shebang update to standard
pythonis consistent with the parallel change ingenerate_scenario_tree-nonhomogenous.py. The verification script in the first file will confirm both scripts function correctly.LICENSE (1)
1-21: LGTM!The MIT License text is standard and correctly formatted. The copyright years (2015-2025) and holder (TemoaProject Team) appropriately reflect the project's history and the license transition.
temoa/extensions/stochastics/generate_scenario_tree-nonhomogenous.py (1)
1-1: No issues with the shebang change to standard Python.The script uses standard Pyomo library imports (line 11:
from pyomo.core.base.sets) that work correctly with the modern Python interpreter. Thepyomo_pythonwrapper is not required for this functionality. References topyomo_pythonin the file appear only in documentation strings (help text), which document the old usage pattern but don't affect script execution. The shebang change is safe and is a reasonable modernization.pyproject.toml (1)
7-7: License change is complete and properly implemented.The change to
license = "MIT"(SPDX identifier) is syntactically correct and follows modern packaging standards. Verification confirms the transition from GPLv2 to MIT is fully executed:
- ✓ LICENSE file exists with proper MIT License text and correct copyright years (2015-2025 TemoaProject Team)
- ✓ Old LICENSE.txt (GPLv2) successfully removed
- ✓ All GPL references completely removed from source files (0 GPL mentions found across the codebase)
- ✓ No GPL copyright headers remain in any source files
The license change is technically complete and consistent.
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
Comment @coderabbitai help to get the list of available commands and usage tips.