@elaraai/e3 1.0.68 → 1.0.70

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.
@@ -70,6 +70,26 @@ export declare function runnerToVariant(r: Runner): RunnerValue;
70
70
  * this function only produces what goes ahead of those.
71
71
  */
72
72
  export declare function runnerToCommand(r: Runner): string[];
73
+ /**
74
+ * The stock platform packages that implement ONE platform contract per
75
+ * runtime. An imported function (#628) whose platform dependency is
76
+ * provided by `east-py-std` runs unchanged on an east-node runner listing
77
+ * `@elaraai/east-node-std`: the compliance suites pin that each family
78
+ * implements the same functions on every runtime. A custom package name
79
+ * must match exactly.
80
+ */
81
+ export declare const STOCK_PLATFORM_FAMILIES: ReadonlyArray<ReadonlyArray<string>>;
82
+ /**
83
+ * Whether a runner's platform packages include `provider`, or a stock
84
+ * package of `provider`'s family. A `custom` runner is an arbitrary command
85
+ * that cannot be inspected and is trusted.
86
+ *
87
+ * @param runner - The consuming task's runner
88
+ * @param provider - The package an imported function's manifest names as
89
+ * implementing a platform dependency
90
+ * @returns Whether the runner provides it
91
+ */
92
+ export declare function runnerProvides(runner: Runner, provider: string): boolean;
73
93
  /**
74
94
  * Default runner when `e3.task(..., { runner })` is omitted.
75
95
  *
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAsBH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,gEAAgE;AAChE,MAAM,MAAM,cAAc,GACtB,aAAa,GACb,YAAY,GACZ,qBAAqB,CAAC;AAE1B,kEAAkE;AAClE,MAAM,MAAM,gBAAgB,GACxB,wBAAwB,GACxB,uBAAuB,CAAC;AAE5B,+DAA+D;AAC/D,MAAM,MAAM,aAAa,GACrB,YAAY,CAAC;AAEjB;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,CAAC,KAAK,SAAS,MAAM,IAAI,KAAK,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExE,yEAAyE;AACzE,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AAE/B;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,MAAM,GACd;IAAE,OAAO,EAAE,SAAS,CAAC;IAAG,SAAS,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAA;CAAE,GAChE;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAA;CAAE,GAClE;IAAE,OAAO,EAAE,QAAQ,CAAC;IAAI,SAAS,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAA;CAAE,GAC/D;IAAE,OAAO,EAAE,QAAQ,CAAC;IAAI,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;CAAE,CAAC;AAExD;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW,CAatD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAQnD;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,EAAE,MAG5B,CAAC"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAsBH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,gEAAgE;AAChE,MAAM,MAAM,cAAc,GACtB,aAAa,GACb,YAAY,GACZ,qBAAqB,CAAC;AAE1B,kEAAkE;AAClE,MAAM,MAAM,gBAAgB,GACxB,wBAAwB,GACxB,uBAAuB,CAAC;AAE5B,+DAA+D;AAC/D,MAAM,MAAM,aAAa,GACrB,YAAY,CAAC;AAEjB;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,CAAC,KAAK,SAAS,MAAM,IAAI,KAAK,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExE,yEAAyE;AACzE,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AAE/B;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,MAAM,GACd;IAAE,OAAO,EAAE,SAAS,CAAC;IAAG,SAAS,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAA;CAAE,GAChE;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAA;CAAE,GAClE;IAAE,OAAO,EAAE,QAAQ,CAAC;IAAI,SAAS,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAA;CAAE,GAC/D;IAAE,OAAO,EAAE,QAAQ,CAAC;IAAI,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;CAAE,CAAC;AAExD;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW,CAatD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAQnD;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,CAIxE,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAMxE;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,EAAE,MAG5B,CAAC"}
@@ -54,6 +54,38 @@ export function runnerToCommand(r) {
54
54
  }
55
55
  return [r.runtime, 'run', ...flags];
56
56
  }
57
+ /**
58
+ * The stock platform packages that implement ONE platform contract per
59
+ * runtime. An imported function (#628) whose platform dependency is
60
+ * provided by `east-py-std` runs unchanged on an east-node runner listing
61
+ * `@elaraai/east-node-std`: the compliance suites pin that each family
62
+ * implements the same functions on every runtime. A custom package name
63
+ * must match exactly.
64
+ */
65
+ export const STOCK_PLATFORM_FAMILIES = [
66
+ ['east-py-std', '@elaraai/east-node-std', 'east-c-std'],
67
+ ['east-py-io', '@elaraai/east-node-io'],
68
+ ['east-py-datascience'],
69
+ ];
70
+ /**
71
+ * Whether a runner's platform packages include `provider`, or a stock
72
+ * package of `provider`'s family. A `custom` runner is an arbitrary command
73
+ * that cannot be inspected and is trusted.
74
+ *
75
+ * @param runner - The consuming task's runner
76
+ * @param provider - The package an imported function's manifest names as
77
+ * implementing a platform dependency
78
+ * @returns Whether the runner provides it
79
+ */
80
+ export function runnerProvides(runner, provider) {
81
+ if (runner.runtime === 'custom')
82
+ return true;
83
+ const names = (runner.platforms ?? []).map((p) => (typeof p === 'string' ? p : p.custom));
84
+ if (names.includes(provider))
85
+ return true;
86
+ const family = STOCK_PLATFORM_FAMILIES.find((f) => f.includes(provider));
87
+ return family !== undefined && names.some((n) => family.includes(n));
88
+ }
57
89
  /**
58
90
  * Default runner when `e3.task(..., { runner })` is omitted.
59
91
  *
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AA8DxC;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,CAAS;IACvC,4EAA4E;IAC5E,4EAA4E;IAC5E,wBAAwB;IACxB,IAAI,CAAC,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACzF,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;QAClB,KAAK,WAAW,CAAC,CAAC,OAAO,OAAO,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;QAC7D,KAAK,SAAS,CAAC,CAAG,OAAO,OAAO,CAAC,SAAS,EAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QAC7D,KAAK,QAAQ,CAAC,CAAI,OAAO,OAAO,CAAC,QAAQ,EAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,CAAS;IACvC,IAAI,CAAC,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC;IACpC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,cAAc,GAAW;IACpC,OAAO,EAAE,WAAW;IACpB,SAAS,EAAE,CAAC,wBAAwB,CAAC;CACtC,CAAC"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elaraai/e3",
3
- "version": "1.0.68",
3
+ "version": "1.0.70",
4
4
  "description": "TypeScript SDK for authoring e3 packages",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",
@@ -19,10 +19,10 @@
19
19
  "dependencies": {
20
20
  "smol-toml": "^1.3.1",
21
21
  "yazl": "^2.5.1",
22
- "@elaraai/e3-types": "1.0.68"
22
+ "@elaraai/e3-types": "1.0.70"
23
23
  },
24
24
  "peerDependencies": {
25
- "@elaraai/east": "1.0.68"
25
+ "@elaraai/east": "1.0.70"
26
26
  },
27
27
  "devDependencies": {
28
28
  "@types/node": "^22.10.1",