-
-
Notifications
You must be signed in to change notification settings - Fork 6
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
Logging bumped internal dependencies for packages included in a release is painful to do manually and is often forgotten #108
Comments
Hey team! Please add your planning poker estimate with Zenhub @Gudahtt @mikesposito @MajorLift @mcmire @cryptodev-2s |
Thinking about this some more, does it make sense to add this check to |
In response to my previous comment, I think it makes the most sense to implement the validation described in this ticket in this repo rather than Suggestions on how to implement this ticket:
I mentioned in the ticket description that we may want to implement a
Make sure to update the functional tests in |
This is an offshoot of #90.
When a new
core
release is created, we want consumers to be aware of any bumps to dependencies that occur in new versions of packages being included in that release. To do this, we ask that changelog entries be added for these dependency bumps.At the same time, the
core
monorepo contains a Yarn constraint which enforces that when a workspace package is bumped, for every package which depends on that package, the version range for the dependency listed in that package's manifest must match the new version. Because release PRs involve bumping versions of packages within the monorepo, they are guaranteed to also contain dependency bumps for those packages. For instance, if@metamask/base-controller
is bumped to2.3.4
, then any controller which depends on this package will be updated to use a version range of^2.3.4
(it has to be).When it comes to dependency bumps for packages that live outside of the monorepo — e.g.
@metamask/rpc-errors
— the author of a release PR is given a reminder to include any bumps related to those packages in changelogs. Because those bumps will have already occurred in commits prior to the release PR,create-release-branch
(thanks toauto-changelog
) will automatically pick up those commits and add them to the changelogs when it creates the release branch.However, internal dependency bumps are another story. The command that adds them is
yarn constraints --fix
, whichcreate-release-branch
runs after creating the release branch; but because this does not occur within a prior commit,auto-changelog
cannot see the bumps.The result of this is the author of a release PR must check for and add these types of entries manually. This is not an obvious step, and more often than not, it is forgotten and these bumps go unlogged. We should prevent this from happening.
Acceptance Criteria
create-release-branch
offers a way to detect bumps to dependencies that have occurred within the package and produce an error if those bumps are not reflected in changelog entries that correspond to the version-to-be-released for that package.lint
package script so that it can be run after creating a release branch to verify the changelog.create-release-branch
offers a way to take a PR number that corresponds to the release branch and automatically add these changelog entries, saving time when creating a large release PR.The text was updated successfully, but these errors were encountered: