@giovannijecha/jecode 0.1.5-rc.3 → 0.1.6-rc.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 (3) hide show
  1. package/README.md +15 -8
  2. package/bin/jecode.js +11 -1
  3. package/package.json +6 -5
package/README.md CHANGED
@@ -43,14 +43,20 @@
43
43
 
44
44
  ## Install
45
45
 
46
- Jecode requires **Node.js 24 or newer** and npm. Release candidates are
47
- published on the **next** channel:
46
+ Jecode requires **Node.js 24 or newer** and npm:
48
47
 
49
48
  ~~~console
50
- npm install --global @giovannijecha/jecode@next
49
+ npm install --global @giovannijecha/jecode
51
50
  jecode --version
52
51
  ~~~
53
52
 
53
+ To try prereleases instead, install the opt-in **next** channel with
54
+ `npm install --global @giovannijecha/jecode@next`.
55
+
56
+ Published npm packages are the supported installation artifacts. Git URL
57
+ installs are intentionally unsupported: the source tree contains no generated
58
+ runtime and defines no install-time build hook.
59
+
54
60
  Then open the project you want to work on and run Jecode:
55
61
 
56
62
  ~~~console
@@ -69,10 +75,10 @@ Ubuntu, and macOS.
69
75
 
70
76
  ### Update
71
77
 
72
- Install the current release candidate over the existing global command:
78
+ Install the current stable release over the existing global command:
73
79
 
74
80
  ~~~console
75
- npm install --global @giovannijecha/jecode@next
81
+ npm install --global @giovannijecha/jecode
76
82
  jecode --version
77
83
  ~~~
78
84
 
@@ -99,7 +105,7 @@ report 24 or newer.
99
105
  ~~~console
100
106
  git clone https://github.com/giovannijecha/jecode.git
101
107
  cd jecode
102
- npm ci
108
+ npm ci --ignore-scripts
103
109
  npm run build:release
104
110
  npm link
105
111
  jecode
@@ -107,7 +113,8 @@ jecode
107
113
 
108
114
  Development runs TypeScript directly with **npm run start**. **dist/** is an
109
115
  ignored, generated tree used only by linked commands and release tarballs.
110
- **npm pack** and **npm publish** rebuild it from a clean target; installing the
116
+ **npm run pack:release** rebuilds it from a clean target before packing; the
117
+ trusted publish workflow performs the same explicit build. Installing the
111
118
  published package runs no compilation or installation scripts.
112
119
 
113
120
  ## First session
@@ -242,7 +249,7 @@ expectations.
242
249
  ## Development
243
250
 
244
251
  ~~~console
245
- npm ci
252
+ npm ci --ignore-scripts
246
253
  npm run check
247
254
  ~~~
248
255
 
package/bin/jecode.js CHANGED
@@ -7,5 +7,15 @@ if (major < 24) {
7
7
  );
8
8
  process.exitCode = 1;
9
9
  } else {
10
- await import("../dist/main.js");
10
+ const runtime = new URL("../dist/main.js", import.meta.url);
11
+ try {
12
+ await import(runtime.href);
13
+ } catch (error) {
14
+ if (error?.code !== "ERR_MODULE_NOT_FOUND" || error.url !== runtime.href) throw error;
15
+ process.stderr.write(
16
+ "jecode's compiled runtime is missing; install @giovannijecha/jecode from npm " +
17
+ "or run npm run build:release in a source checkout\n",
18
+ );
19
+ process.exitCode = 1;
20
+ }
11
21
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@giovannijecha/jecode",
3
- "version": "0.1.5-rc.3",
3
+ "version": "0.1.6-rc.0",
4
4
  "description": "An owned coding agent with zero external runtime dependencies.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -36,18 +36,19 @@
36
36
  "registry": "https://registry.npmjs.org/"
37
37
  },
38
38
  "scripts": {
39
- "prepack": "node dev/build-release.ts --quiet",
40
39
  "build:release": "node dev/build-release.ts",
40
+ "pack:release": "npm run build:release && npm pack --ignore-scripts",
41
41
  "start": "node src/main.ts",
42
42
  "tui:lab": "node dev/tui-lab.ts",
43
43
  "bench:transcript": "node dev/benchmark-transcript.ts",
44
44
  "typecheck": "tsc --noEmit",
45
45
  "test": "npm run build:release && node --test",
46
46
  "coverage": "npm run build:release && node --test --experimental-test-coverage --test-coverage-include=\"src/**/*.ts\" --test-coverage-lines=80 --test-coverage-branches=75 --test-coverage-functions=75",
47
+ "check:source-tree": "node dev/check-source-tree.ts",
47
48
  "check:release-tag": "node dev/check-release-tag.ts",
48
- "check:package": "node dev/check-package.ts",
49
- "check:install": "node dev/check-installed-cli.ts",
50
- "check": "npm run typecheck && npm run coverage && npm run check:package && npm run check:install"
49
+ "check:package": "npm run build:release -- --quiet && node dev/check-package.ts",
50
+ "check:install": "npm run build:release -- --quiet && node dev/check-installed-cli.ts",
51
+ "check": "npm run check:source-tree && npm run typecheck && npm run coverage && npm run check:package && npm run check:install"
51
52
  },
52
53
  "dependencies": {},
53
54
  "devDependencies": {