diff options
author | Pratyush Shukla <ps4534@nyu.edu> | 2024-03-12 18:36:59 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-12 13:06:59 +0000 |
commit | afd0708dcc20c9eb0269f981887d6280b3d0f317 (patch) | |
tree | 39b857ab887188ef4053c19fc7fa50ade29811f8 | |
parent | cc7908fe54095d1139f01a991b289f8f688a590e (diff) |
[Bugfix] Update `PUBLISH.md` file (#6193)
* publish doc updated
* add info
-rw-r--r-- | build/pypi/openbb_platform/PUBLISH.md | 37 |
1 files changed, 25 insertions, 12 deletions
diff --git a/build/pypi/openbb_platform/PUBLISH.md b/build/pypi/openbb_platform/PUBLISH.md index e844cd1b0fc..27ce8e77951 100644 --- a/build/pypi/openbb_platform/PUBLISH.md +++ b/build/pypi/openbb_platform/PUBLISH.md @@ -1,16 +1,26 @@ # Publishing to PyPI -Publishing checklist: +## Pre-release procedure -> Note: you need to have the appropriate credentials and permissions to publish to PyPI +> Note: Ensure you have the appropriate credentials and permissions to publish to PyPI. -1. Ensure all unit tests pass: `pytest openbb_platform -m "not integration"` -2. Ensure all integration tests pass: `pytest openbb_platform -m integration` -3. Run `python -c "import openbb; openbb.build()"` to build the static assets. Make sure that only required extensions are installed. +1. Open a PR with the changes to be published in the format `release/<version>` (e.g. `release/4.0.0`). +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. -4. Run the following commands for publishing the packages to PyPI: +6. Finally, check if everything works: + + 1. Install the packages locally using `python openbb_platform/dev_install.py` command and test them in a new environment. + 2. Check if all the `pyproject.toml` files are correct, including the `openbb_platform` one. + 3. Double check if there is any new extension or provider that needs to be added to [integration tests GitHub Action workflow](/.github/workflows/platform-api-integration-test.yml). + +## Release procedure + +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. @@ -29,11 +39,14 @@ Publishing checklist: > > 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. -5. Update poetry files: `python build/pypi/openbb_platform/poetry_update.py` -6. Open a PR so that changes are reflected on the main branch +2. Update poetry files: `python build/pypi/openbb_platform/poetry_update.py` +3. Merge the `release/<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. -Finally, check if everything works: +## Post-release procedure -1. Install and test the package from Pypi on a clean environment. -2. Check if all the `pyproject.toml` files are correct, including the `openbb_platform` one. -3. Double check if there is any new extension or provider that needs to be added to [integration tests GitHub Action workflow](/.github/workflows/platform-api-integration-test.yml). +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 |