-
Notifications
You must be signed in to change notification settings - Fork 45
Release Process
- Releases for
OSQP 0.6.xshould be made from thev0.6.xbranch. The general process is:-
git checkout v0.6.x -
Branch out of the
v0.6.xbranch, make any desired changes. -
Push to Github. Ensure that CI (triggered on all pushes/PRs) passes on all platforms. Ubuntu/Windows/Macos-Silicon/Macos-Intel are handled in
.github/workflows/build.yml,aarch64is handled in.github/workflows/build_aarch64.yml). -
Once CI passes, decide on a new version, say
0.6.42. Make changes to the following 3 places to match the selected version:-
src/osqp/codegen/files_to_generate/setup.py, Line 77 -
src/osqp/interface.py, Line 2 -
src/osqppurepy/_osqp.py, Line 333
These files/line numbers are also obtainable using something like
grep -r 0.6.41(if0.6.41is the current version, for example). It's possible to usebumpversionor a similar library to handle all these cases automatically, but it's absolutely not worth introducing a new dependency at this point, sincev0.6.xreleases are anticipated to be rare. -
-
Send a PR towards the
v0.6.xbranch. Merge if CI passes. -
Tag the merge commit on the
v0.6.xbranch with the version tag (git tag v0.6.42if0.6.42is the current version, for example). Notice thevprepended to the version number in the tag. The presence of the tag is what triggers the CI to initiate a new release on PyPI.
-