VueForge now uses independent package versioning.
Each published package has its own version, its own release tag, and its own NPM publish flow.
vueforge-vx.y.zpublishes@codemonster-ru/vueforgelayouts-vx.y.zpublishes@codemonster-ru/vueforge-layouts
The version in the tag must exactly match the version in the target package's package.json.
packages/vueforge/package.jsoncontrols@codemonster-ru/vueforgepackages/layouts/package.jsoncontrols@codemonster-ru/vueforge-layouts
The root workspace package.json version is not the release source of truth for package publishing.
- Bump only the package whose public API, runtime behavior, CSS, types, or docs contract changed.
- Do not bump sibling packages unless they actually changed or their dependency range must move.
- Use normal semver rules per package:
patch: bugfix/docs/tests/internal refactor with no public breakminor: additive backward-compatible APImajor: breaking API/behavior change
layouts depends on @codemonster-ru/vueforge.
When @codemonster-ru/vueforge changes:
- If the existing dependency range in a consumer package still accepts the new core version, you do not need to release that consumer package.
- If a consumer package requires a newer core range, bump that consumer package too and update its dependency range.
Examples:
- Core bugfix only:
@codemonster-ru/vueforgegoes from0.100.0to0.100.1layoutsstays unchanged if its range already allows it
- New layouts feature that uses existing core API:
- bump only
@codemonster-ru/vueforge-layouts
- bump only
- New layouts feature that requires a newly added core API:
- bump
@codemonster-ru/vueforge - update
packages/layouts/package.jsondependency range - bump
@codemonster-ru/vueforge-layouts
- bump
- Update the target package version in its
package.json. - If needed, update dependency ranges in sibling package manifests.
- Add release notes to
CHANGELOG.md. - Push the matching package tag.
Examples:
git tag vueforge-v0.101.0
git tag layouts-v0.100.2CHANGELOG.md remains repository-wide, but every release entry should clearly name the package scope it applies to.
Recommended wording:
Package: @codemonster-ru/vueforgePackage: @codemonster-ru/vueforge-layouts
If one change affects multiple packages, list all affected packages explicitly.
The publish workflow validates tag-to-package version matching and publishes only the targeted package.
It does not automatically infer sibling version bumps. Dependency range updates remain an explicit maintainer responsibility.