ingestron 0.17.1 → 0.17.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/CHANGELOG.md +6 -0
- package/THIRD_PARTY_NOTICES.md +1 -1
- package/build/cli/cli/output.js +18 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.17.2
|
|
4
|
+
|
|
5
|
+
- Pin core 0.12.8. `ingestron check` lists data products with status and owner
|
|
6
|
+
from ODCS contracts, and notes quality rules recorded but not yet enforced.
|
|
7
|
+
An active contract must name an owner.
|
|
8
|
+
|
|
3
9
|
## 0.17.1
|
|
4
10
|
|
|
5
11
|
- Add `adf` and `databricks` official provider names, resolving to the public
|
package/THIRD_PARTY_NOTICES.md
CHANGED
package/build/cli/cli/output.js
CHANGED
|
@@ -27,6 +27,22 @@ export function exitCode(result) {
|
|
|
27
27
|
return 2;
|
|
28
28
|
}
|
|
29
29
|
const clean = (value) => String(value).replace(/[\u0000-\u001f\u007f-\u009f]/g, " ");
|
|
30
|
+
// Data product ownership from ODCS contracts; absent with older core versions.
|
|
31
|
+
function dataProductLines(products) {
|
|
32
|
+
if (!Array.isArray(products) || !products.length)
|
|
33
|
+
return "";
|
|
34
|
+
const shown = products.slice(0, 20).map((p) => {
|
|
35
|
+
const owners = Array.isArray(p.owners) ? p.owners.map(clean) : [];
|
|
36
|
+
return `\n ${clean(p.contract)} ${clean(p.status ?? "no status")} ${owners.length ? `owner ${owners.join(", ")}` : "no owner"}`;
|
|
37
|
+
});
|
|
38
|
+
const recorded = products.reduce((n, p) => n + Math.max(0, (p.qualityRules ?? 0) - (p.enforcedQualityRules ?? 0)), 0);
|
|
39
|
+
return ("\nData products:" +
|
|
40
|
+
shown.join("") +
|
|
41
|
+
(products.length > 20 ? `\n … ${products.length - 20} more` : "") +
|
|
42
|
+
(recorded
|
|
43
|
+
? `\n${recorded} quality rule(s) are recorded in contracts but not yet enforced.`
|
|
44
|
+
: ""));
|
|
45
|
+
}
|
|
30
46
|
function pluginLabel(reference) {
|
|
31
47
|
for (const [name, entry] of Object.entries(officialPlugins)) {
|
|
32
48
|
const prefixes = [
|
|
@@ -105,7 +121,8 @@ export function terminal(result, verbose = false, args = {}) {
|
|
|
105
121
|
case "validate":
|
|
106
122
|
return value.mode === "draft"
|
|
107
123
|
? `Draft configuration checked (${value.flows} flows).\n${value.pending.length} unresolved inputs. Strict build readiness has not been checked.`
|
|
108
|
-
: `Project checks passed${value.nodes === undefined ? "" : ` (${value.nodes} planned nodes)`}.\nValidation is local; no platform connection was tested
|
|
124
|
+
: `Project checks passed${value.nodes === undefined ? "" : ` (${value.nodes} planned nodes)`}.\nValidation is local; no platform connection was tested.` +
|
|
125
|
+
dataProductLines(value.dataProducts);
|
|
109
126
|
case "doctor":
|
|
110
127
|
return `Project ${clean(value.project)} (${clean(value.environment)})\n${value.pending.length} unresolved inputs.\n${clean(value.platformAccess)}\nNext: ${clean(value.next)}`;
|
|
111
128
|
case "runtime_prepare":
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ingestron",
|
|
3
|
-
"version": "0.17.
|
|
3
|
+
"version": "0.17.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Build repeatable data pipelines from reviewed contracts and versioned standards.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@clack/prompts": "1.7.0",
|
|
27
|
-
"@ingestron/core": "0.12.
|
|
27
|
+
"@ingestron/core": "0.12.8",
|
|
28
28
|
"@modelcontextprotocol/sdk": "1.30.0",
|
|
29
29
|
"commander": "15.0.0",
|
|
30
30
|
"yaml": "2.9.0"
|