[Big Chore] Multi versioning and automatic changelog generation#335
Merged
art-alexeyenko merged 29 commits intodevfrom Mar 19, 2026
Merged
[Big Chore] Multi versioning and automatic changelog generation#335art-alexeyenko merged 29 commits intodevfrom
art-alexeyenko merged 29 commits intodevfrom
Conversation
…in permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
…in permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
…c/jss-8623-changeset-multiver # Conflicts: # lerna.json # packages/create-content-sdk-app/package.json
Contributor
|
illiakovalenko
requested changes
Jan 19, 2026
Collaborator
illiakovalenko
left a comment
There was a problem hiding this comment.
The proposal looks better now 👍
Please find my comments below.
…c/jss-8623-changeset-multiver # Conflicts: # lerna.json # packages/create-content-sdk-app/package.json # packages/create-content-sdk-app/src/templates/nextjs-app-router/package.json # packages/create-content-sdk-app/src/templates/nextjs/package.json # yarn.lock
Contributor
📦 Package Size and Test Coverage Report
|
…c/jss-8623-changeset-multiver
illiakovalenko
approved these changes
Mar 19, 2026
art-alexeyenko
added a commit
that referenced
this pull request
Mar 23, 2026
art-alexeyenko
added a commit
that referenced
this pull request
Mar 23, 2026
art-alexeyenko
added a commit
that referenced
this pull request
Mar 23, 2026
…ration (#335)" [skip ci]
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description / Motivation
Introduction of the
searchpackage is throwing a wrench in our cozy versioning management, where one version described all. Future changes will throw more wrenches, so we need to support multi-versioning and independent package publish for our monorepo.The How
New flow includes:
changesets:lerna:changesets publishdoes not work well with dry run publishes into internal npm feed)The main (latest release) flow is the following:
cascade-version. The logic is similar tochangeset version, but all the base package version bumps will cascade over to dependendents. I.e.core@1.4.0 -> core@1.5.0update will result in minor version change forreact,nextjsand all the dependent packages.OOB changesets does not allow that.
[release]prefix in the commit. This will make CI to add relevant release Git tags and publish to NPM.Patch/hotfix release flow:
hotfix-release-prepGithub actionrelease/package@versionbranch for hotfix developmenthotfix.rc.canarytag will be attached to npm packagesChangelogs
Changelogs will be generated automatically for every package for ease of tracking changes. The entries from base packages will be propagated to the dependents' changelogs.
The intended new usage for changelogs is to publish github releases only for the user-facing packages. At this time these are:
We don't need to post individual changelogs for each package this way, ensuring changes are accounted for and GitHub spam is avoided.
Sample new changelog format:
Samples versioning
create-content-sdknow hasdevDependenciesto the packages used in its samples. When sample is scaffolded,package.jsonwill be read for the appropriate versions (i.e. @sitecore-content-sdk@nextjs:1.4.0) which will be inserted into scaffolded sample.In future we can keep samples as separate packages, simplifying
create-content-sdk.Testing Details
Lots of manual testing over at https://github.com/art-alexeyenko/content-sdk
Types of changes