rlsbl 0.63.1 → 0.64.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +7 -5
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -25,17 +25,17 @@ npm i -g rlsbl
25
25
  ## Quick start
26
26
 
27
27
  ```
28
- rlsbl scaffold # set up CI/CD, hooks, changelog
28
+ rlsbl scaffold # set up CI/CD, hooks, changelog, pipelines
29
29
  # ... develop, commit ...
30
30
  rlsbl release init # scaffold .rlsbl/releases/unreleased.toml
31
- # ... edit bump type, targets ...
32
- rlsbl release run # bump, tag, push, create GitHub Release
31
+ # ... edit bump type, targets, pipelines ...
32
+ rlsbl release run # bump, tag, push, publish, create GitHub Release
33
33
  rlsbl watch <sha> # monitor CI for that release
34
34
  ```
35
35
 
36
36
  ## Commands
37
37
 
38
- All commands auto-detect registries from project files (`package.json`, `pyproject.toml`, `go.mod`). Use `--target <npm|pypi|go>` to target a specific one.
38
+ All commands auto-detect targets (versioning) from project files (`package.json`, `pyproject.toml`, `go.mod`) and pipelines (publishing) from `.rlsbl/config.json`. Targets handle version bumps; pipelines handle where releases are published.
39
39
 
40
40
  | Command | Description |
41
41
  | --- | --- |
@@ -75,6 +75,7 @@ All commands auto-detect registries from project files (`package.json`, `pyproje
75
75
  | `monorepo release-order` | Compute and display the topological release order for all projects in the monorepo workspace based on their declared depends-on relationships. Projects with no dependencies are listed first, followed by projects that depend on them, ensuring each project is released only after its dependencies. Detects and reports circular dependency errors. |
76
76
  | `monorepo outdated` | Scan all projects in the monorepo workspace for intra-workspace dependencies that reference older versions than what is currently available in the workspace. Lists each outdated dependency with the referenced version and the latest available version, helping identify which downstream projects need a version bump after upstream releases. |
77
77
  | `monorepo snapshot` | Generate a committed JSON artifact at .rlsbl-monorepo/snapshot.json summarizing all packages, versions, dependencies, and graph structure. Use --check to verify the snapshot is up-to-date without regenerating it (exits 1 if stale). |
78
+ | `monorepo mirror` | Initialize a subtree mirror repository for a monorepo project. Splits the project's subtree, pushes it to the configured subtree_remote, clones the mirror, scaffolds rlsbl CI, and pushes the result. |
78
79
  | `monorepo graph` | Export the monorepo dependency graph in JSON, DOT (Graphviz), or indented text tree format. Supports filtering by a root package (transitive deps) or reverse package (transitive rdeps), with optional depth limiting. Use --output to write to a file instead of stdout. |
79
80
  | `monorepo impact` | Analyze the impact of changes to a package, file, or git diff range on the monorepo dependency graph. Shows direct and transitive dependents, test scope, and release candidates. Supports package names, file paths, and --since for git-based change detection. |
80
81
  | `monorepo release` | Execute a batch release of multiple monorepo packages in topological order. Reads package configurations from .rlsbl-monorepo/releases/unreleased.toml. Each package is released sequentially using the single-package release flow, with leaves (no dependencies) released first. Supports --dry-run, --yes, --allow-dirty flags. |
@@ -104,7 +105,7 @@ When you run `rlsbl release run`:
104
105
  14. Tags and pushes to `origin`
105
106
  15. Finalizes JSONL changelog (renames `unreleased.jsonl`, generates CHANGELOG.md)
106
107
  16. Creates a GitHub Release with the changelog entry as notes
107
- 17. Runs secondary release targets (e.g., docs via selfdoc)
108
+ 17. Runs publish pipelines (configured in `.rlsbl/config.json` under `pipelines`)
108
109
  18. Runs `.rlsbl/hooks/post-release.sh` if present (non-fatal)
109
110
  19. Prints `Watch CI: rlsbl watch <sha>`
110
111
 
@@ -254,6 +255,7 @@ Supports architectural layer rules via `[layers]` in `workspace.toml` for enforc
254
255
  |----------|---------|-------------|
255
256
  | `RLSBL_PUSH_TIMEOUT` | `120` | Timeout in seconds for `git push` operations |
256
257
  | `RLSBL_VERSION` | -- | Set when running pre-release and post-release hooks; contains the version being released |
258
+ | `RLSBL_DIST_DIR` | -- | Set when running `custom_assets` build commands; points to the distribution directory for output files |
257
259
  | `GITHUB_TOKEN` | -- | Used by `gh` CLI for GitHub API calls; `discover` works unauthenticated for public repos |
258
260
 
259
261
  ## First publish
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rlsbl",
3
- "version": "0.63.1",
3
+ "version": "0.64.0",
4
4
  "description": "Release orchestration and project scaffolding for npm, PyPI, and Go",
5
5
  "license": "MIT",
6
6
  "bin": {