Bumping dependents in our monorepo causes a lot of churn for package versions. However, turning off bumpDeps is not desirable since we'd still like to keep automated synchrony of versions with bump. Presently, keeping bumpDeps is only important for us on major bumps.
Could we have a scheme for conditionally allowing bumping dependents?
Below is a proposal to improve bumpDeps configuration schema:
-
Current Schema
bumpDeps: boolean = true by default
-
Proposed Schema
bumpDeps: boolean | {
bumpFor?: ChangeType
}
Application:
bumpDeps: boolean - maintains current behavior
bumpDeps: {} - same behavior as bumpDeps: true
bumpDeps: { bumpFor: 'major' } - for any major change, dependents get bumped.
- Recursion of bumping dependents stops based on the same
bumpDeps rule, so only 1 depth of dependents get bumped as patch
- Similar outcome for
bumpFor: 'minor' ... bumpFor: 'prerelease'
bumpDeps: { bumpFor: 'none' } - same behavior as bumpDeps: false
Bumping dependents in our monorepo causes a lot of churn for package versions. However, turning off
bumpDepsis not desirable since we'd still like to keep automated synchrony of versions with bump. Presently, keepingbumpDepsis only important for us on major bumps.Could we have a scheme for conditionally allowing bumping dependents?
Below is a proposal to improve
bumpDepsconfiguration schema:Current Schema
bumpDeps: boolean=trueby defaultProposed Schema
Application:
bumpDeps: boolean- maintains current behaviorbumpDeps: {}- same behavior asbumpDeps: truebumpDeps: { bumpFor: 'major' }- for any major change, dependents get bumped.bumpDepsrule, so only 1 depth of dependents get bumped aspatchbumpFor: 'minor'...bumpFor: 'prerelease'bumpDeps: { bumpFor: 'none' }- same behavior asbumpDeps: false