diff options
author | montezdesousa <79287829+montezdesousa@users.noreply.github.com> | 2024-03-12 18:47:21 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-12 18:47:21 +0000 |
commit | 9ddcf423ec192d43257e70cd036b3260ae26f8c6 (patch) | |
tree | dede51418e7ce8620e73a1a15051668ee94e63d1 | |
parent | 137e8b9757b5657ca877a7b0f2182807f228ec52 (diff) |
[Bugfix] - Small update on PUBLISH.md (#6196)
* small update on publish.md
* minor fix
* updated with more details
---------
Co-authored-by: Pratyush Shukla <ps4534@nyu.edu>
-rw-r--r-- | build/pypi/openbb_platform/PUBLISH.md | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/build/pypi/openbb_platform/PUBLISH.md b/build/pypi/openbb_platform/PUBLISH.md index 27ce8e77951..1f07fe84adc 100644 --- a/build/pypi/openbb_platform/PUBLISH.md +++ b/build/pypi/openbb_platform/PUBLISH.md @@ -2,15 +2,18 @@ ## Pre-release procedure -> Note: Ensure you have the appropriate credentials and permissions to publish to PyPI. +> [!WARNING] +> The `release` branch is solely for the purpose of publishing the package(s)! Any last minute changes should be made in appropriate PRs and merged to the `develop` branch. Once the `release` branch is created, the `develop` branch should be frozen for further commits. -1. Open a PR with the changes to be published in the format `release/<version>` (e.g. `release/4.0.0`). +> A `release` branch for a particular package should only cater to the changes for that package directory. For e.g. the `release/openbb-core-2.0.0` branch should only contain changes for the `openbb-core` package i.e. in the `openbb_platform/core` directory. + +1. Open a PR with the changes to be published in the format `release/<version>` (for e.g. `release/4.0.0` ). For a particular package use the format `release/<package>-<version>` (for e.g. `release/openbb-core-1.0.1`). 2. Ensure all the CI workflows pass. 3. Ensure all unit tests pass: `pytest openbb_platform -m "not integration"` 4. Ensure all integration tests pass: `pytest openbb_platform -m integration` 5. Run `python -c "import openbb; openbb.build()"` to build the static assets. Make sure that only required extensions are installed. - > **Note** Run `python -c "import openbb"` after building the static to check that no additional static is being built. + > **Note**: Run `python -c "import openbb"` after building the static to check that no additional static is being built. 6. Finally, check if everything works: @@ -20,11 +23,15 @@ ## Release procedure +> Ensure you have the appropriate credentials and permissions to publish to PyPI. + 1. Run the following commands for publishing the packages to PyPI: Consider using the `--dry-run` flag to check if everything is correct before publishing. Also, it might be a good idea to run the script in batches to ensure that the packages are published correctly and the dependencies pick the correct versions. + > For a single package release, the following steps are optional since the package can be bumped manually. + 1. For the core package run: `python build/pypi/openbb_platform/publish.py --core` 2. For the extension and provider packages run: `python build/pypi/openbb_platform/publish.py --extensions` 3. For the `openbb` package - **which requires manual publishing** - do the following @@ -40,13 +47,13 @@ > Also, sometimes there might be some delay in the PyPI API, so it might be necessary to wait a few minutes before publishing the next package. 2. Update poetry files: `python build/pypi/openbb_platform/poetry_update.py` -3. Merge the `release/<version>` branch to the `main` branch. +3. Merge the `release/<package>-<version>` branch to the `main` branch. 4. Check the `Deploy to GitHub Pages` GitHub action is completed successfully. Go to the [docs](https://docs.openbb.co) website to see the changes. ## Post-release procedure 1. Install the packages on Google Colaboratory via PyPi and test to check if everything is working as expected. 2. Install the packages in a new environment locally via PyPi and test to check if everything is working as expected. -3. Open a new PR with the `release/<version>` branch pointing to the `develop` branch. -4. Merge the `release/<version>` branch to the `develop` branch. -5. If any bugs are encountered, create a new branch - `hotfix` for `main` and `bugfix` for `develop` and merge them accordingly.
\ No newline at end of file +3. Open a new PR with the `release/<package>-<version>` branch pointing to the `develop` branch. +4. Merge the `release/<package>-<version>` branch to the `develop` branch. +5. If any bugs are encountered, create a new branch - `hotfix` for `main` and `bugfix` for `develop` and merge them accordingly. |