putitoutthere 0.2.67 → 0.2.69
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/dist/action.js +2 -1
- package/dist/action.js.map +1 -1
- package/dist/advance-floating-major.d.ts +1 -2
- package/dist/advance-floating-major.d.ts.map +1 -1
- package/dist/advance-floating-major.js +8 -9
- package/dist/advance-floating-major.js.map +1 -1
- package/dist/advance-v0.d.ts +3 -4
- package/dist/advance-v0.d.ts.map +1 -1
- package/dist/advance-v0.js +5 -6
- package/dist/advance-v0.js.map +1 -1
- package/dist/cascade.d.ts.map +1 -1
- package/dist/cascade.js +2 -1
- package/dist/cascade.js.map +1 -1
- package/dist/check-crate-size.d.ts +1 -1
- package/dist/check-crate-size.d.ts.map +1 -1
- package/dist/check-crate-size.js +22 -13
- package/dist/check-crate-size.js.map +1 -1
- package/dist/check.d.ts +1 -1
- package/dist/check.d.ts.map +1 -1
- package/dist/check.js +69 -61
- package/dist/check.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +15 -15
- package/dist/cli.js.map +1 -1
- package/dist/completeness.d.ts +3 -2
- package/dist/completeness.d.ts.map +1 -1
- package/dist/completeness.js +14 -13
- package/dist/completeness.js.map +1 -1
- package/dist/config.d.ts +4 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +5 -5
- package/dist/config.js.map +1 -1
- package/dist/ensure-tag.d.ts +1 -1
- package/dist/ensure-tag.d.ts.map +1 -1
- package/dist/ensure-tag.js +4 -4
- package/dist/ensure-tag.js.map +1 -1
- package/dist/find-workspace-root.d.ts +1 -1
- package/dist/find-workspace-root.d.ts.map +1 -1
- package/dist/find-workspace-root.js +3 -3
- package/dist/find-workspace-root.js.map +1 -1
- package/dist/fold-action-bundle.d.ts +1 -1
- package/dist/fold-action-bundle.d.ts.map +1 -1
- package/dist/fold-action-bundle.js +5 -5
- package/dist/fold-action-bundle.js.map +1 -1
- package/dist/force-move-tag.d.ts +1 -1
- package/dist/force-move-tag.d.ts.map +1 -1
- package/dist/force-move-tag.js +3 -3
- package/dist/force-move-tag.js.map +1 -1
- package/dist/git.d.ts +19 -21
- package/dist/git.d.ts.map +1 -1
- package/dist/git.js +44 -49
- package/dist/git.js.map +1 -1
- package/dist/glob.d.ts +1 -1
- package/dist/glob.d.ts.map +1 -1
- package/dist/glob.js +17 -7
- package/dist/glob.js.map +1 -1
- package/dist/handlers/crates.d.ts +2 -1
- package/dist/handlers/crates.d.ts.map +1 -1
- package/dist/handlers/crates.js +35 -36
- package/dist/handlers/crates.js.map +1 -1
- package/dist/handlers/npm-platform.d.ts +1 -0
- package/dist/handlers/npm-platform.d.ts.map +1 -1
- package/dist/handlers/npm-platform.js +39 -41
- package/dist/handlers/npm-platform.js.map +1 -1
- package/dist/handlers/npm.d.ts.map +1 -1
- package/dist/handlers/npm.js +30 -23
- package/dist/handlers/npm.js.map +1 -1
- package/dist/handlers/pypi.js +17 -12
- package/dist/handlers/pypi.js.map +1 -1
- package/dist/normalize-artifacts.d.ts +1 -1
- package/dist/normalize-artifacts.d.ts.map +1 -1
- package/dist/normalize-artifacts.js +8 -7
- package/dist/normalize-artifacts.js.map +1 -1
- package/dist/plan-status.js +1 -1
- package/dist/plan-status.js.map +1 -1
- package/dist/plan.d.ts.map +1 -1
- package/dist/plan.js +29 -27
- package/dist/plan.js.map +1 -1
- package/dist/preflight.d.ts +14 -14
- package/dist/preflight.d.ts.map +1 -1
- package/dist/preflight.js +56 -56
- package/dist/preflight.js.map +1 -1
- package/dist/publish.d.ts.map +1 -1
- package/dist/publish.js +25 -17
- package/dist/publish.js.map +1 -1
- package/dist/python-versions.d.ts +1 -1
- package/dist/python-versions.d.ts.map +1 -1
- package/dist/python-versions.js +5 -5
- package/dist/python-versions.js.map +1 -1
- package/dist/reconcile.js +3 -3
- package/dist/reconcile.js.map +1 -1
- package/dist/release-github/gh-release-create.d.ts +1 -1
- package/dist/release-github/gh-release-create.d.ts.map +1 -1
- package/dist/release-github/gh-release-create.js +3 -4
- package/dist/release-github/gh-release-create.js.map +1 -1
- package/dist/release-github/gh-release-exists.d.ts +1 -1
- package/dist/release-github/gh-release-exists.d.ts.map +1 -1
- package/dist/release-github/gh-release-exists.js +3 -3
- package/dist/release-github/gh-release-exists.js.map +1 -1
- package/dist/release-github/index.d.ts +4 -5
- package/dist/release-github/index.d.ts.map +1 -1
- package/dist/release-github/index.js +8 -9
- package/dist/release-github/index.js.map +1 -1
- package/dist/resolve-tag-commit.d.ts +2 -2
- package/dist/resolve-tag-commit.d.ts.map +1 -1
- package/dist/resolve-tag-commit.js +4 -4
- package/dist/resolve-tag-commit.js.map +1 -1
- package/dist/status.js +2 -2
- package/dist/status.js.map +1 -1
- package/dist/trailer.d.ts +1 -0
- package/dist/trailer.d.ts.map +1 -1
- package/dist/trailer.js +1 -1
- package/dist/trailer.js.map +1 -1
- package/dist/utils/exec-capture.d.ts +20 -0
- package/dist/utils/exec-capture.d.ts.map +1 -0
- package/dist/utils/exec-capture.js +25 -0
- package/dist/utils/exec-capture.js.map +1 -0
- package/dist/utils/exec-error.d.ts +16 -0
- package/dist/utils/exec-error.d.ts.map +1 -0
- package/dist/utils/exec-error.js +21 -0
- package/dist/utils/exec-error.js.map +1 -0
- package/dist/utils/exec-inherit.d.ts +13 -0
- package/dist/utils/exec-inherit.d.ts.map +1 -0
- package/dist/utils/exec-inherit.js +25 -0
- package/dist/utils/exec-inherit.js.map +1 -0
- package/dist/utils/list-files-recursive.d.ts +2 -2
- package/dist/utils/list-files-recursive.d.ts.map +1 -1
- package/dist/utils/list-files-recursive.js +7 -6
- package/dist/utils/list-files-recursive.js.map +1 -1
- package/dist/utils/path-exists.d.ts +3 -0
- package/dist/utils/path-exists.d.ts.map +1 -0
- package/dist/utils/path-exists.js +12 -0
- package/dist/utils/path-exists.js.map +1 -0
- package/dist/utils/sleep.d.ts +3 -0
- package/dist/utils/sleep.d.ts.map +1 -0
- package/dist/utils/sleep.js +5 -0
- package/dist/utils/sleep.js.map +1 -0
- package/dist/verbose.d.ts +1 -1
- package/dist/verbose.d.ts.map +1 -1
- package/dist/verbose.js +5 -5
- package/dist/verbose.js.map +1 -1
- package/dist/verify/bundle-cli/index.d.ts +2 -2
- package/dist/verify/bundle-cli/index.d.ts.map +1 -1
- package/dist/verify/bundle-cli/index.js +6 -6
- package/dist/verify/bundle-cli/index.js.map +1 -1
- package/dist/verify/bundle-cli/read-python-source.d.ts +1 -1
- package/dist/verify/bundle-cli/read-python-source.d.ts.map +1 -1
- package/dist/verify/bundle-cli/read-python-source.js +5 -4
- package/dist/verify/bundle-cli/read-python-source.js.map +1 -1
- package/dist/verify/crate/extract-crate.d.ts +1 -1
- package/dist/verify/crate/extract-crate.d.ts.map +1 -1
- package/dist/verify/crate/extract-crate.js +5 -5
- package/dist/verify/crate/extract-crate.js.map +1 -1
- package/dist/verify/crate/find-crate-file.d.ts +1 -1
- package/dist/verify/crate/find-crate-file.d.ts.map +1 -1
- package/dist/verify/crate/find-crate-file.js +4 -4
- package/dist/verify/crate/find-crate-file.js.map +1 -1
- package/dist/verify/crate/has-crate-source.d.ts +1 -1
- package/dist/verify/crate/has-crate-source.d.ts.map +1 -1
- package/dist/verify/crate/has-crate-source.js +2 -2
- package/dist/verify/crate/has-crate-source.js.map +1 -1
- package/dist/verify/crate/index.d.ts +2 -2
- package/dist/verify/crate/index.d.ts.map +1 -1
- package/dist/verify/crate/index.js +8 -8
- package/dist/verify/crate/index.js.map +1 -1
- package/dist/verify/npm-tarball/download.d.ts +2 -2
- package/dist/verify/npm-tarball/download.d.ts.map +1 -1
- package/dist/verify/npm-tarball/download.js +7 -7
- package/dist/verify/npm-tarball/download.js.map +1 -1
- package/dist/verify/npm-tarball/local-dir-state.d.ts +1 -1
- package/dist/verify/npm-tarball/local-dir-state.d.ts.map +1 -1
- package/dist/verify/npm-tarball/local-dir-state.js +5 -4
- package/dist/verify/npm-tarball/local-dir-state.js.map +1 -1
- package/dist/verify/npm-tarball/main.d.ts.map +1 -1
- package/dist/verify/npm-tarball/main.js +8 -7
- package/dist/verify/npm-tarball/main.js.map +1 -1
- package/dist/verify/npm-tarball/resolve-url.js +4 -4
- package/dist/verify/npm-tarball/resolve-url.js.map +1 -1
- package/dist/verify/npm-tarball/triple.js +5 -5
- package/dist/verify/npm-tarball/triple.js.map +1 -1
- package/dist/verify/posture.js +1 -1
- package/dist/verify/posture.js.map +1 -1
- package/dist/verify/wheel/find-dist-file.d.ts +1 -1
- package/dist/verify/wheel/find-dist-file.d.ts.map +1 -1
- package/dist/verify/wheel/find-dist-file.js +6 -5
- package/dist/verify/wheel/find-dist-file.js.map +1 -1
- package/dist/verify/wheel/index.d.ts +2 -2
- package/dist/verify/wheel/index.d.ts.map +1 -1
- package/dist/verify/wheel/index.js +8 -7
- package/dist/verify/wheel/index.js.map +1 -1
- package/dist/verify/wheel/read-wheel-version.d.ts +1 -1
- package/dist/verify/wheel/read-wheel-version.d.ts.map +1 -1
- package/dist/verify/wheel/read-wheel-version.js +3 -3
- package/dist/verify/wheel/read-wheel-version.js.map +1 -1
- package/dist/wheel-abi.d.ts +2 -2
- package/dist/wheel-abi.d.ts.map +1 -1
- package/dist/wheel-abi.js +9 -7
- package/dist/wheel-abi.js.map +1 -1
- package/dist/write-crate-version.d.ts +1 -1
- package/dist/write-crate-version.d.ts.map +1 -1
- package/dist/write-crate-version.js +4 -4
- package/dist/write-crate-version.js.map +1 -1
- package/dist/write-launcher.d.ts +2 -2
- package/dist/write-launcher.d.ts.map +1 -1
- package/dist/write-launcher.js +9 -9
- package/dist/write-launcher.js.map +1 -1
- package/dist/write-resolved-cargo-version.d.ts +1 -1
- package/dist/write-resolved-cargo-version.d.ts.map +1 -1
- package/dist/write-resolved-cargo-version.js +6 -6
- package/dist/write-resolved-cargo-version.js.map +1 -1
- package/dist/write-version.d.ts +1 -1
- package/dist/write-version.d.ts.map +1 -1
- package/dist/write-version.js +7 -5
- package/dist/write-version.js.map +1 -1
- package/package.json +4 -4
package/dist/wheel-abi.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wheel-abi.d.ts","sourceRoot":"","sources":["../src/wheel-abi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAYH;;;;GAIG;AACH,
|
|
1
|
+
{"version":3,"file":"wheel-abi.d.ts","sourceRoot":"","sources":["../src/wheel-abi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAYH;;;;GAIG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAK9F"}
|
package/dist/wheel-abi.js
CHANGED
|
@@ -26,9 +26,9 @@
|
|
|
26
26
|
* table), falls through to `false` and the planner keeps fanning — the
|
|
27
27
|
* pre-#401 behavior, never worse.
|
|
28
28
|
*
|
|
29
|
-
* Engine convention:
|
|
29
|
+
* Engine convention: async `readFile` throughout (AGENTS.md, #469).
|
|
30
30
|
*/
|
|
31
|
-
import {
|
|
31
|
+
import { readFile } from 'node:fs/promises';
|
|
32
32
|
import { join } from 'node:path';
|
|
33
33
|
import { parse as parseToml } from 'smol-toml';
|
|
34
34
|
// `abi3` or `abi3-py<minor>`, either as a bare Cargo feature on the pyo3
|
|
@@ -40,26 +40,28 @@ const ABI3_FEATURE_RE = /(?:^|\/)abi3(?:-py\d+)?$/;
|
|
|
40
40
|
* Python-version-independent and so should be built once rather than
|
|
41
41
|
* fanned across the resolved CPython set.
|
|
42
42
|
*/
|
|
43
|
-
export function isVersionIndependentWheel(pkgPath, cwd) {
|
|
43
|
+
export async function isVersionIndependentWheel(pkgPath, cwd) {
|
|
44
44
|
const pkgDir = join(cwd, pkgPath);
|
|
45
|
-
const pyproject = readTomlOrNull(join(pkgDir, 'pyproject.toml'));
|
|
45
|
+
const pyproject = await readTomlOrNull(join(pkgDir, 'pyproject.toml'));
|
|
46
46
|
if (pyprojectMarksVersionIndependent(pyproject)) {
|
|
47
47
|
return true;
|
|
48
48
|
}
|
|
49
|
-
return cargoEnablesAbi3(readTomlOrNull(join(pkgDir, 'Cargo.toml')));
|
|
49
|
+
return cargoEnablesAbi3(await readTomlOrNull(join(pkgDir, 'Cargo.toml')));
|
|
50
50
|
}
|
|
51
51
|
/* ------------------------------ internals ------------------------------ */
|
|
52
|
-
function readTomlOrNull(path) {
|
|
52
|
+
async function readTomlOrNull(path) {
|
|
53
53
|
let raw;
|
|
54
54
|
try {
|
|
55
|
-
raw =
|
|
55
|
+
raw = await readFile(path, 'utf8');
|
|
56
56
|
}
|
|
57
57
|
catch {
|
|
58
58
|
return null;
|
|
59
59
|
}
|
|
60
60
|
try {
|
|
61
61
|
const parsed = parseToml(raw);
|
|
62
|
+
/* v8 ignore start -- smol-toml parses every valid document to a table root; the non-table fallback can't fire */
|
|
62
63
|
return isTable(parsed) ? parsed : null;
|
|
64
|
+
/* v8 ignore stop */
|
|
63
65
|
}
|
|
64
66
|
catch {
|
|
65
67
|
return null;
|
package/dist/wheel-abi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wheel-abi.js","sourceRoot":"","sources":["../src/wheel-abi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"wheel-abi.js","sourceRoot":"","sources":["../src/wheel-abi.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,5 +28,5 @@
|
|
|
28
28
|
* mirroring `writeVersionForBuild`. Non-ENOENT read failures surface
|
|
29
29
|
* unmodified.
|
|
30
30
|
*/
|
|
31
|
-
export declare function writeCrateVersionForBuild(crateDir: string, version: string): string[]
|
|
31
|
+
export declare function writeCrateVersionForBuild(crateDir: string, version: string): Promise<string[]>;
|
|
32
32
|
//# sourceMappingURL=write-crate-version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-crate-version.d.ts","sourceRoot":"","sources":["../src/write-crate-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAOH;;;;;;;;;;GAUG;AACH,
|
|
1
|
+
{"version":3,"file":"write-crate-version.d.ts","sourceRoot":"","sources":["../src/write-crate-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAOH;;;;;;;;;;GAUG;AACH,wBAAsB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAepG"}
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* `Cargo.toml`, so it needs a manifest-direct bump with no pyproject
|
|
18
18
|
* gate. This is that command.
|
|
19
19
|
*/
|
|
20
|
-
import {
|
|
20
|
+
import { readFile } from 'node:fs/promises';
|
|
21
21
|
import { join } from 'node:path';
|
|
22
22
|
import { writeResolvedCargoVersion } from './write-resolved-cargo-version.js';
|
|
23
23
|
/**
|
|
@@ -31,11 +31,11 @@ import { writeResolvedCargoVersion } from './write-resolved-cargo-version.js';
|
|
|
31
31
|
* mirroring `writeVersionForBuild`. Non-ENOENT read failures surface
|
|
32
32
|
* unmodified.
|
|
33
33
|
*/
|
|
34
|
-
export function writeCrateVersionForBuild(crateDir, version) {
|
|
34
|
+
export async function writeCrateVersionForBuild(crateDir, version) {
|
|
35
35
|
const cargoPath = join(crateDir, 'Cargo.toml');
|
|
36
36
|
let original;
|
|
37
37
|
try {
|
|
38
|
-
original =
|
|
38
|
+
original = await readFile(cargoPath, 'utf8');
|
|
39
39
|
}
|
|
40
40
|
catch (err) {
|
|
41
41
|
if (err.code === 'ENOENT') {
|
|
@@ -43,6 +43,6 @@ export function writeCrateVersionForBuild(crateDir, version) {
|
|
|
43
43
|
}
|
|
44
44
|
throw err;
|
|
45
45
|
}
|
|
46
|
-
return writeResolvedCargoVersion(crateDir, original, version);
|
|
46
|
+
return await writeResolvedCargoVersion(crateDir, original, version);
|
|
47
47
|
}
|
|
48
48
|
//# sourceMappingURL=write-crate-version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-crate-version.js","sourceRoot":"","sources":["../src/write-crate-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"write-crate-version.js","sourceRoot":"","sources":["../src/write-crate-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAE9E;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,QAAgB,EAAE,OAAe;IAC/E,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC/C,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CACb,gDAAgD,SAAS,wGAAwG,EACjK,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,OAAO,MAAM,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACtE,CAAC"}
|
package/dist/write-launcher.d.ts
CHANGED
|
@@ -44,7 +44,7 @@ export declare function generateLauncherSource(opts: WriteLauncherOptions): stri
|
|
|
44
44
|
*
|
|
45
45
|
* Returns the list of paths that were actually written.
|
|
46
46
|
*/
|
|
47
|
-
export declare function writeLauncher(opts: WriteLauncherOptions): string[]
|
|
47
|
+
export declare function writeLauncher(opts: WriteLauncherOptions): Promise<string[]>;
|
|
48
48
|
export interface WriteLauncherFromConfigOptions {
|
|
49
49
|
/** Repo root — `${cwd}/putitoutthere.toml` is read to locate the package. */
|
|
50
50
|
cwd: string;
|
|
@@ -62,7 +62,7 @@ export interface WriteLauncherFromConfigOptions {
|
|
|
62
62
|
* job invokes this on every main row and only bundled-cli rows need
|
|
63
63
|
* the launcher.
|
|
64
64
|
*/
|
|
65
|
-
export declare function writeLauncherFromConfig(opts: WriteLauncherFromConfigOptions): string[]
|
|
65
|
+
export declare function writeLauncherFromConfig(opts: WriteLauncherFromConfigOptions): Promise<string[]>;
|
|
66
66
|
/**
|
|
67
67
|
* Map a target triple (napi-rs short form or Rust target) to the Node
|
|
68
68
|
* `${platform}-${arch}` lookup key used in the generated launcher's
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-launcher.d.ts","sourceRoot":"","sources":["../src/write-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,MAAM,WAAW,oBAAoB;IACnC,mDAAmD;IACnD,MAAM,EAAE,MAAM,CAAC;IACf;iFAC6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB;qCACiC;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ;;6EAEyE;IACzE,oBAAoB,EAAE,MAAM,CAAC;IAC7B;kEAC8D;IAC9D,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CA4CzE;AAED;;;;;;GAMG;AACH,
|
|
1
|
+
{"version":3,"file":"write-launcher.d.ts","sourceRoot":"","sources":["../src/write-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,MAAM,WAAW,oBAAoB;IACnC,mDAAmD;IACnD,MAAM,EAAE,MAAM,CAAC;IACf;iFAC6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB;qCACiC;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ;;6EAEyE;IACzE,oBAAoB,EAAE,MAAM,CAAC;IAC7B;kEAC8D;IAC9D,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CA4CzE;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA0BjF;AAED,MAAM,WAAW,8BAA8B;IAC7C,6EAA6E;IAC7E,GAAG,EAAE,MAAM,CAAC;IACZ;mCAC+B;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,8BAA8B,GACnC,OAAO,CAAC,MAAM,EAAE,CAAC,CA+CnB;AAcD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAetD;AA6BD,oEAAoE;AACpE,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAM5D"}
|
package/dist/write-launcher.js
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* Consumers who need a custom launcher commit it under the same path
|
|
14
14
|
* and the workflow respects it.
|
|
15
15
|
*/
|
|
16
|
-
import {
|
|
16
|
+
import { mkdir, readFile, writeFile } from 'node:fs/promises';
|
|
17
17
|
import { dirname, isAbsolute, join, resolve } from 'node:path';
|
|
18
18
|
import { loadConfig } from './config.js';
|
|
19
19
|
import { normalizeBuild } from './handlers/npm-platform.js';
|
|
@@ -73,16 +73,16 @@ export function generateLauncherSource(opts) {
|
|
|
73
73
|
*
|
|
74
74
|
* Returns the list of paths that were actually written.
|
|
75
75
|
*/
|
|
76
|
-
export function writeLauncher(opts) {
|
|
76
|
+
export async function writeLauncher(opts) {
|
|
77
77
|
const written = [];
|
|
78
78
|
const launcherPath = join(opts.pkgDir, 'bin', `${opts.bin}.js`);
|
|
79
79
|
// CodeQL TOCTOU: use `wx` (write-exclusive) rather than `existsSync`
|
|
80
80
|
// precheck so the "absent only" guarantee is atomic. EEXIST means a
|
|
81
81
|
// consumer-authored launcher (or a concurrent write) won this race —
|
|
82
82
|
// exactly the override path we want to respect.
|
|
83
|
-
|
|
83
|
+
await mkdir(dirname(launcherPath), { recursive: true });
|
|
84
84
|
try {
|
|
85
|
-
|
|
85
|
+
await writeFile(launcherPath, generateLauncherSource(opts), { encoding: 'utf8', flag: 'wx' });
|
|
86
86
|
written.push(launcherPath);
|
|
87
87
|
}
|
|
88
88
|
catch (err) {
|
|
@@ -91,13 +91,13 @@ export function writeLauncher(opts) {
|
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
93
|
const pkgJsonPath = join(opts.pkgDir, 'package.json');
|
|
94
|
-
const raw =
|
|
94
|
+
const raw = await readFile(pkgJsonPath, 'utf8');
|
|
95
95
|
const parsed = JSON.parse(raw);
|
|
96
96
|
if (parsed['bin'] === undefined) {
|
|
97
97
|
parsed['bin'] = { [opts.bin]: `bin/${opts.bin}.js` };
|
|
98
98
|
const indent = detectIndent(raw);
|
|
99
99
|
const trailing = raw.endsWith('\n') ? '\n' : '';
|
|
100
|
-
|
|
100
|
+
await writeFile(pkgJsonPath, JSON.stringify(parsed, null, indent) + trailing, 'utf8');
|
|
101
101
|
written.push(pkgJsonPath);
|
|
102
102
|
}
|
|
103
103
|
return written;
|
|
@@ -110,8 +110,8 @@ export function writeLauncher(opts) {
|
|
|
110
110
|
* job invokes this on every main row and only bundled-cli rows need
|
|
111
111
|
* the launcher.
|
|
112
112
|
*/
|
|
113
|
-
export function writeLauncherFromConfig(opts) {
|
|
114
|
-
const cfg = loadConfig(opts.configPath ?? join(opts.cwd, 'putitoutthere.toml'));
|
|
113
|
+
export async function writeLauncherFromConfig(opts) {
|
|
114
|
+
const cfg = await loadConfig(opts.configPath ?? join(opts.cwd, 'putitoutthere.toml'));
|
|
115
115
|
const absPkg = isAbsolute(opts.packagePath)
|
|
116
116
|
? opts.packagePath
|
|
117
117
|
: resolve(opts.cwd, opts.packagePath);
|
|
@@ -151,7 +151,7 @@ export function writeLauncherFromConfig(opts) {
|
|
|
151
151
|
const targets = npmPkg.targets;
|
|
152
152
|
const triples = targets.map((t) => (typeof t === 'string' ? t : t.triple));
|
|
153
153
|
const npmName = npmPkg.npm ?? npmPkg.name;
|
|
154
|
-
return writeLauncher({
|
|
154
|
+
return await writeLauncher({
|
|
155
155
|
pkgDir: resolve(opts.cwd, npmPkg.path),
|
|
156
156
|
npmName,
|
|
157
157
|
bin: bundleCli.bin,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-launcher.js","sourceRoot":"","sources":["../src/write-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"write-launcher.js","sourceRoot":"","sources":["../src/write-launcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
* the crate declares no resolvable version source (via `replaceCargoVersion`),
|
|
13
13
|
* or when it inherits but no ancestor `[workspace]` exists.
|
|
14
14
|
*/
|
|
15
|
-
export declare function writeResolvedCargoVersion(crateDir: string, cargoSource: string, version: string): string[]
|
|
15
|
+
export declare function writeResolvedCargoVersion(crateDir: string, cargoSource: string, version: string): Promise<string[]>;
|
|
16
16
|
//# sourceMappingURL=write-resolved-cargo-version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-resolved-cargo-version.d.ts","sourceRoot":"","sources":["../src/write-resolved-cargo-version.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;GAaG;AACH,
|
|
1
|
+
{"version":3,"file":"write-resolved-cargo-version.d.ts","sourceRoot":"","sources":["../src/write-resolved-cargo-version.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;GAaG;AACH,wBAAsB,yBAAyB,CAC7C,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,EAAE,CAAC,CAmCnB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
3
|
import { parse as parseToml } from 'smol-toml';
|
|
4
4
|
import { findWorkspaceRoot } from './find-workspace-root.js';
|
|
@@ -18,7 +18,7 @@ import { replaceWorkspacePackageVersion } from './replace-workspace-package-vers
|
|
|
18
18
|
* the crate declares no resolvable version source (via `replaceCargoVersion`),
|
|
19
19
|
* or when it inherits but no ancestor `[workspace]` exists.
|
|
20
20
|
*/
|
|
21
|
-
export function writeResolvedCargoVersion(crateDir, cargoSource, version) {
|
|
21
|
+
export async function writeResolvedCargoVersion(crateDir, cargoSource, version) {
|
|
22
22
|
// Detect inheritance from the parsed manifest. An unparseable manifest
|
|
23
23
|
// falls through to the literal path, preserving the pre-#428 regex
|
|
24
24
|
// behavior for odd-but-writable manifests.
|
|
@@ -38,19 +38,19 @@ export function writeResolvedCargoVersion(crateDir, cargoSource, version) {
|
|
|
38
38
|
const cargoPath = join(crateDir, 'Cargo.toml');
|
|
39
39
|
const updated = replaceCargoVersion(cargoSource, version);
|
|
40
40
|
if (updated !== cargoSource) {
|
|
41
|
-
|
|
41
|
+
await writeFile(cargoPath, updated, 'utf8');
|
|
42
42
|
}
|
|
43
43
|
return [cargoPath];
|
|
44
44
|
}
|
|
45
|
-
const root = findWorkspaceRoot(crateDir);
|
|
45
|
+
const root = await findWorkspaceRoot(crateDir);
|
|
46
46
|
if (root === null) {
|
|
47
47
|
throw new Error(`Cargo.toml: ${join(crateDir, 'Cargo.toml')} sets \`version.workspace = true\` but no ancestor [workspace] Cargo.toml was found. Declare [workspace.package].version at the workspace root.`);
|
|
48
48
|
}
|
|
49
49
|
const rootPath = join(root, 'Cargo.toml');
|
|
50
|
-
const rootSource =
|
|
50
|
+
const rootSource = await readFile(rootPath, 'utf8');
|
|
51
51
|
const updated = replaceWorkspacePackageVersion(rootSource, version);
|
|
52
52
|
if (updated !== rootSource) {
|
|
53
|
-
|
|
53
|
+
await writeFile(rootPath, updated, 'utf8');
|
|
54
54
|
}
|
|
55
55
|
return [rootPath];
|
|
56
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-resolved-cargo-version.js","sourceRoot":"","sources":["../src/write-resolved-cargo-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"write-resolved-cargo-version.js","sourceRoot":"","sources":["../src/write-resolved-cargo-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAExF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,QAAgB,EAChB,WAAmB,EACnB,OAAe;IAEf,uEAAuE;IACvE,mEAAmE;IACnE,2CAA2C;IAC3C,IAAI,UAAmB,CAAC;IACxB,IAAI,CAAC;QACH,UAAU,GAAI,SAAS,CAAC,WAAW,CAAyC,CAAC,OAAO,EAAE,OAAO,CAAC;IAChG,CAAC;IAAC,MAAM,CAAC;QACP,UAAU,GAAG,SAAS,CAAC;IACzB,CAAC;IACD,MAAM,QAAQ,GACZ,CAAC,CAAC,UAAU;QACZ,OAAO,UAAU,KAAK,QAAQ;QAC7B,UAAsC,CAAC,SAAS,KAAK,IAAI,CAAC;IAE7D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,yEAAyE;QACzE,uEAAuE;QACvE,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC1D,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;YAAA,MAAM,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAAA,CAAC;QAC3E,OAAO,CAAC,SAAS,CAAC,CAAC;IACrB,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC/C,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACb,eAAe,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,iJAAiJ,CAC7L,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAC1C,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,8BAA8B,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACpE,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAAA,MAAM,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAAA,CAAC;IACzE,OAAO,CAAC,QAAQ,CAAC,CAAC;AACpB,CAAC"}
|
package/dist/write-version.d.ts
CHANGED
|
@@ -31,5 +31,5 @@
|
|
|
31
31
|
* (`pull/277` advisories #13, #14), and `pypi.writeVersion` already
|
|
32
32
|
* uses the same try/catch shape we mirror here.
|
|
33
33
|
*/
|
|
34
|
-
export declare function writeVersionForBuild(pkgDir: string, version: string): string[]
|
|
34
|
+
export declare function writeVersionForBuild(pkgDir: string, version: string): Promise<string[]>;
|
|
35
35
|
//# sourceMappingURL=write-version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-version.d.ts","sourceRoot":"","sources":["../src/write-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAaH;;;;;;;;;;;;;;GAcG;AACH,
|
|
1
|
+
{"version":3,"file":"write-version.d.ts","sourceRoot":"","sources":["../src/write-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAaH;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAuD7F"}
|
package/dist/write-version.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* for the same reason, so a CLI-direct invocation surfaces the same
|
|
17
17
|
* actionable error rather than building an under-versioned artifact.
|
|
18
18
|
*/
|
|
19
|
-
import {
|
|
19
|
+
import { readFile } from 'node:fs/promises';
|
|
20
20
|
import { join } from 'node:path';
|
|
21
21
|
import { parse as parseToml } from 'smol-toml';
|
|
22
22
|
import { ErrorCodes } from './error-codes.js';
|
|
@@ -37,11 +37,11 @@ const DYNAMIC_VERSION_DOC_POINTER = 'https://thekevinscott.github.io/putitoutthe
|
|
|
37
37
|
* (`pull/277` advisories #13, #14), and `pypi.writeVersion` already
|
|
38
38
|
* uses the same try/catch shape we mirror here.
|
|
39
39
|
*/
|
|
40
|
-
export function writeVersionForBuild(pkgDir, version) {
|
|
40
|
+
export async function writeVersionForBuild(pkgDir, version) {
|
|
41
41
|
const pyProjectPath = join(pkgDir, 'pyproject.toml');
|
|
42
42
|
let pyOriginal;
|
|
43
43
|
try {
|
|
44
|
-
pyOriginal =
|
|
44
|
+
pyOriginal = await readFile(pyProjectPath, 'utf8');
|
|
45
45
|
}
|
|
46
46
|
catch (err) {
|
|
47
47
|
if (err.code === 'ENOENT') {
|
|
@@ -57,7 +57,9 @@ export function writeVersionForBuild(pkgDir, version) {
|
|
|
57
57
|
parsed = parseToml(pyOriginal);
|
|
58
58
|
}
|
|
59
59
|
catch (err) {
|
|
60
|
+
/* v8 ignore start -- smol-toml always throws an Error; the String(err) fallback is unreachable */
|
|
60
61
|
const msg = err instanceof Error ? err.message : String(err);
|
|
62
|
+
/* v8 ignore stop */
|
|
61
63
|
throw new Error(`write-version: failed to parse ${pyProjectPath}: ${msg}`, { cause: err });
|
|
62
64
|
}
|
|
63
65
|
const project = parsed?.project;
|
|
@@ -73,7 +75,7 @@ export function writeVersionForBuild(pkgDir, version) {
|
|
|
73
75
|
const cargoPath = join(pkgDir, 'Cargo.toml');
|
|
74
76
|
let cargoOriginal;
|
|
75
77
|
try {
|
|
76
|
-
cargoOriginal =
|
|
78
|
+
cargoOriginal = await readFile(cargoPath, 'utf8');
|
|
77
79
|
}
|
|
78
80
|
catch (err) {
|
|
79
81
|
if (err.code === 'ENOENT') {
|
|
@@ -82,7 +84,7 @@ export function writeVersionForBuild(pkgDir, version) {
|
|
|
82
84
|
/* v8 ignore next -- non-ENOENT read errors surface as-is */
|
|
83
85
|
throw err;
|
|
84
86
|
}
|
|
85
|
-
return writeResolvedCargoVersion(pkgDir, cargoOriginal, version);
|
|
87
|
+
return await writeResolvedCargoVersion(pkgDir, cargoOriginal, version);
|
|
86
88
|
}
|
|
87
89
|
function isDynamicVersion(project) {
|
|
88
90
|
const { dynamic } = project;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-version.js","sourceRoot":"","sources":["../src/write-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"write-version.js","sourceRoot":"","sources":["../src/write-version.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "putitoutthere",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.69",
|
|
4
4
|
"description": "Polyglot release orchestrator for crates.io, PyPI, and npm",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -31,9 +31,9 @@
|
|
|
31
31
|
"lint": "eslint src",
|
|
32
32
|
"lint:fix": "eslint src --fix",
|
|
33
33
|
"typecheck": "tsc --noEmit",
|
|
34
|
-
"test:unit": "vitest run",
|
|
35
|
-
"test:unit:watch": "vitest",
|
|
36
|
-
"test:unit:coverage": "vitest run --coverage",
|
|
34
|
+
"test:unit": "vitest run src test/workflows",
|
|
35
|
+
"test:unit:watch": "vitest src test/workflows",
|
|
36
|
+
"test:unit:coverage": "vitest run --coverage src test/workflows",
|
|
37
37
|
"test:integration": "vitest run --config tests/integration/vitest.integration.config.ts",
|
|
38
38
|
"test:e2e": "pnpm build && vitest run --config tests/e2e/vitest.e2e.config.ts",
|
|
39
39
|
"prepare": "tsc -p tsconfig.build.json"
|