Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update release process for independent package versioning #1967

Open
Tracked by #1900
ni-jfitzger opened this issue May 12, 2023 · 2 comments
Open
Tracked by #1900

Update release process for independent package versioning #1967

ni-jfitzger opened this issue May 12, 2023 · 2 comments

Comments

@ni-jfitzger
Copy link
Collaborator

ni-jfitzger commented May 12, 2023

In order to support package version independence, our release process will need to change, as well as how we tag releases.

The tag naming changes will have implications for ReadTheDocs projects, as well as the LATEST_RELEASE file used by examples.rst.mako. ReadTheDocs stable version labels and maybe version labels in general expect semver tags and injecting a module name into the tag will affect its behavior (like whether it even adds the version).

See https://docs.readthedocs.io/en/stable/versions.html and https://docs.readthedocs.io/en/stable/automation-rules.html#how-automation-rules-work

@ni-jfitzger
Copy link
Collaborator Author

ni-jfitzger commented May 12, 2023

Possible changes: aeee08d
TODOs remaining from those changes:

  • Further update build_release.py to allow specifying which packages to release.
  • Update ReadTheDocs projects rules to deal with new Git tag naming scheme for releases.
  • Do we need readthedocs configuration yamls?

@ni-jfitzger
Copy link
Collaborator Author

We can create a rule with a Python regex that should be able to parse the version tag and activate only if it applies to the specific product. The more challenging part is updating the "stable" version. It's automatically the latest if tag names follow semantic versions. Otherwise, we have to include "-stable" in the tag name.

For the regex that I mentioned, it may be difficult to get a "positive lookbehind" working, so we might have to use a tag format like "2.0.0-nidcpower". Inclusion of "stable" in the tag so that the stable version is updated may require experimentation and may in fact not be possible. I'm not sure if it will tolerate anything other than a semver version or a semver version followed by "-stable".

We may be forced to manage the stable version manually.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant