pipework 0.7.10 → 0.7.11

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,9 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.7.11
4
+
5
+ - **Config loader resolves `.js` → `.ts` imports across workspace packages** — `pipework.config.ts` can now import surfaces and other TypeScript source from workspace packages using standard `.js` extension imports. Registers an ESM resolve hook before loading the config. `pipework dev` gets the same resolution (#181).
6
+
3
7
  ## 0.7.10
4
8
 
5
9
  - **`pipework check` is workspace-aware** — type-checks each module via `tsc --noEmit -p <module>/tsconfig.json` instead of failing when no root `tsconfig.json` exists. Lint runs per-module `src/`. Boundary check only runs when `scripts/check-boundaries.js` exists (#170).
@@ -12,12 +12,13 @@ export function dev(options) {
12
12
  function startSurfaceAware(options) {
13
13
  const cliDir = dirname(fileURLToPath(import.meta.url));
14
14
  const bootstrapPath = resolve(cliDir, '..', 'dev-bootstrap.ts');
15
+ const registerPath = resolve(cliDir, '..', '..', 'config', 'ts-register.js');
15
16
  const env = { ...process.env, 'PIPEWORK_DEV_CWD': options.cwd };
16
17
  if (options.port !== undefined) {
17
18
  env['PORT'] = options.port;
18
19
  }
19
20
  printBanner();
20
- const args = ['--watch', '--experimental-strip-types', bootstrapPath];
21
+ const args = ['--watch', '--experimental-strip-types', '--import', registerPath, bootstrapPath];
21
22
  const child = spawn('node', args, {
22
23
  cwd: options.cwd,
23
24
  stdio: 'inherit',
@@ -33,8 +34,10 @@ function startSurfaceAware(options) {
33
34
  process.on('SIGINT', () => child.kill('SIGINT'));
34
35
  }
35
36
  function startLegacy(options) {
37
+ const cliDir = dirname(fileURLToPath(import.meta.url));
38
+ const registerPath = resolve(cliDir, '..', '..', 'config', 'ts-register.js');
36
39
  const entry = options.entry ?? 'src/server.ts';
37
- const args = ['--watch', '--experimental-strip-types', entry];
40
+ const args = ['--watch', '--experimental-strip-types', '--import', registerPath, entry];
38
41
  if (options.port !== undefined) {
39
42
  process.env['PORT'] = options.port;
40
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../src/cli/commands/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAQvD,MAAM,UAAU,GAAG,CAAC,OAAmB;IACrC,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAChC,WAAW,CAAC,OAAO,CAAC,CAAA;QACpB,OAAM;IACR,CAAC;IAED,iBAAiB,CAAC,OAAO,CAAC,CAAA;AAC5B,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAmB;IAC5C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IACtD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAA;IAE/D,MAAM,GAAG,GAAuC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,kBAAkB,EAAE,OAAO,CAAC,GAAG,EAAE,CAAA;IACnG,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAA;IAC5B,CAAC;IAED,WAAW,EAAE,CAAA;IAEb,MAAM,IAAI,GAAG,CAAC,SAAS,EAAE,4BAA4B,EAAE,aAAa,CAAC,CAAA;IAErE,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE;QAChC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,KAAK,EAAE,SAAS;QAChB,GAAG;KACJ,CAAC,CAAA;IAEF,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAChC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;IAEF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAA;IAClD,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;AAClD,CAAC;AAED,SAAS,WAAW,CAAC,OAAmB;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,eAAe,CAAA;IAC9C,MAAM,IAAI,GAAG,CAAC,SAAS,EAAE,4BAA4B,EAAE,KAAK,CAAC,CAAA;IAE7D,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAA;IACpC,CAAC;IAED,IAAI,CAAC,6BAA6B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAEnD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE;QAChC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,OAAO,CAAC,GAAG;KACjB,CAAC,CAAA;IAEF,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACxB,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,WAAW;IAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAA;IAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAA;AACpE,CAAC"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../src/cli/commands/dev.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"discover.d.ts","sourceRoot":"","sources":["../../src/config/discover.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAK9C,wBAAsB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CA2BtE;AAMD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAYtD"}
1
+ {"version":3,"file":"discover.d.ts","sourceRoot":"","sources":["../../src/config/discover.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAkB9C,wBAAsB,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CA6BtE;AAMD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAYtD"}
@@ -1,14 +1,28 @@
1
1
  import { resolve, dirname } from 'node:path';
2
2
  import { existsSync } from 'node:fs';
3
3
  import { pathToFileURL } from 'node:url';
4
+ import { register } from 'node:module';
4
5
  import { ConfigError } from './resolve.js';
5
6
  const CONFIG_FILENAME = 'pipework.config.ts';
7
+ function registerTsResolveHooks() {
8
+ const code = `
9
+ export function resolve(specifier, context, nextResolve) {
10
+ if (specifier.endsWith('.js') && !(context.parentURL || '').includes('/node_modules/')) {
11
+ try { return nextResolve(specifier.slice(0, -3) + '.ts', context) }
12
+ catch { return nextResolve(specifier, context) }
13
+ }
14
+ return nextResolve(specifier, context)
15
+ }
16
+ `;
17
+ register(`data:text/javascript,${encodeURIComponent(code)}`);
18
+ }
6
19
  export async function discoverInstance(cwd) {
7
20
  const start = cwd ?? process.cwd();
8
21
  const configPath = findConfig(start);
9
22
  if (configPath === null) {
10
23
  throw new ConfigError(`No ${CONFIG_FILENAME} found in ${start} or any parent directory.`, `Create one with \`pipework init\`, or see the getting-started guide.`);
11
24
  }
25
+ registerTsResolveHooks();
12
26
  const configUrl = pathToFileURL(configPath).href;
13
27
  const mod = await import(configUrl);
14
28
  const exported = mod['default'] ?? mod;
@@ -1 +1 @@
1
- {"version":3,"file":"discover.js","sourceRoot":"","sources":["../../src/config/discover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE1C,MAAM,eAAe,GAAG,oBAAoB,CAAA;AAE5C,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAY;IACjD,MAAM,KAAK,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;IAClC,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAEpC,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,MAAM,IAAI,WAAW,CACnB,MAAM,eAAe,aAAa,KAAK,2BAA2B,EAClE,sEAAsE,CACvE,CAAA;IACH,CAAC;IAED,MAAM,SAAS,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAA;IAChD,MAAM,GAAG,GAA4B,MAAM,MAAM,CAAC,SAAS,CAAC,CAAA;IAC5D,MAAM,QAAQ,GAAY,GAAG,CAAC,SAAS,CAAC,IAAI,GAAG,CAAA;IAE/C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,WAAW,CACnB,GAAG,eAAe,yDAAyD,EAC3E,mCAAmC;YACnC,iDAAiD;YACjD,qCAAqC;YACrC,oDAAoD;YACpD,QAAQ,CACT,CAAA;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,UAAU,CAAC,CAAU;IAC5B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,CAAA;AAC5E,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,IAAI,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACvB,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IACzB,OAAO,GAAG,KAAK,MAAM,EAAE,CAAC;QACtB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC,CAAA;QAC/C,IAAI,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAA;QAC3C,GAAG,GAAG,MAAM,CAAA;QACZ,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC,CAAA;IAC1C,IAAI,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IACjC,OAAO,IAAI,CAAA;AACb,CAAC"}
1
+ {"version":3,"file":"discover.js","sourceRoot":"","sources":["../../src/config/discover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEtC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE1C,MAAM,eAAe,GAAG,oBAAoB,CAAA;AAE5C,SAAS,sBAAsB;IAC7B,MAAM,IAAI,GAAG;;;;;;;;GAQZ,CAAA;IACD,QAAQ,CAAC,wBAAwB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAY;IACjD,MAAM,KAAK,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;IAClC,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAEpC,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,MAAM,IAAI,WAAW,CACnB,MAAM,eAAe,aAAa,KAAK,2BAA2B,EAClE,sEAAsE,CACvE,CAAA;IACH,CAAC;IAED,sBAAsB,EAAE,CAAA;IAExB,MAAM,SAAS,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAA;IAChD,MAAM,GAAG,GAA4B,MAAM,MAAM,CAAC,SAAS,CAAC,CAAA;IAC5D,MAAM,QAAQ,GAAY,GAAG,CAAC,SAAS,CAAC,IAAI,GAAG,CAAA;IAE/C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,WAAW,CACnB,GAAG,eAAe,yDAAyD,EAC3E,mCAAmC;YACnC,iDAAiD;YACjD,qCAAqC;YACrC,oDAAoD;YACpD,QAAQ,CACT,CAAA;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,UAAU,CAAC,CAAU;IAC5B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,MAAM,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,CAAA;AAC5E,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,IAAI,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACvB,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IACzB,OAAO,GAAG,KAAK,MAAM,EAAE,CAAC;QACtB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC,CAAA;QAC/C,IAAI,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAA;QAC3C,GAAG,GAAG,MAAM,CAAA;QACZ,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC,CAAA;IAC1C,IAAI,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IACjC,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ts-register.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ts-register.d.ts","sourceRoot":"","sources":["../../src/config/ts-register.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { register } from 'node:module';
2
+ register('./ts-resolve-hooks.js', import.meta.url);
3
+ //# sourceMappingURL=ts-register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ts-register.js","sourceRoot":"","sources":["../../src/config/ts-register.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA"}
@@ -0,0 +1,10 @@
1
+ export declare function resolve(specifier: string, context: {
2
+ parentURL?: string;
3
+ }, nextResolve: (specifier: string, context: {
4
+ parentURL?: string;
5
+ }) => {
6
+ url: string;
7
+ }): {
8
+ url: string;
9
+ };
10
+ //# sourceMappingURL=ts-resolve-hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ts-resolve-hooks.d.ts","sourceRoot":"","sources":["../../src/config/ts-resolve-hooks.ts"],"names":[],"mappings":"AACA,wBAAgB,OAAO,CACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,EAC/B,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,KAAK;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GACnF;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAUjB"}
@@ -0,0 +1,14 @@
1
+ // ESM loader hooks — runs in a separate thread, must be self-contained
2
+ export function resolve(specifier, context, nextResolve) {
3
+ if (specifier.endsWith('.js') && !(context.parentURL ?? '').includes('/node_modules/')) {
4
+ const tsSpecifier = specifier.slice(0, -3) + '.ts';
5
+ try {
6
+ return nextResolve(tsSpecifier, context);
7
+ }
8
+ catch {
9
+ return nextResolve(specifier, context);
10
+ }
11
+ }
12
+ return nextResolve(specifier, context);
13
+ }
14
+ //# sourceMappingURL=ts-resolve-hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ts-resolve-hooks.js","sourceRoot":"","sources":["../../src/config/ts-resolve-hooks.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,MAAM,UAAU,OAAO,CACrB,SAAiB,EACjB,OAA+B,EAC/B,WAAoF;IAEpF,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACvF,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;QAClD,IAAI,CAAC;YACH,OAAO,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACxC,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AACxC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pipework",
3
- "version": "0.7.10",
3
+ "version": "0.7.11",
4
4
  "description": "TypeScript framework for multi-tenant SaaS applications. PostgreSQL-only.",
5
5
  "type": "module",
6
6
  "license": "MIT",