From fb44b01d3c400d13051493232dbfcd18778480bf Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Sun, 7 Dec 2025 20:23:45 -0500 Subject: [PATCH 01/31] Create changelog.yml for release drafting Add changelog.yml for processing merged PRs. --- .github/workflows/changelog.yml | 1 + 1 file changed, 1 insertion(+) create mode 100644 .github/workflows/changelog.yml diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml new file mode 100644 index 000000000..2acfe1c63 --- /dev/null +++ b/.github/workflows/changelog.yml @@ -0,0 +1 @@ +# this file is intended to sorta address release drafting by processing each merged PR. From 6c347054862c67fc17e632f5431837660cc1fed8 Mon Sep 17 00:00:00 2001 From: Malmahrouqi3 Date: Mon, 8 Dec 2025 22:39:49 -0500 Subject: [PATCH 02/31] new workflow --- .github/workflows/changelog.yml | 56 ++++++++++++++++++++++++++++++++- 1 file changed, 55 insertions(+), 1 deletion(-) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 2acfe1c63..6d3acb128 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -1 +1,55 @@ -# this file is intended to sorta address release drafting by processing each merged PR. +name: Populate Changelog +on: + pull_request: + types: [closed] +jobs: + self: + if: github.event.pull_request.merged == true + runs-on: ubuntu-latest + steps: + - name: Checkout RocketPy repository + uses: actions/checkout@v3 + with: + repository: Malmahrouqi3/RocketPy-mo2 + ref: develop + token: ${{ secrets.TOKEN }} + + - name: Update Changelog + env: + PR_TITLE: ${{ github.event.pull_request.title }} + PR_NUMBER: ${{ github.event.pull_request.number }} + PR_LABELS: ${{ join(github.event.pull_request.labels.*.name, ',') }} + run: | + SECTION="### Added" + PREFIX="ENH" + + if [[ "$PR_LABELS" == *"Bug"* ]]; then + SECTION="### Fixed" + PREFIX="BUG" + elif [[ "$PR_LABELS" == *"Refactor"* ]] || [[ "$PR_LABELS" == *"Maintenance"* ]]; then + SECTION="### Changed" + PREFIX="MNT" + elif [[ "$PR_LABELS" == *"Docs"* ]] && [[ "$PR_LABELS" == *"Git housekeeping"* ]]; then + SECTION="### Changed" + PREFIX="DOC" + elif [[ "$PR_LABELS" == *"Docs"* ]]; then + # Only documentation -> Added section + SECTION="### Added" + PREFIX="DOC" + elseif [[ "$PR_LABELS" == *"Tests"* ]]; then + SECTION="### Changed" + PREFIX="TST" + fi + + ENTRY="- $PREFIX: $PR_TITLE [#$PR_NUMBER](https://github.com/RocketPy-Team/RocketPy/pull/$PR_NUMBER)" + SECTION_LINE=$(grep -n "^$SECTION$" CHANGELOG.md | head -1 | cut -d: -f1) + + sed -i "${SECTION_LINE}a\\$ENTRY" CHANGELOG.md + + - name: Commit and Push changes + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + git add CHANGELOG.md + git commit -m "docs: update changelog for PR #${{ github.event.pull_request.number }}" + git push \ No newline at end of file From d953f712790b4576c1b3b56975cce189d9b9e5be Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 22:51:29 -0500 Subject: [PATCH 03/31] Change branch reference for changelog update --- .github/workflows/changelog.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 6d3acb128..cb4ad05d9 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -11,7 +11,7 @@ jobs: uses: actions/checkout@v3 with: repository: Malmahrouqi3/RocketPy-mo2 - ref: develop + ref: changelog-update token: ${{ secrets.TOKEN }} - name: Update Changelog @@ -52,4 +52,4 @@ jobs: git config user.email "github-actions[bot]@users.noreply.github.com" git add CHANGELOG.md git commit -m "docs: update changelog for PR #${{ github.event.pull_request.number }}" - git push \ No newline at end of file + git push From 4c018b9eb49872388ccd5c8c9d9427005781a3c4 Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 22:54:13 -0500 Subject: [PATCH 04/31] Update auto-assign.yml --- .github/workflows/auto-assign.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/auto-assign.yml b/.github/workflows/auto-assign.yml index e056651e6..ddd6458a7 100644 --- a/.github/workflows/auto-assign.yml +++ b/.github/workflows/auto-assign.yml @@ -10,3 +10,8 @@ jobs: with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} CONFIG_FILE: .github/auto-assign.yml + + + + + From 9a7a4cd157b79dcd997c283a3dbd73c0b78b6f33 Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:02:46 -0500 Subject: [PATCH 05/31] Fix typo in changelog.yml conditional statement --- .github/workflows/changelog.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index cb4ad05d9..72c4298dc 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -36,7 +36,7 @@ jobs: # Only documentation -> Added section SECTION="### Added" PREFIX="DOC" - elseif [[ "$PR_LABELS" == *"Tests"* ]]; then + elif [[ "$PR_LABELS" == *"Tests"* ]]; then SECTION="### Changed" PREFIX="TST" fi From dac3ae2d4135029f48d19147a190aa66e73134a1 Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:06:32 -0500 Subject: [PATCH 06/31] Update README with main features section Added new section for main features of RocketPy. --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 8247ab1a3..b2c2c3f01 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,9 @@ RocketPy is the next-generation trajectory simulation solution for High-Power Rocketry. The code is written as a [Python](http://www.python.org) library and allows for a complete 6 degrees of freedom simulation of a rocket's flight trajectory, including high-fidelity variable mass effects as well as descent under parachutes. Weather conditions, such as wind profiles, can be imported from sophisticated datasets, allowing for realistic scenarios. Furthermore, the implementation facilitates complex simulations, such as multi-stage rockets, design and trajectory optimization and dispersion analysis. + + + ## Main features 1. **Nonlinear 6 Degrees of Freedom Simulations** From bf7c48d71058e79ab5ba5f30d9cb6c090cd708b3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 9 Dec 2025 04:08:41 +0000 Subject: [PATCH 07/31] docs: update changelog for PR #3 --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7090973ad..3bb2e21ae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -31,6 +31,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). Attention: The newest changes should be on top --> ### Added +- ENH: BUG: Fix of Floating Point Precision Errors/Warnings [#3](https://github.com/RocketPy-Team/RocketPy/pull/3) ### Changed From 2581538bb35972e5870b838aab69cb569f535b2f Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:11:34 -0500 Subject: [PATCH 08/31] Enhance community section in README Added emphasis to the community invitation. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8247ab1a3..1c6209cb1 100644 --- a/README.md +++ b/README.md @@ -96,7 +96,7 @@ Check out documentation details using the links below:
-# Join Our Community! +# Join Our Community! Of course RocketPy is growing fast! Many university groups and rocket hobbyists have already started using it. The number of stars and forks for this repository is skyrocketing. And this is all thanks to a great community of users, engineers, developers, marketing specialists, and everyone interested in helping. From 313f077fd6dc8c7a28e181e7d5d923dc815b098d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 9 Dec 2025 04:14:13 +0000 Subject: [PATCH 09/31] docs: update changelog for PR #4 --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3bb2e21ae..e042fa6b7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -34,6 +34,7 @@ Attention: The newest changes should be on top --> - ENH: BUG: Fix of Floating Point Precision Errors/Warnings [#3](https://github.com/RocketPy-Team/RocketPy/pull/3) ### Changed +- MNT: MNT: Adjusted README [#4](https://github.com/RocketPy-Team/RocketPy/pull/4) ### Fixed From c6fb2f993b02aed8fbe90f72acdc3f47d309d1d9 Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:17:46 -0500 Subject: [PATCH 10/31] Update README with RocketPy import example Added import statement example for RocketPy classes. --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 8247ab1a3..286f444b9 100644 --- a/README.md +++ b/README.md @@ -142,6 +142,9 @@ The following image shows how the four main classes interact with each other: A typical workflow starts with importing these classes from RocketPy: + + + ```python from rocketpy import Environment, Rocket, SolidMotor, Flight ``` From 37222835fd6c379cb246a191d819e39bad4189df Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 9 Dec 2025 04:19:37 +0000 Subject: [PATCH 11/31] docs: update changelog for PR #5 --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e042fa6b7..6ec4abf36 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -34,6 +34,7 @@ Attention: The newest changes should be on top --> - ENH: BUG: Fix of Floating Point Precision Errors/Warnings [#3](https://github.com/RocketPy-Team/RocketPy/pull/3) ### Changed +- DOC: Update README with RocketPy import example [#5](https://github.com/RocketPy-Team/RocketPy/pull/5) - MNT: MNT: Adjusted README [#4](https://github.com/RocketPy-Team/RocketPy/pull/4) ### Fixed From f3a638720579c98ddf37697a194ae0cdc8fe39dc Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:23:16 -0500 Subject: [PATCH 12/31] Fix typo in changelog commit message --- .github/workflows/changelog.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 72c4298dc..9fd2e9d8f 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -51,5 +51,5 @@ jobs: git config user.name "github-actions[bot]" git config user.email "github-actions[bot]@users.noreply.github.com" git add CHANGELOG.md - git commit -m "docs: update changelog for PR #${{ github.event.pull_request.number }}" + git commit -m "DOC: Ipdate Changelog for PR #${{ github.event.pull_request.number }}" git push From 0459771dd1e8175648c282ff463925fef4db4756 Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:23:44 -0500 Subject: [PATCH 13/31] Update .gitignore --- .gitignore | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 0d6518eb2..1d44c5990 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,9 @@ __pycache__/ # C extensions *.so + + + # Distribution / packaging .Python build/ @@ -171,4 +174,4 @@ cython_debug/ .idea/ # Mac -.DS_Store \ No newline at end of file +.DS_Store From e9370edb8fe315f100502c00206e41402f299aad Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 9 Dec 2025 04:25:11 +0000 Subject: [PATCH 14/31] DOC: Ipdate Changelog for PR #6 --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6ec4abf36..93cee7659 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -34,6 +34,7 @@ Attention: The newest changes should be on top --> - ENH: BUG: Fix of Floating Point Precision Errors/Warnings [#3](https://github.com/RocketPy-Team/RocketPy/pull/3) ### Changed +- TST: Update .gitignore [#6](https://github.com/RocketPy-Team/RocketPy/pull/6) - DOC: Update README with RocketPy import example [#5](https://github.com/RocketPy-Team/RocketPy/pull/5) - MNT: MNT: Adjusted README [#4](https://github.com/RocketPy-Team/RocketPy/pull/4) From cd9e3ede91f04cb857d46963dfbb5d616d502e70 Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:26:17 -0500 Subject: [PATCH 15/31] Fix typo in changelog commit message --- .github/workflows/changelog.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 9fd2e9d8f..9323118e4 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -51,5 +51,5 @@ jobs: git config user.name "github-actions[bot]" git config user.email "github-actions[bot]@users.noreply.github.com" git add CHANGELOG.md - git commit -m "DOC: Ipdate Changelog for PR #${{ github.event.pull_request.number }}" + git commit -m "DOC: Update Changelog for PR #${{ github.event.pull_request.number }}" git push From 7618d5ec3c296f9451cbcf7938a94765d01f3986 Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:30:38 -0500 Subject: [PATCH 16/31] Add branch filter for changelog workflow --- .github/workflows/changelog.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 9323118e4..2be5e0b5e 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -2,6 +2,8 @@ name: Populate Changelog on: pull_request: types: [closed] + branches: + - develop jobs: self: if: github.event.pull_request.merged == true From 4ef3d5bbafb660e8a7c6cc67b2334b1cdd7d175d Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:31:36 -0500 Subject: [PATCH 17/31] Update README with aerodynamic models section --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 8247ab1a3..6d2b824d4 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,10 @@ RocketPy is the next-generation trajectory simulation solution for High-Power Ro - Custom atmospheric profiles and Soundings (Wyoming) - Weather forecasts, reanalysis, and ensembles for realistic scenarios + + + + 3. **Aerodynamic Models** - Optional Barrowman equations for lift coefficients - Easy import of drag coefficients from other sources (e.g., CFD simulations) From 09400af98cd4672458ba2e55d4bb378d76054a08 Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 8 Dec 2025 23:32:37 -0500 Subject: [PATCH 18/31] Change target branch for pull request workflow --- .github/workflows/changelog.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 2be5e0b5e..a8595ce71 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -3,7 +3,7 @@ on: pull_request: types: [closed] branches: - - develop + - changelog-update jobs: self: if: github.event.pull_request.merged == true From 6a903953fe44282b50064aa09b380bd91823d99b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 9 Dec 2025 04:34:14 +0000 Subject: [PATCH 19/31] DOC: Update Changelog for PR #7 --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 93cee7659..e30cf57d7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -39,6 +39,7 @@ Attention: The newest changes should be on top --> - MNT: MNT: Adjusted README [#4](https://github.com/RocketPy-Team/RocketPy/pull/4) ### Fixed +- BUG: Update README with aerodynamic models section [#7](https://github.com/RocketPy-Team/RocketPy/pull/7) ## [v1.11.0] - 2025-11-01 From 581f82a800fed6ee444fab7a52a567cb5548608c Mon Sep 17 00:00:00 2001 From: Malmahrouqi3 Date: Tue, 9 Dec 2025 17:14:24 -0500 Subject: [PATCH 20/31] updating new things --- .github/workflows/changelog.yml | 2 +- CHANGELOG.md | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index a8595ce71..f44188f7f 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -46,7 +46,7 @@ jobs: ENTRY="- $PREFIX: $PR_TITLE [#$PR_NUMBER](https://github.com/RocketPy-Team/RocketPy/pull/$PR_NUMBER)" SECTION_LINE=$(grep -n "^$SECTION$" CHANGELOG.md | head -1 | cut -d: -f1) - sed -i "${SECTION_LINE}a\\$ENTRY" CHANGELOG.md + sed -i "${SECTION_LINE}a\\\\n$ENTRY" CHANGELOG.md - name: Commit and Push changes run: | diff --git a/CHANGELOG.md b/CHANGELOG.md index e30cf57d7..3bb2e21ae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -34,12 +34,8 @@ Attention: The newest changes should be on top --> - ENH: BUG: Fix of Floating Point Precision Errors/Warnings [#3](https://github.com/RocketPy-Team/RocketPy/pull/3) ### Changed -- TST: Update .gitignore [#6](https://github.com/RocketPy-Team/RocketPy/pull/6) -- DOC: Update README with RocketPy import example [#5](https://github.com/RocketPy-Team/RocketPy/pull/5) -- MNT: MNT: Adjusted README [#4](https://github.com/RocketPy-Team/RocketPy/pull/4) ### Fixed -- BUG: Update README with aerodynamic models section [#7](https://github.com/RocketPy-Team/RocketPy/pull/7) ## [v1.11.0] - 2025-11-01 From 9482736e9371fb5bd62859eebd104898578d2b10 Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Tue, 9 Dec 2025 17:15:19 -0500 Subject: [PATCH 21/31] Remove floating point precision fix entry from CHANGELOG Removed entry for floating point precision errors from changelog. --- CHANGELOG.md | 1 - 1 file changed, 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3bb2e21ae..7090973ad 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -31,7 +31,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/). Attention: The newest changes should be on top --> ### Added -- ENH: BUG: Fix of Floating Point Precision Errors/Warnings [#3](https://github.com/RocketPy-Team/RocketPy/pull/3) ### Changed From 644e8c1eb8fcbd768c53c87c655198aacccf0bf7 Mon Sep 17 00:00:00 2001 From: Malmahrouqi3 Date: Tue, 9 Dec 2025 17:33:51 -0500 Subject: [PATCH 22/31] re-org --- .github/workflows/changelog.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index f44188f7f..855a57372 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -28,19 +28,19 @@ jobs: if [[ "$PR_LABELS" == *"Bug"* ]]; then SECTION="### Fixed" PREFIX="BUG" - elif [[ "$PR_LABELS" == *"Refactor"* ]] || [[ "$PR_LABELS" == *"Maintenance"* ]]; then + elif [[ "$PR_LABELS" == *"Refactor"* ]]; then SECTION="### Changed" PREFIX="MNT" elif [[ "$PR_LABELS" == *"Docs"* ]] && [[ "$PR_LABELS" == *"Git housekeeping"* ]]; then SECTION="### Changed" PREFIX="DOC" + elif [[ "$PR_LABELS" == *"Tests"* ]]; then + SECTION="### Changed" + PREFIX="TST" elif [[ "$PR_LABELS" == *"Docs"* ]]; then # Only documentation -> Added section SECTION="### Added" PREFIX="DOC" - elif [[ "$PR_LABELS" == *"Tests"* ]]; then - SECTION="### Changed" - PREFIX="TST" fi ENTRY="- $PREFIX: $PR_TITLE [#$PR_NUMBER](https://github.com/RocketPy-Team/RocketPy/pull/$PR_NUMBER)" From 1a45e18fc6c9af3c92ef6eb2fed8a4c016de05a7 Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Tue, 9 Dec 2025 17:47:31 -0500 Subject: [PATCH 23/31] Few adjustments to work on the base repo, develop branch. --- .github/workflows/changelog.yml | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 855a57372..7de8e8493 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -3,18 +3,20 @@ on: pull_request: types: [closed] branches: - - changelog-update + - develop + jobs: - self: + Changelog: if: github.event.pull_request.merged == true runs-on: ubuntu-latest + steps: - - name: Checkout RocketPy repository - uses: actions/checkout@v3 + - name: Clone RocketPy + uses: actions/checkout@main with: - repository: Malmahrouqi3/RocketPy-mo2 - ref: changelog-update - token: ${{ secrets.TOKEN }} + repository: RocketPy-Team/RocketPy + ref: develop + token: ${{ secrets.GITHUB_TOKEN }} - name: Update Changelog env: @@ -48,7 +50,7 @@ jobs: sed -i "${SECTION_LINE}a\\\\n$ENTRY" CHANGELOG.md - - name: Commit and Push changes + - name: Push Changes run: | git config user.name "github-actions[bot]" git config user.email "github-actions[bot]@users.noreply.github.com" From c7e7f68b277c60b0237fcc079dfbf4a972fa56cb Mon Sep 17 00:00:00 2001 From: Malmahrouqi3 Date: Tue, 9 Dec 2025 18:54:40 -0500 Subject: [PATCH 24/31] new changes --- .github/workflows/changelog.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 7de8e8493..5e574c318 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -48,7 +48,7 @@ jobs: ENTRY="- $PREFIX: $PR_TITLE [#$PR_NUMBER](https://github.com/RocketPy-Team/RocketPy/pull/$PR_NUMBER)" SECTION_LINE=$(grep -n "^$SECTION$" CHANGELOG.md | head -1 | cut -d: -f1) - sed -i "${SECTION_LINE}a\\\\n$ENTRY" CHANGELOG.md + sed -i "$((SECTION_LINE + 1))a\\$ENTRY" CHANGELOG.md - name: Push Changes run: | From b5c8a5e77707c37129d140dd88f6b48e410ec0b0 Mon Sep 17 00:00:00 2001 From: Malmahrouqi3 Date: Tue, 9 Dec 2025 19:16:04 -0500 Subject: [PATCH 25/31] restored stuff --- .github/workflows/auto-assign.yml | 5 ----- .gitignore | 5 +---- README.md | 12 +----------- 3 files changed, 2 insertions(+), 20 deletions(-) diff --git a/.github/workflows/auto-assign.yml b/.github/workflows/auto-assign.yml index ddd6458a7..e056651e6 100644 --- a/.github/workflows/auto-assign.yml +++ b/.github/workflows/auto-assign.yml @@ -10,8 +10,3 @@ jobs: with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} CONFIG_FILE: .github/auto-assign.yml - - - - - diff --git a/.gitignore b/.gitignore index 1d44c5990..0d6518eb2 100644 --- a/.gitignore +++ b/.gitignore @@ -6,9 +6,6 @@ __pycache__/ # C extensions *.so - - - # Distribution / packaging .Python build/ @@ -174,4 +171,4 @@ cython_debug/ .idea/ # Mac -.DS_Store +.DS_Store \ No newline at end of file diff --git a/README.md b/README.md index 25d498961..8247ab1a3 100644 --- a/README.md +++ b/README.md @@ -25,9 +25,6 @@ RocketPy is the next-generation trajectory simulation solution for High-Power Rocketry. The code is written as a [Python](http://www.python.org) library and allows for a complete 6 degrees of freedom simulation of a rocket's flight trajectory, including high-fidelity variable mass effects as well as descent under parachutes. Weather conditions, such as wind profiles, can be imported from sophisticated datasets, allowing for realistic scenarios. Furthermore, the implementation facilitates complex simulations, such as multi-stage rockets, design and trajectory optimization and dispersion analysis. - - - ## Main features 1. **Nonlinear 6 Degrees of Freedom Simulations** @@ -40,10 +37,6 @@ RocketPy is the next-generation trajectory simulation solution for High-Power Ro - Custom atmospheric profiles and Soundings (Wyoming) - Weather forecasts, reanalysis, and ensembles for realistic scenarios - - - - 3. **Aerodynamic Models** - Optional Barrowman equations for lift coefficients - Easy import of drag coefficients from other sources (e.g., CFD simulations) @@ -103,7 +96,7 @@ Check out documentation details using the links below:
-# Join Our Community! Of course +# Join Our Community! RocketPy is growing fast! Many university groups and rocket hobbyists have already started using it. The number of stars and forks for this repository is skyrocketing. And this is all thanks to a great community of users, engineers, developers, marketing specialists, and everyone interested in helping. @@ -149,9 +142,6 @@ The following image shows how the four main classes interact with each other: A typical workflow starts with importing these classes from RocketPy: - - - ```python from rocketpy import Environment, Rocket, SolidMotor, Flight ``` From 576e2739468114b0c6f0a88c6b9a794022a0ec86 Mon Sep 17 00:00:00 2001 From: Malmahrouqi3 Date: Tue, 9 Dec 2025 19:37:44 -0500 Subject: [PATCH 26/31] doc changes --- docs/development/first_pr.rst | 9 ++++----- docs/development/style_guide.rst | 6 +++--- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/docs/development/first_pr.rst b/docs/development/first_pr.rst index 5f3eb876c..c0b07e7f1 100644 --- a/docs/development/first_pr.rst +++ b/docs/development/first_pr.rst @@ -96,14 +96,13 @@ The CHANGELOG file ------------------ We keep track of the changes in the ``CHANGELOG.md`` file. -When you open a PR, you should add a new entry to the "Unreleased" section of the file. -This entry should simply be the title of your PR. +When you open a PR, you should see the "Unreleased" section of the file. +An entry will simply contain the title of your PR if merged. .. note:: - In the future we would like to automate the CHANGELOG update, but for now \ - it is a manual process, unfortunately. - + The CHANGELOG is auto-updated once a PR is merged based on the associated labels, \ + which are assigned by the maintainers. The review process ------------------ diff --git a/docs/development/style_guide.rst b/docs/development/style_guide.rst index 510a49560..82d16867d 100644 --- a/docs/development/style_guide.rst +++ b/docs/development/style_guide.rst @@ -163,12 +163,12 @@ Pull Requests ^^^^^^^^^^^^^ When opening a Pull Request, the name of the PR should be clear and concise. -Similarly to the commit messages, the PR name should start with an acronym indicating the type of PR -and then a brief description of the changes. +Unlike the commit messages, the PR name should not start with an acronym indicating the type of PR, +only a brief description of the changes. The maintainers will label your PR accordingly. Here is an example of a good PR name: -- ``BUG: fix the Frequency Response plot of the Flight class`` +- ``fix the Frequency Response plot of the Flight class`` The PR description explain the changes and motivation behind them. There is a template \ available when opening a PR that can be used to guide you through the process of both \ From b11468841de9b455e7079c6f828aaca9ed307788 Mon Sep 17 00:00:00 2001 From: Malmahrouqi3 Date: Tue, 9 Dec 2025 19:39:57 -0500 Subject: [PATCH 27/31] updated changelog for this PR --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7090973ad..4288f38fa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,6 +32,8 @@ Attention: The newest changes should be on top --> ### Added +ENH: Auto Populate Changelog [#xxx](https://github.com/RocketPy-Team/RocketPy/pull/xxx) + ### Changed ### Fixed From a34a0fd75161bccfa24b5a5cbe0be214e5217d6a Mon Sep 17 00:00:00 2001 From: Malmahrouqi3 Date: Tue, 9 Dec 2025 20:01:30 -0500 Subject: [PATCH 28/31] updated changelog --- CHANGELOG.md | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4288f38fa..d154957b7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,12 +32,33 @@ Attention: The newest changes should be on top --> ### Added -ENH: Auto Populate Changelog [#xxx](https://github.com/RocketPy-Team/RocketPy/pull/xxx) +- ENH: Auto Populate Changelog [#xxx](https://github.com/RocketPy-Team/RocketPy/pull/xxx) +- ENH: Add background map auto download functionality to Monte Carlo plots [#896](https://github.com/RocketPy-Team/RocketPy/pull/896) +- MNT: net thrust addition to 3 dof in flight class [#907] (https://github.com/RocketPy-Team/RocketPy/pull/907) +- ENH: 3-dof lateral motion improvement [#883](https://github.com/RocketPy-Team/RocketPy/pull/883) +- ENH: Add multi-dimensional drag coefficient support (Cd as function of M, Re, α) [#875](https://github.com/RocketPy-Team/RocketPy/pull/875) +- ENH: Add save functionality to `_MonteCarloPlots.all` method [#848](https://github.com/RocketPy-Team/RocketPy/pull/848) +- ENH: add animations for motor propellant mass and tank fluid volumes [#894](https://github.com/RocketPy-Team/RocketPy/pull/894) +- ENH: Rail button bending moments calculation in Flight class [#893](https://github.com/RocketPy-Team/RocketPy/pull/893) +- ENH: Implement Bootstrapping for Confidence Interval Estimation [#891](https://github.com/RocketPy-Team/RocketPy/pull/897) +- ENH: Built-in flight comparison tool (`FlightComparator`) to validate simulations against external data [#888](https://github.com/RocketPy-Team/RocketPy/pull/888) +- ENH: Add persistent caching for ThrustCurve API [#881](https://github.com/RocketPy-Team/RocketPy/pull/881) +- ENH: Add axial_acceleration attribute to the Flight class [#876](https://github.com/RocketPy-Team/RocketPy/pull/876) +- ENH: custom warning no motor or aerosurface [#871](https://github.com/RocketPy-Team/RocketPy/pull/871) +- ENH: Add thrustcurve api integration to retrieve motor eng data [#870](https://github.com/RocketPy-Team/RocketPy/pull/870) +- ENH: Compatibility with MERRA-2 atmosphere reanalysis files [#825](https://github.com/RocketPy-Team/RocketPy/pull/825) +- ENH: Enable only radial burning [#815](https://github.com/RocketPy-Team/RocketPy/pull/815) ### Changed +- ENH: Refactor Flight class to improve time node handling and sensor/controllers [#843](https://github.com/RocketPy-Team/RocketPy/pull/843) + ### Fixed +- BUG: energy_data plot not working for 3 dof sims [[#906](https://github.com/RocketPy-Team/RocketPy/issues/906)] +- BUG: Fix CSV column header spacing in FlightDataExporter [#864](https://github.com/RocketPy-Team/RocketPy/issues/864) +- BUG: Fix parallel Monte Carlo simulation showing incorrect iteration count [#806](https://github.com/RocketPy-Team/RocketPy/pull/806) + ## [v1.11.0] - 2025-11-01 @@ -73,6 +94,7 @@ ENH: Auto Populate Changelog [#xxx](https://github.com/RocketPy-Team/RocketPy/pu ## [v1.10.0] - 2025-05-16 ### Added + - ENH: Support for ND arithmetic in Function class. [#810] (https://github.com/RocketPy-Team/RocketPy/pull/810) - ENH: allow users to provide custom samplers [#803](https://github.com/RocketPy-Team/RocketPy/pull/803) - ENH: Implement Multivariate Rejection Sampling (MRS) [#738] (https://github.com/RocketPy-Team/RocketPy/pull/738) From d152aad2ffa2cdca2856770cf0833bfd6892aaac Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Tue, 9 Dec 2025 20:08:59 -0500 Subject: [PATCH 29/31] PR # included in changelog --- CHANGELOG.md | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8a0900989..6b1f3a0eb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -31,23 +31,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/). Attention: The newest changes should be on top --> ### Added -- ENH: Add background map auto download functionality to Monte Carlo plots [#896](https://github.com/RocketPy-Team/RocketPy/pull/896) -- MNT: net thrust addition to 3 dof in flight class [#907] (https://github.com/RocketPy-Team/RocketPy/pull/907) -- ENH: 3-dof lateral motion improvement [#883](https://github.com/RocketPy-Team/RocketPy/pull/883) -- ENH: Add multi-dimensional drag coefficient support (Cd as function of M, Re, α) [#875](https://github.com/RocketPy-Team/RocketPy/pull/875) -- ENH: Add save functionality to `_MonteCarloPlots.all` method [#848](https://github.com/RocketPy-Team/RocketPy/pull/848) -- ENH: add animations for motor propellant mass and tank fluid volumes [#894](https://github.com/RocketPy-Team/RocketPy/pull/894) -- ENH: Rail button bending moments calculation in Flight class [#893](https://github.com/RocketPy-Team/RocketPy/pull/893) -- ENH: Implement Bootstrapping for Confidence Interval Estimation [#891](https://github.com/RocketPy-Team/RocketPy/pull/897) -- ENH: Built-in flight comparison tool (`FlightComparator`) to validate simulations against external data [#888](https://github.com/RocketPy-Team/RocketPy/pull/888) -- ENH: Add persistent caching for ThrustCurve API [#881](https://github.com/RocketPy-Team/RocketPy/pull/881) -- ENH: Add axial_acceleration attribute to the Flight class [#876](https://github.com/RocketPy-Team/RocketPy/pull/876) -- ENH: custom warning no motor or aerosurface [#871](https://github.com/RocketPy-Team/RocketPy/pull/871) -- ENH: Add thrustcurve api integration to retrieve motor eng data [#870](https://github.com/RocketPy-Team/RocketPy/pull/870) -- ENH: Compatibility with MERRA-2 atmosphere reanalysis files [#825](https://github.com/RocketPy-Team/RocketPy/pull/825) -- ENH: Enable only radial burning [#815](https://github.com/RocketPy-Team/RocketPy/pull/815) -- ENH: Auto Populate Changelog [#xxx](https://github.com/RocketPy-Team/RocketPy/pull/xxx) +- ENH: Auto Populate Changelog [#919](https://github.com/RocketPy-Team/RocketPy/pull/919) - ENH: Add background map auto download functionality to Monte Carlo plots [#896](https://github.com/RocketPy-Team/RocketPy/pull/896) - MNT: net thrust addition to 3 dof in flight class [#907] (https://github.com/RocketPy-Team/RocketPy/pull/907) - ENH: 3-dof lateral motion improvement [#883](https://github.com/RocketPy-Team/RocketPy/pull/883) From c93265496f084aa4086976cd9de873026ce98b36 Mon Sep 17 00:00:00 2001 From: Malmahrouqi3 Date: Thu, 11 Dec 2025 23:53:01 -0500 Subject: [PATCH 30/31] DOC: clearer words and corrected grammar --- docs/development/style_guide.rst | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/development/style_guide.rst b/docs/development/style_guide.rst index 82d16867d..15a80e5e4 100644 --- a/docs/development/style_guide.rst +++ b/docs/development/style_guide.rst @@ -162,15 +162,16 @@ Standard acronyms to start the commit message with are:: Pull Requests ^^^^^^^^^^^^^ -When opening a Pull Request, the name of the PR should be clear and concise. -Unlike the commit messages, the PR name should not start with an acronym indicating the type of PR, -only a brief description of the changes. The maintainers will label your PR accordingly. +When opening a Pull Request, the title should be clear and concise. +It should contain only a brief desctiption of the changes without the acronym (e.g. ENH:, BUG:). +The maintainers will label your PR accordingly, which will add a prefix via a workflow to indicate +type of the PR in the CHANGELOG file. Here is an example of a good PR name: - ``fix the Frequency Response plot of the Flight class`` -The PR description explain the changes and motivation behind them. There is a template \ +The PR description explains the changes and motivation behind them. There is a template \ available when opening a PR that can be used to guide you through the process of both \ describing the changes and making sure all the necessary steps were taken. Of course, \ you can always modify the template or add more information if you think it is necessary. From 15b0ab0c6fc13966a3cc6649570e4408db1b70dc Mon Sep 17 00:00:00 2001 From: "Mohammed S. Al-Mahrouqi" <145478595+Malmahrouqi3@users.noreply.github.com> Date: Mon, 5 Jan 2026 21:13:31 -0500 Subject: [PATCH 31/31] ENH: Updated changelog.yml to include permissions --- .github/workflows/changelog.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 5e574c318..483b0604f 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -5,6 +5,9 @@ on: branches: - develop +permissions: + contents: write + jobs: Changelog: if: github.event.pull_request.merged == true