@leemour/cli-core 0.1.1 → 0.1.2

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 +13 -5
  2. package/package.json +15 -12
package/README.md CHANGED
@@ -7,7 +7,7 @@ keyring behind a testable seam, and injectable clocks.
7
7
  Extracted from [`brazecli`](https://github.com/leemour/brazecli), where each piece earned its
8
8
  shape, and shared with [`max-cli`](https://github.com/leemour/max-cli).
9
9
 
10
- **Status: 0.1.1.** Published on npm, used by `max-cli`. Both extraction steps have landed: the
10
+ **Status: 0.1.2.** Published on npm, used by `max-cli`. Both extraction steps have landed: the
11
11
  files that move unchanged, and the ones that needed a parameter threaded through. 75 tests.
12
12
 
13
13
  ## The rule this package exists to keep
@@ -109,10 +109,18 @@ Raise `version` in `package.json` through a pull request, merge it, then on `mai
109
109
  bin/release
110
110
  ```
111
111
 
112
- It refuses a dirty tree, a branch other than `main` and a version npm already has, runs every
113
- check, publishes with the npm token from the keyring (`secret-tool`, service `npm`, account
114
- `leemour`) without printing it, and tags `v<version>` only once npm shows the new version. The
115
- token must be allowed to write `@leemour/cli-core`, not only `@leemour/max-cli`.
112
+ It refuses a dirty tree, a branch other than `main`, a `main` that is not pushed and a version npm
113
+ already has, then starts [`release.yml`](.github/workflows/release.yml) and follows it. The workflow
114
+ runs every check, publishes through npm's
115
+ [trusted publishing](https://docs.npmjs.com/trusted-publishers/) — no npm token in GitHub, and npm
116
+ attaches provenance — and tags `v<version>` only once npm shows the new version.
117
+
118
+ npm trusts the workflow **by file name**: the package's Trusted Publisher settings on npmjs.com name
119
+ `leemour` / `cli-core` / `release.yml`. Rename the file and publishing stops until they are updated.
120
+
121
+ `bin/release --local` is the fallback: it runs the same checks here and publishes with the npm token
122
+ from the keyring (`secret-tool`, service `npm`, account `leemour`) without printing it. The token
123
+ must be allowed to write `@leemour/cli-core`, not only `@leemour/max-cli`.
116
124
 
117
125
  ## Licence
118
126
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leemour/cli-core",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "The parts every command line tool needs: output modes, terminal rendering, error model, exit codes, credentials, clocks",
5
5
  "license": "MIT",
6
6
  "author": "Viacheslav Ptsarev",
@@ -12,6 +12,7 @@
12
12
  "engines": {
13
13
  "node": ">=22"
14
14
  },
15
+ "packageManager": "pnpm@11.20.0",
15
16
  "files": [
16
17
  "dist",
17
18
  "README.md",
@@ -31,6 +32,18 @@
31
32
  "default": "./dist/http/index.js"
32
33
  }
33
34
  },
35
+ "scripts": {
36
+ "build": "tsc --build",
37
+ "typecheck": "tsc --build --force --emitDeclarationOnly",
38
+ "lint": "biome check .",
39
+ "lint:fix": "biome check --write .",
40
+ "test": "vitest run",
41
+ "test:watch": "vitest",
42
+ "smoke:bun": "bun run scripts/smoke.ts",
43
+ "prepare": "lefthook install || true",
44
+ "secrets:scan": "gitleaks git --no-banner --redact .",
45
+ "prepublishOnly": "pnpm build"
46
+ },
34
47
  "dependencies": {
35
48
  "cli-table3": "^0.6.5",
36
49
  "picocolors": "^1.1.1",
@@ -50,15 +63,5 @@
50
63
  },
51
64
  "publishConfig": {
52
65
  "access": "public"
53
- },
54
- "scripts": {
55
- "build": "tsc --build",
56
- "typecheck": "tsc --build --force --emitDeclarationOnly",
57
- "lint": "biome check .",
58
- "lint:fix": "biome check --write .",
59
- "test": "vitest run",
60
- "test:watch": "vitest",
61
- "smoke:bun": "bun run scripts/smoke.ts",
62
- "secrets:scan": "gitleaks git --no-banner --redact ."
63
66
  }
64
- }
67
+ }