@genroc/eval-node 0.0.0-edge.d8176a7 → 0.0.0-edge.f85ea85
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/README.md +4 -3
- package/bin/import.mjs +1 -1
- package/import.ts +4 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -11,8 +11,9 @@ Script tasks for Node. Two halves with different jobs:
|
|
|
11
11
|
|
|
12
12
|
npm i -D @genroc/eval-node
|
|
13
13
|
|
|
14
|
-
Then register the resolver in a
|
|
15
|
-
the file, so nothing depends
|
|
14
|
+
Then register the resolver in a `.genroc` beside your definitions — a dotfile, so it does not
|
|
15
|
+
read as another process definition. Discovery walks up from the source file, so nothing depends
|
|
16
|
+
on the cwd:
|
|
16
17
|
|
|
17
18
|
resolvers:
|
|
18
19
|
import:
|
|
@@ -186,7 +187,7 @@ never touches the queue and the worker never runs it; the two halves share this
|
|
|
186
187
|
because they share a calling convention, which is exactly the coupling that breaks silently
|
|
187
188
|
if they version apart.
|
|
188
189
|
|
|
189
|
-
Register it in the project's
|
|
190
|
+
Register it in the project's `.genroc`:
|
|
190
191
|
|
|
191
192
|
```yaml
|
|
192
193
|
resolvers:
|
package/bin/import.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
// npm `bin` entries need a shebang and a stable extension; Node's type stripping handles the
|
|
3
|
-
// .ts behind it. genroc
|
|
3
|
+
// .ts behind it. .genroc points here: command: [npx, genroc-import]
|
|
4
4
|
import "../import.ts";
|
package/import.ts
CHANGED
|
@@ -51,7 +51,7 @@ async function exists(path: string): Promise<boolean> {
|
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
/** Creates the parent directory, which `.genroc/` relies on: nothing else makes it. */
|
|
54
|
+
/** Creates the parent directory, which `.genroc-cache/` relies on: nothing else makes it. */
|
|
55
55
|
async function write(path: string, content: string): Promise<void> {
|
|
56
56
|
await mkdir(dirname(path), { recursive: true });
|
|
57
57
|
await writeFile(path, content);
|
|
@@ -197,7 +197,9 @@ async function nearestTsconfig(from: string, root: string): Promise<string | nul
|
|
|
197
197
|
}
|
|
198
198
|
|
|
199
199
|
async function typecheck(root: string, sites: Site[]): Promise<void> {
|
|
200
|
-
|
|
200
|
+
// NOT `.genroc`: that is the project config FILE, and a directory of the same name cannot
|
|
201
|
+
// coexist with it. The suffix is what keeps the scratch area out of its way.
|
|
202
|
+
const dir = join(root, ".genroc-cache");
|
|
201
203
|
await write(join(dir, ".gitignore"), "*\n");
|
|
202
204
|
|
|
203
205
|
// One tsc per distinct base config: `extends` takes a single base, so merging two would
|