-
Notifications
You must be signed in to change notification settings - Fork 8
Description
I know that it sounds odd but since dandi-infrastructure is used by derivative efforts (LINC and EMBER), those teams (and DANDI people in a few weeks after) would appreciate from having a conventional track of changes and description of rationale for them. Since auto is doing a decent job in populating CHANGELOG and linking to PRs etc, I would suggest us to
-
adopt time based versioning like git-annex does where it would be
{MAJOR}.{DATE}.{PATCH}- MAJOR - to increment only when backward compatibility gets "broken" as a service gets removed or alike
- DATE - the date for release
- PATCH - if needed on top of DATE
@jwodder -- can
autoor something else implement such version minting based on labels? -
automate "releases" which would simply mint a new version from master and update CHANGELOG. Pretty much any PR, unless bundling multiple changes together, could have its own "release"
-
PR titles should be descriptive enough to summarize the change, and extended description should provide some context for the change: "why and how"
Overall, it
- it should not add extra burden - labeling is easy
- produce summary CHANGELOG for folks to consult/navigate upon merges into their solutions
- allow downstream projects to reference specific state of deployment based on the release labels ("upgrade infrastructure setup from 1.20250101.0 to 3.20250217.0 of DANDI ...) instead of "sync to DANDI from our prior sync 2 months ago")