The Problem
Hi team, thanks for making this tool! It's been helpful to keep our packages up-to-date in the monorepo.
One thing that turns out inconvenient is that, beachball does not seem to handle peerDependencies properly, by automatically bumping peerDependencies version when new versions are published.
For example, there is a base package and a feature package in the monorepo, and base is a peerDependencies of feature.
{
"name": "@org/feature",
"version": "1.0.0,
"peerDependencies": {
"@org/base": "^1.0.0"
}
}
When publishing a new version of @org/base, say 1.1.0, beachball would update the feature's package.json to depended on the new version of base.
{
"name": "@org/feature",
- "version": "1.0.0,
+ "version": "1.0.1,
"peerDependencies": {
- "@org/base": "^1.0.0"
+ "@org/base": "^1.1.0"
}
}
This is not expected. Unlike dependencies, bumping peerDependencies version means that feature no longer works with the older version of base, which is both false and breaking.
This Proposal
Can we have an option say --bump-peer-deps for beachball bump and beachball publish that, when set to false, prevents beachball from bumping the peerDependencies versions.
Any thoughts?
The Problem
Hi team, thanks for making this tool! It's been helpful to keep our packages up-to-date in the monorepo.
One thing that turns out inconvenient is that, beachball does not seem to handle
peerDependenciesproperly, by automatically bumpingpeerDependenciesversion when new versions are published.For example, there is a
basepackage and afeaturepackage in the monorepo, andbaseis apeerDependenciesoffeature.{ "name": "@org/feature", "version": "1.0.0, "peerDependencies": { "@org/base": "^1.0.0" } }When publishing a new version of
@org/base, say1.1.0, beachball would update thefeature's package.json to depended on the new version ofbase.{ "name": "@org/feature", - "version": "1.0.0, + "version": "1.0.1, "peerDependencies": { - "@org/base": "^1.0.0" + "@org/base": "^1.1.0" } }This is not expected. Unlike
dependencies, bumpingpeerDependenciesversion means thatfeatureno longer works with the older version ofbase, which is both false and breaking.This Proposal
Can we have an option say
--bump-peer-depsforbeachball bumpandbeachball publishthat, when set tofalse, prevents beachball from bumping thepeerDependenciesversions.Any thoughts?