@oakoss/oakum 0.9.2 → 0.9.3

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.9.3 (2026-11-06)
4
+
5
+ ### Changed
6
+
7
+ Reading intent from commits, oakum lists the paths of every commit it attributes by path with one `git` child, instead of two per commit, lists each commit range once per run where `check` listed the range since the base twice, finds the default base once where `status` found it twice, and `check`'s coverage look reads every bump file `HEAD` carries with one `git` child instead of one per file.
8
+
9
+ An `extra-files` write that meets a duplicated key or a path that is not an object now words the error as every other JSON edit does: "has duplicate keys" where it said "is duplicated", and "is not an object" where it said "is not an object or array".
10
+
11
+ `release` reads the workspace, the install pin and the reachable tags once per run instead of once per step, takes an existing tag's commit from that tag listing rather than asking git per tag, and checks an ordinary tag name itself rather than running `git check-ref-format` for each, so it spawns fewer `cargo`, `pnpm` and `git` children.
12
+
13
+ ### Fixed
14
+
15
+ A Cargo member that declares a path dependency under the deprecated `[dev_dependencies]` or `[build_dependencies]` spelling, which Cargo still reads, failed workspace discovery with "missing from manifest", and `version` could not rewrite it. Both spellings are now read.
16
+
17
+ A workflow that installs oakum with an inexact version flag, such as `cargo install oakum --version=latest` or `cargo binstall oakum --version latest`, was reported as installing oakum without a version. It now names the spec, `latest`, as not an exact version. The outcome was already unverified; only the message changes.
18
+
19
+ A workflow that pins oakum to a spec spelled `unversioned`, `unparseable-yaml` or `with-not-object`, such as `npm i -g @oakoss/oakum@unparseable-yaml`, was reported as the wrong problem by every command that reads the pin: not valid YAML, an install without a version, or a `with` that is not a mapping. It now says the spec is not an exact version. The outcome was already unverified; only the message changes.
20
+
21
+ A bump file named like the consume marker's staging copy, such as `.version.oakum-consume.1.2.0.oakum-write.4.md`, made an interrupted consume whose writes had landed read as a rollback, so `version` advised reverting writes that had landed correctly.
22
+
23
+ When `version` rolls back and cannot move consumed bump files back, the advice to move them back names every one, where it stopped at five and said the rest were named in a list that also stopped at five. It now prints last, after any directories the rollback could not check, so it stays on screen.
24
+
25
+ `_schema.json` now says what `tag-format` defaults to when unset: `v{{ version }}` while one package is tag-managed, `{{ package }}/v{{ version }}` when several are. `oakum upgrade` rewrites the file.
26
+
3
27
  ## 0.9.2 (2026-11-05)
4
28
 
5
29
  ### Fixed
@@ -527,4 +551,4 @@ Release workflow checks out the homebrew tap in a subdirectory so the composite
527
551
 
528
552
  Self-host release CI uploads cargo-dist artifacts into the GitHub Release oakum already created, instead of calling create again.
529
553
 
530
- Generated by oakum 0.9.1.
554
+ Generated by oakum 0.9.2.
package/README.md CHANGED
@@ -18,7 +18,7 @@ Oakum derives which is which — from the binary targets Cargo resolves for a pa
18
18
 
19
19
  ## Design rules
20
20
 
21
- **Config expresses preference; facts are derived.** What depends on what, what is publishable, what needs a bump, and which artifact ships are all read from the repository on every run. Templates, titles, the tag format oakum writes, and commit messages are yours, because they describe output rather than the repository, so they cannot go stale. One key is neither: `resolves-dependencies-at`, which states when your package manager fixes a dependency — a fact about the ecosystem that oakum cannot read from your repository. `init` and `upgrade` will write `_schema.json` next to `_config.toml` and a `#:schema ./_schema.json` line; that directive is taplo's, not part of TOML, so editor support varies.
21
+ **Config expresses preference; facts are derived.** What depends on what, what is publishable, what needs a bump, and which artifact ships are all read from the repository on every run. Templates, titles, the tag format oakum writes, and commit messages are yours, because they describe output rather than the repository, so they cannot go stale. One key is neither: `resolves-dependencies-at`, set per package under `[packages.<name>]`, which states when your package manager fixes a dependency — a fact about the ecosystem that oakum cannot read from your repository. `init` and `upgrade` will write `_schema.json` next to `_config.toml` and a `#:schema ./_schema.json` line; that directive is taplo's, not part of TOML, so editor support varies. Every key, with its type and any default, is in the [configuration reference](docs/guide/configuration.md).
22
22
 
23
23
  **Every command writes only the files it owns.** Oakum does not install git hooks, touch git config, edit `AGENTS.md`, write CI workflows, or create commits you did not ask for. `version` owns the manifests it bumps, the lockfile entries those bumps invalidate, and declared `extra-files`. A Cargo version bump invalidates `Cargo.lock`, and a rewritten workspace range invalidates its `pnpm-lock.yaml` entry, so leaving either stale would break the next `--locked` build or frozen install. Nothing beyond that is written. `check` is pure: it reports drift and names the fix, never applies it.
24
24
 
@@ -19,7 +19,7 @@
19
19
  "hasInstallScript": true,
20
20
  "license": "MIT",
21
21
  "name": "@oakoss/oakum",
22
- "version": "0.9.2"
22
+ "version": "0.9.3"
23
23
  },
24
24
  "node_modules/detect-libc": {
25
25
  "engines": {
@@ -48,5 +48,5 @@
48
48
  }
49
49
  },
50
50
  "requires": true,
51
- "version": "0.9.2"
51
+ "version": "0.9.3"
52
52
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "artifactDownloadUrls": [
3
- "https://github.com/oakoss/oakum/releases/download/v0.9.2"
3
+ "https://github.com/oakoss/oakum/releases/download/v0.9.3"
4
4
  ],
5
5
  "author": "Jace Babin",
6
6
  "bin": {
@@ -105,7 +105,7 @@
105
105
  "zipExt": ".tar.xz"
106
106
  }
107
107
  },
108
- "version": "0.9.2",
108
+ "version": "0.9.3",
109
109
  "volta": {
110
110
  "node": "18.14.1",
111
111
  "npm": "9.5.0"