reqlanOverviewIdeasFilesCode filesClustersAttributesGraphPrint

Printable idea sheet

version_management

reqlan rq/distribution/distribution.rq:7

Katz 0.233

Package versions are managed with Changesets via config.json.
Publishable channels ( each tag-driven ):
- Marketplace / Open VSX: extension_package ( private npm package; tagged `ext/v*` )
- GitHub Pages: site_package ( tagged `site/v*` )
- npm: `@reqlan/language`, `@reqlan/analytical`, `@reqlan/cli`, and `@reqlan/mcp` ( tagged `language/v*`, `analytical/v*`, `cli/v*`, `mcp/v*` )
`reqlan-extension` has its own semver. It is not version-locked to `@reqlan/analytical`. The extension can update independently of the analytical surfaces it uses ( version_management ).
The version of `@reqlan/analytical` is the single source of truth for every `@reqlan/analytical-<platform>-<arch>` package ( rust_binary_distribution ). Platform packages are in the Changesets `ignore` list ( `@reqlan/analytical-*` ). Git `@reqlan/analytical` does not list them as `optionalDependencies`, so `changeset version` can run. This workspace still links the checkout packages during `pnpm install` via `packageExtensions` in pnpm-workspace.yaml ( `workspace:*`, not npm ). After `changeset version`, prepare-native-packages.mjs copies the analytical version onto each platform package. The published tarball lists pinned `optionalDependencies` ( `--publish-versions` ) so CLI and MCP customers get the host binary.
Platform native packages are not a separate tag channel; they ride `analytical/v*` ( version_management ).
VSIX packaging uses the package. json versions in that git commit ( vsix_native_not_from_npm ).
`@reqlan/language`, `@reqlan/cli`, `@reqlan/mcp`, and the site keep their own versions.
Contributors record release intent by adding a changeset file when a publishable package changes.

status
done
tests
native-packaging.test.ts, native-packaging.test.ts:analytical version is SSOT for platform packages; Changesets ignores them, analytical optionalDependencies are publish-only, not in git

Interactive page: version_management