@ingestron/core 0.12.1 → 0.12.2
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/THIRD_PARTY_NOTICES.md +2 -2
- package/dist/compiler-fingerprint.json +6 -6
- package/dist/core/connections.js +2 -0
- package/dist/core/operations.d.ts +4 -0
- package/dist/core/operations.js +1 -0
- package/dist/core/packages.d.ts +1 -0
- package/dist/core/packages.js +9 -1
- package/package.json +17 -14
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -640,7 +640,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
|
640
640
|
THE SOFTWARE.
|
|
641
641
|
```
|
|
642
642
|
|
|
643
|
-
### yaml@2.9.
|
|
643
|
+
### yaml@2.9.1
|
|
644
644
|
|
|
645
645
|
Declared licence: ISC
|
|
646
646
|
|
|
@@ -662,7 +662,7 @@ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
|
|
|
662
662
|
THIS SOFTWARE.
|
|
663
663
|
```
|
|
664
664
|
|
|
665
|
-
### zod@4.5
|
|
665
|
+
### zod@4.6.5
|
|
666
666
|
|
|
667
667
|
Declared licence: MIT
|
|
668
668
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"dist/assets/schemas/provenance.json": "4b5eb1fd89b81223f7946113b651d5a3a18adaa28948e43c3615dd851fb6844e",
|
|
6
6
|
"dist/core/authoring.js": "43025703f23b61090d1ea6912e387e5ed74a93568f068339f9a7ecae88795a51",
|
|
7
7
|
"dist/core/config.js": "b7e7138f7cc4a7b4ec8f6d0f0616c8802f2d802ec29aa09b40c1fc5c9324e016",
|
|
8
|
-
"dist/core/connections.js": "
|
|
8
|
+
"dist/core/connections.js": "504bbacd422fd0f6ef64a229f5255b377f5393a41f6366674fc5e8854a26b1d8",
|
|
9
9
|
"dist/core/connector-package.js": "c1d39fce629a524fa199ed5d0dffe6a36c500e1018fbb8379d700330372b46a7",
|
|
10
10
|
"dist/core/contracts.js": "a1b7fd28f776117cca86a25c6c70e852ff57ffea2bb9e7accbf2d583948d9dde",
|
|
11
11
|
"dist/core/deliveries.js": "a4d2cb1213bc4c02cffb962dcb943ba98e261d37cfb21041948ec637599db080",
|
|
@@ -21,9 +21,9 @@
|
|
|
21
21
|
"dist/core/installed-plugins.js": "817ed411aef6f5b966a1828893081406805d2c8764d2ca20fd7e250e8a2168a8",
|
|
22
22
|
"dist/core/model-pack-schema.js": "e3eb7ff33ddc652643e3f896637de0034004cd0cf26b0e296a074f830ae0b870",
|
|
23
23
|
"dist/core/model-packs.js": "fee776ea0804dc66c9f140e57d94a3922d69c52d03c72079842ec43417616b0d",
|
|
24
|
-
"dist/core/operations.js": "
|
|
24
|
+
"dist/core/operations.js": "7f4a9eeee19d3e1e4c1beecc0350e38d386f012edfb31c3248efcd22ebd40a77",
|
|
25
25
|
"dist/core/package-references.js": "bd3085eb6dcdac399d79af109d0a9e710a0532eba61e5298dc842aec9c7ef10a",
|
|
26
|
-
"dist/core/packages.js": "
|
|
26
|
+
"dist/core/packages.js": "e30654122516573c1d8adf40f8a9e76acb54de090016751929dde679e4d1175b",
|
|
27
27
|
"dist/core/planner.js": "f91902f4c37a7588965360fcddbda79301b59a0b66ef2f70c0378fa5dfcc7088",
|
|
28
28
|
"dist/core/project-build.js": "1f1002b4f6c506986c5aa6a5bb01ad5f3b4658a7a1319b65d79eaa67916fb994",
|
|
29
29
|
"dist/core/provider-commands.js": "8bd82821f6ed0eefce8216e7c03c271f28cb9f4bfda7724d5c1de6be1855e535",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"sources": {
|
|
45
45
|
"src/core/authoring.ts": "fe80e823cfb82b39894aac9c5f733d489241b4a22bed278079254acff45a0aca",
|
|
46
46
|
"src/core/config.ts": "f282eb246438608e1951556dfeab9372daf65330a15a9d159d36d1f940370344",
|
|
47
|
-
"src/core/connections.ts": "
|
|
47
|
+
"src/core/connections.ts": "84f5fb5522480b4c6cb9c90fcde65b5f8bf3db888352d0561b83dabad8ec2952",
|
|
48
48
|
"src/core/connector-package.ts": "f302432c3954a6230ddf02e3ae796c0a641e52984c0db3bfbfc10b3d5539e49e",
|
|
49
49
|
"src/core/contracts.ts": "b7445086085b17d5ae8d5a7f4e2e849f286948e1a2a146ceb79660846e8616e5",
|
|
50
50
|
"src/core/deliveries.ts": "6be0a7059c057420ba22a5515703164a892fac9e79a5bdb0e0871ea0b92ddd15",
|
|
@@ -60,9 +60,9 @@
|
|
|
60
60
|
"src/core/installed-plugins.ts": "951d15cdd8ca4a2c7d97fb01a46838822fe1b2fcf083ff8cf4bdca20d0997a2d",
|
|
61
61
|
"src/core/model-pack-schema.ts": "bc9b30ab257fd25766cba63aa2fb6891c05e4b3eccf56d820caaab2dcc4147b4",
|
|
62
62
|
"src/core/model-packs.ts": "a110d319f6feeff22a2d0d3a99ce5e49e56817d0cc27ab77d831d04a945ddfd3",
|
|
63
|
-
"src/core/operations.ts": "
|
|
63
|
+
"src/core/operations.ts": "e0a5a0e869e96de4e869f89e0fd794cb9fa537a16fb1f37fd8cf2b7ca777c08d",
|
|
64
64
|
"src/core/package-references.ts": "5c5cee7e140158928e2e5a37f426520c7c2f042546a37eed4507d79326181f5a",
|
|
65
|
-
"src/core/packages.ts": "
|
|
65
|
+
"src/core/packages.ts": "afe307b5b8058a0dfd3bef76475b32f00be7d5a5b69e73b6c0fcc557aa528d8c",
|
|
66
66
|
"src/core/planner.ts": "498f5405f3088ee6d54ec8ab4a458813757697c150a56eab33f547aebb214da1",
|
|
67
67
|
"src/core/project-build.ts": "feb0fe50aff7b1fbdc8d96bcdb177a72a412639d1af98c3cff3b010de90a6428",
|
|
68
68
|
"src/core/provider-commands.ts": "f8a045230f61be0273910276b51e5c2e4bc0659f34c8a9361a38ab292c39eb4c",
|
package/dist/core/connections.js
CHANGED
|
@@ -2,6 +2,7 @@ import { readFileSync } from "node:fs";
|
|
|
2
2
|
import { fence } from "./packages.js";
|
|
3
3
|
import { connectorPackageSchema } from "./connector-package.js";
|
|
4
4
|
import { contractColumns } from "./contracts.js";
|
|
5
|
+
import { resolveModelContracts } from "./model-packs.js";
|
|
5
6
|
/** Project-owned configuration; schemas and runtime assets remain plugin-owned. */
|
|
6
7
|
import { Ajv2020 } from "ajv/dist/2020.js";
|
|
7
8
|
import { Configuration } from "./config.js";
|
|
@@ -24,6 +25,7 @@ export function prepareConnection(root, environment, flowId, validateOnly = fals
|
|
|
24
25
|
check(profile, "ENVIRONMENT", `Unknown environment ${environment}`);
|
|
25
26
|
check(!profile.environment || profile.environment === environment, "ENVIRONMENT", "Environment name differs from selected profile");
|
|
26
27
|
const flows = project.flows.map((f) => reader.parse(flowSchema, f));
|
|
28
|
+
resolveModelContracts(reader, project, flows);
|
|
27
29
|
check(new Set(flows.map((f) => f.id)).size === flows.length, "FLOW", "Duplicate flow IDs");
|
|
28
30
|
const flow = flows.find((f) => f.id === flowId);
|
|
29
31
|
check(flow && flow.kind === "ingestion" && !flow.steps, "FLOW", "Select an ingestion flow");
|
|
@@ -261,6 +261,10 @@ export declare const operationSchemas: {
|
|
|
261
261
|
}, z.core.$strict>;
|
|
262
262
|
readonly packages_install: z.ZodObject<{
|
|
263
263
|
reference: z.ZodString;
|
|
264
|
+
kind: z.ZodOptional<z.ZodEnum<{
|
|
265
|
+
connector: "connector";
|
|
266
|
+
provider: "provider";
|
|
267
|
+
}>>;
|
|
264
268
|
fromGit: z.ZodOptional<z.ZodString>;
|
|
265
269
|
update: z.ZodOptional<z.ZodBoolean>;
|
|
266
270
|
frozen: z.ZodOptional<z.ZodBoolean>;
|
package/dist/core/operations.js
CHANGED
|
@@ -259,6 +259,7 @@ export const operationSchemas = {
|
|
|
259
259
|
packages_install: z
|
|
260
260
|
.object({
|
|
261
261
|
reference: z.string(),
|
|
262
|
+
kind: z.enum(["provider", "connector"]).optional(),
|
|
262
263
|
fromGit: z.string().optional(),
|
|
263
264
|
update: z.boolean().optional(),
|
|
264
265
|
frozen: z.boolean().optional(),
|
package/dist/core/packages.d.ts
CHANGED
package/dist/core/packages.js
CHANGED
|
@@ -388,13 +388,19 @@ export function installPackage(root, reference, options = {}) {
|
|
|
388
388
|
check(!options.frozen || previous, "PACKAGE", "Frozen install requires an existing lock entry");
|
|
389
389
|
if (previous &&
|
|
390
390
|
!options.update &&
|
|
391
|
-
existsSync(resolve(root, `.ingestron/packages/${digest(previous.repository)}/${previous.commit}`)))
|
|
391
|
+
existsSync(resolve(root, `.ingestron/packages/${digest(previous.repository)}/${previous.commit}`))) {
|
|
392
|
+
if (options.kind) {
|
|
393
|
+
const installed = resolvePackage(root, reference);
|
|
394
|
+
const manifest = packageYaml(installed.file);
|
|
395
|
+
check(manifest.apiVersion === `ingestron.${options.kind}/v1`, "PACKAGE", `Expected a ${options.kind} package at ${reference}`);
|
|
396
|
+
}
|
|
392
397
|
return {
|
|
393
398
|
reference,
|
|
394
399
|
...resolvePackage(root, reference).entry,
|
|
395
400
|
cached: true,
|
|
396
401
|
informationFile: savePluginInformation(root, reference),
|
|
397
402
|
};
|
|
403
|
+
}
|
|
398
404
|
const control = fence(root, ".ingestron");
|
|
399
405
|
mkdirSync(control, { recursive: true });
|
|
400
406
|
const guard = resolve(control, "package-install.lock");
|
|
@@ -472,6 +478,8 @@ export function installPackage(root, reference, options = {}) {
|
|
|
472
478
|
files[m[5]] = digest(text);
|
|
473
479
|
}
|
|
474
480
|
const manifest = packageYaml(fence(staged, parsed.path));
|
|
481
|
+
if (options.kind)
|
|
482
|
+
check(manifest.apiVersion === `ingestron.${options.kind}/v1`, "PACKAGE", `Expected a ${options.kind} package at ${reference}`);
|
|
475
483
|
if (manifest.apiVersion === "ingestron.connector/v1") {
|
|
476
484
|
const connector = connectorPackageSchema.parse(manifest);
|
|
477
485
|
check(connector.upstream.licenceStatus === "evidenced", "LICENCE", "Connector licence evidence is missing or conflicting; installation held");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ingestron/core",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Shared Ingestron project compiler, operations and editor schemas",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -34,8 +34,8 @@
|
|
|
34
34
|
"ajv": "8.20.0",
|
|
35
35
|
"ajv-formats": "3.0.1",
|
|
36
36
|
"quickjs-emscripten": "0.32.0",
|
|
37
|
-
"yaml": "2.9.
|
|
38
|
-
"zod": "4.5
|
|
37
|
+
"yaml": "2.9.1",
|
|
38
|
+
"zod": "4.6.5"
|
|
39
39
|
},
|
|
40
40
|
"publishConfig": {
|
|
41
41
|
"access": "public",
|
|
@@ -45,16 +45,6 @@
|
|
|
45
45
|
"type": "git",
|
|
46
46
|
"url": "git+https://github.com/ingestron/core.git"
|
|
47
47
|
},
|
|
48
|
-
"devDependencies": {
|
|
49
|
-
"@types/node": "22.20.1",
|
|
50
|
-
"prettier": "3.9.6",
|
|
51
|
-
"tsx": "4.23.13",
|
|
52
|
-
"typescript": "7.0.2"
|
|
53
|
-
},
|
|
54
|
-
"homepage": "https://ingestron.io",
|
|
55
|
-
"bugs": {
|
|
56
|
-
"url": "https://github.com/ingestron/core/issues"
|
|
57
|
-
},
|
|
58
48
|
"scripts": {
|
|
59
49
|
"build": "node scripts/build-assets.mjs && tsc && node scripts/compiler-fingerprint.mjs",
|
|
60
50
|
"test": "tsx --test --test-concurrency=1 test/unit/*.test.ts test/providers/*.test.ts test/integration/*.test.ts",
|
|
@@ -64,6 +54,19 @@
|
|
|
64
54
|
"release:check": "node scripts/release-check.mjs",
|
|
65
55
|
"package:check": "tsx scripts/package-check.ts",
|
|
66
56
|
"validate": "pnpm format:check && pnpm build && pnpm test && pnpm secrets:check && pnpm release:check && pnpm package:check",
|
|
57
|
+
"prepack": "npm run build",
|
|
58
|
+
"prepublishOnly": "node scripts/release-check.mjs --publish",
|
|
67
59
|
"licences:inventory": "node scripts/licence-inventory.mjs"
|
|
60
|
+
},
|
|
61
|
+
"packageManager": "pnpm@10.15.0",
|
|
62
|
+
"devDependencies": {
|
|
63
|
+
"@types/node": "22.20.1",
|
|
64
|
+
"prettier": "3.9.8",
|
|
65
|
+
"tsx": "4.23.13",
|
|
66
|
+
"typescript": "7.0.2"
|
|
67
|
+
},
|
|
68
|
+
"homepage": "https://ingestron.io",
|
|
69
|
+
"bugs": {
|
|
70
|
+
"url": "https://github.com/ingestron/core/issues"
|
|
68
71
|
}
|
|
69
|
-
}
|
|
72
|
+
}
|