contractspec 3.7.1 → 3.7.4

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,32 @@
1
1
  # contractspec
2
2
 
3
+ ## 3.7.4
4
+
5
+ ### Patch Changes
6
+
7
+ - fix: release security
8
+ - Updated dependencies
9
+ - @contractspec/app.cli-contractspec@3.7.4
10
+
11
+ ## 3.7.3
12
+
13
+ ### Patch Changes
14
+
15
+ - fix: release
16
+ - Updated dependencies
17
+ - @contractspec/app.cli-contractspec@3.7.3
18
+
19
+ ## 3.7.2
20
+
21
+ ### Patch Changes
22
+
23
+ - 8cd229b: fix: release
24
+ - 04bc555: Improve contract integrity, example validation, onboarding docs, doctor safety,
25
+ release verification, packaged smoke testing, and security workflow coverage.
26
+ - Updated dependencies [8cd229b]
27
+ - Updated dependencies [04bc555]
28
+ - @contractspec/app.cli-contractspec@3.7.2
29
+
3
30
  ## 3.7.1
4
31
 
5
32
  ### Patch Changes
@@ -1,3 +1,25 @@
1
1
  #!/usr/bin/env bun
2
2
  // One bin, picks the right runtime via conditional exports.
3
- import '@contractspec/app.cli-contractspec/run';
3
+ import { readFileSync } from 'node:fs';
4
+ import { dirname, resolve } from 'node:path';
5
+ import { fileURLToPath } from 'node:url';
6
+
7
+ const currentDir = dirname(fileURLToPath(import.meta.url));
8
+ const packageJsonCandidates = [
9
+ resolve(currentDir, '../package.json'),
10
+ resolve(currentDir, '../contractspec/package.json'),
11
+ ];
12
+
13
+ for (const packageJsonPath of packageJsonCandidates) {
14
+ try {
15
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf8'));
16
+ if (typeof packageJson.version === 'string' && packageJson.version.length > 0) {
17
+ process.env.CONTRACTSPEC_CLI_VERSION ??= packageJson.version;
18
+ break;
19
+ }
20
+ } catch {
21
+ // Try the next candidate path.
22
+ }
23
+ }
24
+
25
+ await import('@contractspec/app.cli-contractspec/run');
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "contractspec",
3
- "version": "3.7.1",
3
+ "version": "3.7.4",
4
4
  "description": "CLI tool for creating, building, and validating contract specifications",
5
5
  "bin": {
6
6
  "contractspec": "./bin/contractspec.mjs"
7
7
  },
8
8
  "dependencies": {
9
- "@contractspec/app.cli-contractspec": "3.7.1"
9
+ "@contractspec/app.cli-contractspec": "3.7.4"
10
10
  },
11
11
  "scripts": {
12
12
  "publish:pkg": "bun publish --tolerate-republish --ignore-scripts --verbose",