-
-
Notifications
You must be signed in to change notification settings - Fork 194
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Relax peer dependency constraints (#3881)
When we release a new version of a controller, our Yarn constraints enforce that we must also bump any peer dependencies that rely on that controller to match the new version. And one of our policies is that if we bump a peer dependency in a package, we must release a new major version of that package. As a result, because we make changes to controllers all the time, we also end up making major releases all the time too. This is unnecessary if most of those changes aren't actually breaking. To reduce the number of major releases, this commit relaxes constraints on peer dependencies in two ways: 1. Peer dependencies for the same package across the monorepo are no longer required to use the same exact version. 2. A peer dependency on a controller is only required to match the major version of its corresponding non-peer dependency (which is itself required to match the current version of that dependency). For instance, if the current version of `@metamask/keyring-controller` is 12.2.0, a controller would be allowed to declare a peer dependency on `^12.0.0`. In addition, two controllers would be allowed to use slightly different versions, as long as they were major-compatible with the package (for instance, one controller could use `^12.0.0` and another could use `^12.1.0`).
- Loading branch information
Showing
1 changed file
with
63 additions
and
26 deletions.
There are no files selected for viewing
This file contains 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