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

Release/182.0.0 #4600

Merged
merged 2 commits into from
Aug 12, 2024
Merged

Release/182.0.0 #4600

merged 2 commits into from
Aug 12, 2024

Conversation

Prithpal-Sooriya
Copy link
Contributor

Explanation

Release Candidate v182. Includes patch updates & fixes to @metamask/profile-sync-controller and @metamask/notification-services-controller

References

N/A

Changelog

See diffs

Checklist

  • I've updated the test suite for new or updated code as appropriate
  • I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
  • I've highlighted breaking changes using the "BREAKING" category above as appropriate

@Prithpal-Sooriya Prithpal-Sooriya requested a review from a team as a code owner August 12, 2024 13:36
@Prithpal-Sooriya Prithpal-Sooriya added the team-notifications Notification Team changes. https://github.com/orgs/MetaMask/teams/notifications label Aug 12, 2024
Copy link

socket-security bot commented Aug 12, 2024

Removed dependencies detected. Learn more about Socket for GitHub ↗︎

🚮 Removed packages: npm/@metamask/[email protected]

View full report↗︎

Copy link
Contributor

@Jonathansoufer Jonathansoufer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved!

@Prithpal-Sooriya Prithpal-Sooriya merged commit d8d1b22 into main Aug 12, 2024
116 checks passed
@Prithpal-Sooriya Prithpal-Sooriya deleted the release/182.0.0 branch August 12, 2024 13:49
@@ -68,7 +68,7 @@
},
"peerDependencies": {
"@metamask/keyring-controller": "^17.0.0",
"@metamask/profile-sync-controller": "^0.2.0"
"@metamask/profile-sync-controller": "^0.2.1"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a breaking change. This should have resulted in a minor version bump (since this package is pre-v1), but it looks like it wasn't even referenced in the changelog

Copy link
Contributor Author

@Prithpal-Sooriya Prithpal-Sooriya Aug 12, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

True, this should've been a minor instead of a patch.

How critical is this to revert?
Our only client consuming this is mobile.

I can update the changelog in a following PR.

Copy link
Contributor

@MajorLift MajorLift Aug 13, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this diff necessary in the first place? "^0.2.0" should be compatible with "0.2.1" so there is no need to update to "^0.2.1" unless we're specifically trying to prevent "0.2.0" from being used.

If avoiding "0.2.0" is the intention, having a Fixed entry in the changelog to explain why would be helpful. Also, since updating a peerDep is a breaking change, it's probably high-priority enough to need to be communicated in the v182.0.0 release notes, not just the @metamask/[email protected] changelog. This will only be possible through a revert, not a changelog backport.

On a more general note, we should probably be using the tilde (~) operator e.g. "~0.2.0" instead of the carat (^) for versioning pre-v1 packages, since we don't want "minor" releases to be compatible with each other.

Copy link
Contributor

@legobeat legobeat Aug 13, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With the carat operator, "^0.x.y" will all resolve as the same version, which makes it meaningless and contrary to our intentions here. With tilde, "~0.2.0" and "~0.2.1" will both resolve to "0.2.0", while "~0.3.1" will resolve to "0.3.0".

^ actually works differently with 0.x.y ranges: ^0.3 will not be satisfied by 0.4.0, for example.

https://github.com/npm/node-semver?tab=readme-ov-file#caret-ranges-123-025-004

Allows changes that do not modify the left-most non-zero element in the [major, minor, patch] tuple. In other words, this allows patch and minor updates for versions 1.0.0 and above, patch updates for versions 0.X >=0.1.0, and no updates for versions 0.0.X.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah yes I deleted that part because I realized it contradicts the entire point of my comment😂 (e.g. ^0.3.1 and ~0.3.1 both shouldn't resolve to 0.3.0).

But I wasn't aware of the subtlety around leading zeros and missing patch or minor values. Guess the carat should work here as is. TIL!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
team-notifications Notification Team changes. https://github.com/orgs/MetaMask/teams/notifications
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants