sdkproof 0.1.1 → 0.1.3
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/dist/drift.d.ts +7 -1
- package/dist/drift.js +15 -4
- package/dist/drift.js.map +1 -1
- package/dist/report.js +3 -0
- package/dist/report.js.map +1 -1
- package/dist/surface.d.ts +43 -3
- package/dist/surface.js +298 -25
- package/dist/surface.js.map +1 -1
- package/package.json +1 -1
package/dist/drift.d.ts
CHANGED
|
@@ -64,6 +64,12 @@ export interface DriftReport {
|
|
|
64
64
|
*/
|
|
65
65
|
readable: boolean;
|
|
66
66
|
unreadableReason?: string;
|
|
67
|
+
/**
|
|
68
|
+
* Where the declarations were read from, when that is not the package itself
|
|
69
|
+
* — `@types/express@4.17.23` and the like. Worth saying out loud: the diff is
|
|
70
|
+
* then of what DefinitelyTyped publishes, which can lag the package.
|
|
71
|
+
*/
|
|
72
|
+
typesFrom?: string;
|
|
67
73
|
}
|
|
68
74
|
export interface DriftOptions {
|
|
69
75
|
/** explicit lower version; defaults to the top of the previous major line */
|
|
@@ -73,7 +79,7 @@ export interface DriftOptions {
|
|
|
73
79
|
}
|
|
74
80
|
export declare function computeDrift(p: Packument, opts?: DriftOptions): Promise<DriftReport>;
|
|
75
81
|
/** What one surface lost relative to another. Split out so it can be tested without the network. */
|
|
76
|
-
export declare function diffSurfaces(a: Surface, b: Surface, oldReadme: string): Pick<DriftReport, "mode" | "fromCount" | "toCount" | "removed" | "withoutRunway" | "removedFromEntry" | "documentedRemovals" | "valueRemovals" | "readable" | "unreadableReason">;
|
|
82
|
+
export declare function diffSurfaces(a: Surface, b: Surface, oldReadme: string): Pick<DriftReport, "mode" | "fromCount" | "toCount" | "removed" | "withoutRunway" | "removedFromEntry" | "documentedRemovals" | "valueRemovals" | "readable" | "unreadableReason" | "typesFrom">;
|
|
77
83
|
/**
|
|
78
84
|
* The list worth showing a human, sharpest first: exports the old README
|
|
79
85
|
* documented, else everything that left the entrypoint, else the wide diff.
|
package/dist/drift.js
CHANGED
|
@@ -40,17 +40,24 @@ export function diffSurfaces(a, b, oldReadme) {
|
|
|
40
40
|
// A package with fewer than five readable exports either has almost no API or
|
|
41
41
|
// is not declaring it in a form this reader understands. Either way a diff
|
|
42
42
|
// against it is not evidence.
|
|
43
|
+
// Both sides must come from the same place. A package that started shipping
|
|
44
|
+
// its own declarations mid-diff would otherwise read as a total rewrite of
|
|
45
|
+
// its API, when all that changed is who publishes the types.
|
|
46
|
+
const movedHome = a.typesFrom !== b.typesFrom && !sameOwner(a.typesFrom, b.typesFrom);
|
|
43
47
|
const thin = Math.min(fromSyms.size, toSyms.size) < 5;
|
|
44
48
|
const ambient = /declare\s+module\s+["'`]/.test(a.sources.join("\n").slice(0, 200_000));
|
|
45
|
-
const readable = !thin;
|
|
49
|
+
const readable = !thin && !movedHome;
|
|
46
50
|
const unreadableReason = readable
|
|
47
51
|
? undefined
|
|
48
|
-
:
|
|
49
|
-
?
|
|
50
|
-
:
|
|
52
|
+
: movedHome
|
|
53
|
+
? `the two versions publish their declarations in different places (${a.typesFrom} and ${b.typesFrom}), so a diff would compare two different documents`
|
|
54
|
+
: ambient
|
|
55
|
+
? "its declarations are an ambient `declare module` block rather than ES exports, which this diff cannot read"
|
|
56
|
+
: "too few exported symbols were readable from its .d.ts files to make a diff meaningful";
|
|
51
57
|
return {
|
|
52
58
|
readable,
|
|
53
59
|
...(unreadableReason ? { unreadableReason } : {}),
|
|
60
|
+
...(a.typesFrom.startsWith("@types/") ? { typesFrom: a.typesFrom } : {}),
|
|
54
61
|
mode: widen ? "all-dts" : "entry-only",
|
|
55
62
|
fromCount: fromSyms.size,
|
|
56
63
|
toCount: toSyms.size,
|
|
@@ -61,6 +68,10 @@ export function diffSurfaces(a, b, oldReadme) {
|
|
|
61
68
|
valueRemovals,
|
|
62
69
|
};
|
|
63
70
|
}
|
|
71
|
+
/** `@types/express@4.17.23` and `@types/express@5.0.0` are the same publisher. */
|
|
72
|
+
function sameOwner(a, b) {
|
|
73
|
+
return a.split("@").slice(0, -1).join("@") === b.split("@").slice(0, -1).join("@");
|
|
74
|
+
}
|
|
64
75
|
/**
|
|
65
76
|
* The list worth showing a human, sharpest first: exports the old README
|
|
66
77
|
* documented, else everything that left the entrypoint, else the wide diff.
|
package/dist/drift.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drift.js","sourceRoot":"","sources":["../src/drift.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAkB,MAAM,eAAe,CAAC;AACpG,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAgB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"drift.js","sourceRoot":"","sources":["../src/drift.ts"],"names":[],"mappings":"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"}
|
package/dist/report.js
CHANGED
|
@@ -195,6 +195,9 @@ export function renderDrift(d, verdict) {
|
|
|
195
195
|
out.push(BAR);
|
|
196
196
|
out.push("");
|
|
197
197
|
out.push(` v${d.to.major} landed ${d.majorAgeMonths.toFixed(0)} months ago`);
|
|
198
|
+
if (d.typesFrom) {
|
|
199
|
+
out.push(` Declarations read from ${d.typesFrom.replace(/@[^@]*$/, "")} — ${d.package} publishes none itself`);
|
|
200
|
+
}
|
|
198
201
|
if (!d.readable) {
|
|
199
202
|
out.push("");
|
|
200
203
|
out.push(` CANNOT READ THIS PACKAGE — ${d.unreadableReason}.`);
|
package/dist/report.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.js","sourceRoot":"","sources":["../src/report.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"report.js","sourceRoot":"","sources":["../src/report.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAoB,MAAM,YAAY,CAAC;AAWhF,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE3B,SAAS,iBAAiB,CAAC,CAAU;IACnC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,GAAe;IACvD,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;IACzD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,6EAA6E;IAC7E,4EAA4E;IAC5E,gCAAgC;IAChC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO,MAAM,MAAM,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,mBAAmB,CAAC,CAAC;IACrG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEd,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,MAAM,6BAA6B,GAAG,EAAE,CAAC,CAAC;QAChF,GAAG,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;QAChF,GAAG,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;IACnF,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;QACrE,MAAM,CAAC,GAAG,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAChE,GAAG,CAAC,IAAI,CACN,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG;YACrF,cAAc,CAAC,CAAC,WAAW,CAAC,GAAG,aAAa,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,CAC/E,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CACN,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,OAAO,oCAAoC;gBAChE,GAAG,CAAC,CAAC,aAAa,CAAC,GAAG,uBAAuB,CAChD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACzB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;YAC9D,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/E,IAAI,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9D,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAClC,IAAI,KAAK,GAAG,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,mBAAmB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YAClF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;IACH,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;QAC1E,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IAED,IAAI,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;QAC7B,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC/B,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;YAClC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;QACvD,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,IAAI,GAAG,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACjC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;QACpB,GAAG,CAAC,IAAI,CACN,qBAAqB,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI;YACrD,GAAG,QAAQ,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC,EAAE,CAC5C,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1G,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IAED,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAChC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,+CAA+C,CAAC,CAAC;QAC1F,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACvF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;IACzE,GAAG,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;IAC1D,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC;AAED,sFAAsF;AACtF,SAAS,WAAW,CAAC,CAAS;IAC5B,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS,EAAE,CAAS;IACpC,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;AACrD,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,GAAe;IACvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAEnD,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,WAAW,KAAK,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAClE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,CAAC,gJAAgJ,CAAC,CAAC;IAC7J,KAAK,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,iDAAiD,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IACxK,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CACR,wBAAwB,CAAC,CAAC,IAAI,CAAC,MAAM,+BAA+B,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;YAC3H,6GAA6G;YAC7G,0GAA0G,CAC7G,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,mBAAmB,CAAC,CAAC;IACvG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CACR,6EAA6E;QAC3E,iFAAiF;QACjF,kCAAkC,CACrC,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IAClF,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;QACrE,MAAM,CAAC,GAAG,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAChE,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,WAAW,CAAC,GAAG,MAAM,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM;YAC1E,GAAG,CAAC,CAAC,aAAa,CAAC,GAAG,MAAM,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,KAAK,MAAM,OAAO,IAAI,GAAG,IAAI,CAClH,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;YAC9D,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,IAAI,IAAI,EAAE,CAAC;gBACT,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC/B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjB,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBACrC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,WAAW,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC;YACrE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7B,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,OAAO,CAAC,MAAM,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QACnI,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC;QACxB,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,MAAM,KAAK,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAClC,KAAK,CAAC,IAAI,CACR,eAAe,CAAC,CAAC,IAAI,CAAC,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,OAAO,OAAO,KAAK,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC,IAAI;YAChG,IAAI,CAAC,CAAC,gBAAgB,CAAC,MAAM,gCAAgC,CAAC,CAAC,OAAO,CAAC,MAAM,8BAA8B,CAAC,CAAC,IAAI,WAAW,CAC/H,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9C,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,IAAI,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CACR,eAAe,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO,WAAW,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;YACtF,uDAAuD,CAC1D,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,gEAAgE,GAAG,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC;IACrG,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,WAAW,CAAC,CAAc,EAAE,OAA2C;IACrF,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACrC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACnE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,WAAW,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IAC9E,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,OAAO,wBAAwB,CAAC,CAAC;IAClH,CAAC;IACD,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAChE,GAAG,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QAC7E,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/C,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,wBAAwB,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC;IAChF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,GAAG,CAAC,IAAI,CAAC,gBAAgB,QAAQ,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACpE,GAAG,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,IAAI,CAAC,KAAK,oBAAoB,CAAC,CAAC;QACjF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACzE,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE;YAAE,GAAG,CAAC,IAAI,CAAC,WAAW,QAAQ,CAAC,MAAM,GAAG,EAAE,OAAO,CAAC,CAAC;QAC3E,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IACD,MAAM,eAAe,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9E,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC;QAC3B,GAAG,CAAC,IAAI,CAAC,qCAAqC,eAAe,CAAC,MAAM,iCAAiC,CAAC,CAAC;QACvG,GAAG,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxH,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,CAAC,gBAAgB,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IACzD,IAAI,CAAC,CAAC,kBAAkB,CAAC,MAAM,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QAC5C,GAAG,CAAC,IAAI,CACN,MAAM,CAAC,CAAC,gBAAgB,CAAC,MAAM,6CAA6C;YAC1E,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,UAAU,CAAC,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,GAAG;YAC5G,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,mEAAmE,CACtF,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;SAAM,IAAI,CAAC,CAAC,aAAa,CAAC,MAAM,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,IAAI,CACN,MAAM,IAAI,4EAA4E;YACpF,mEAAmE,CACtE,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;SAAM,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;QACtF,GAAG,CAAC,IAAI,CACN,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,oEAAoE;YAC9F,GAAG,CAAC,CAAC,gBAAgB,CAAC,MAAM,qEAAqE,CACpG,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,mBAAmB,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3F,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,IAAI,OAAO,CAAC,KAAK;QAAE,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAClE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC"}
|
package/dist/surface.d.ts
CHANGED
|
@@ -37,8 +37,45 @@ export interface Surface {
|
|
|
37
37
|
unresolved: string[];
|
|
38
38
|
/** the README that shipped in this version's tarball, "" if it ships none */
|
|
39
39
|
readme: string;
|
|
40
|
+
/**
|
|
41
|
+
* Where the declarations came from: the package itself, or the
|
|
42
|
+
* DefinitelyTyped package that publishes them on its behalf.
|
|
43
|
+
*
|
|
44
|
+
* express, react, lodash and plenty of others ship no types at all — the
|
|
45
|
+
* types are a separate npm package with its own versions. Reading only the
|
|
46
|
+
* package's own tarball reports every one of them as unscorable, which is
|
|
47
|
+
* true of the tarball and useless to the reader.
|
|
48
|
+
*/
|
|
49
|
+
typesFrom: string;
|
|
40
50
|
}
|
|
41
|
-
|
|
51
|
+
/**
|
|
52
|
+
* The root entry of an `exports` field, whichever of its two shapes is used:
|
|
53
|
+
* the subpath map keyed by "." , or the sugar form where the object itself is
|
|
54
|
+
* the condition map.
|
|
55
|
+
*/
|
|
56
|
+
export declare function subpathRoot(exports: unknown): unknown;
|
|
57
|
+
export declare function symbolsFromSource(source: string): Set<string>;
|
|
58
|
+
/**
|
|
59
|
+
* The members of an ambient declaration — `declare module "x" { ... }` or
|
|
60
|
+
* `declare namespace X { ... }` paired with `export = X`.
|
|
61
|
+
*
|
|
62
|
+
* This is how a large share of the ecosystem still declares itself: every
|
|
63
|
+
* DefinitelyTyped package for a CommonJS library, plus stripe, winston, pino,
|
|
64
|
+
* mongoose and knex among the packages measured. An ES-export reader finds
|
|
65
|
+
* nothing in them, so without this the tool answers "cannot read this package"
|
|
66
|
+
* for one popular package in four.
|
|
67
|
+
*
|
|
68
|
+
* Only the top level of the block counts. Nested namespaces are the library's
|
|
69
|
+
* internal organisation, and counting them makes a rename inside one look like
|
|
70
|
+
* a removal from the public surface.
|
|
71
|
+
*/
|
|
72
|
+
export declare function ambientSymbols(source: string): Set<string>;
|
|
73
|
+
/**
|
|
74
|
+
* Blank out comments and the insides of string and template literals, keeping
|
|
75
|
+
* every character position and newline. What is left has braces that mean what
|
|
76
|
+
* they say, and identifiers still where they were.
|
|
77
|
+
*/
|
|
78
|
+
export declare function sanitize(src: string): string;
|
|
42
79
|
/** Did `sym` carry an @deprecated jsdoc in this package? */
|
|
43
80
|
export declare function isDeprecated(sources: string[], sym: string): boolean;
|
|
44
81
|
export declare function packageFiles(p: Packument, version: string): Promise<Map<string, string>>;
|
|
@@ -61,7 +98,7 @@ export declare function readmeOf(p: Packument, version: string): Promise<string>
|
|
|
61
98
|
* sides of a diff are wrong together, so the removals stay right, but "3
|
|
62
99
|
* exported symbols -> 61" is not a sentence anyone should have to interpret.
|
|
63
100
|
*/
|
|
64
|
-
export declare function surfaceOf(p: Packument, version: string, followDeps?: boolean): Promise<Surface>;
|
|
101
|
+
export declare function surfaceOf(p: Packument, version: string, followDeps?: number | boolean): Promise<Surface>;
|
|
65
102
|
/**
|
|
66
103
|
* Walk the re-export chain from an entry .d.ts and collect every symbol a
|
|
67
104
|
* consumer can import from the package root.
|
|
@@ -72,7 +109,10 @@ export declare function surfaceOf(p: Packument, version: string, followDeps?: bo
|
|
|
72
109
|
* reported so the caller can fall back to scanning every .d.ts instead of
|
|
73
110
|
* silently under-reporting the surface.
|
|
74
111
|
*/
|
|
75
|
-
export declare function resolveExports(files: Map<string, string>, entry: string, maxDepth?: number
|
|
112
|
+
export declare function resolveExports(files: Map<string, string>, entry: string, maxDepth?: number, self?: {
|
|
113
|
+
name: string;
|
|
114
|
+
pkg: Record<string, any>;
|
|
115
|
+
}): {
|
|
76
116
|
symbols: Set<string>;
|
|
77
117
|
unresolved: string[];
|
|
78
118
|
};
|
package/dist/surface.js
CHANGED
|
@@ -1,6 +1,19 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
import { extractTarball, fetchTarball } from "./tarball.js";
|
|
3
3
|
import { fetchPackument, resolveVersion } from "./registry.js";
|
|
4
|
+
/**
|
|
5
|
+
* The root entry of an `exports` field, whichever of its two shapes is used:
|
|
6
|
+
* the subpath map keyed by "." , or the sugar form where the object itself is
|
|
7
|
+
* the condition map.
|
|
8
|
+
*/
|
|
9
|
+
export function subpathRoot(exports) {
|
|
10
|
+
if (!exports || typeof exports !== "object")
|
|
11
|
+
return undefined;
|
|
12
|
+
const keys = Object.keys(exports);
|
|
13
|
+
if (keys.some((k) => k === "." || k.startsWith("./")))
|
|
14
|
+
return exports["."];
|
|
15
|
+
return exports;
|
|
16
|
+
}
|
|
4
17
|
/** Where a package's type entrypoint might be declared, in order of authority. */
|
|
5
18
|
function typeCandidates(pkg) {
|
|
6
19
|
const out = [];
|
|
@@ -10,11 +23,17 @@ function typeCandidates(pkg) {
|
|
|
10
23
|
};
|
|
11
24
|
push(pkg.types);
|
|
12
25
|
push(pkg.typings);
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
26
|
+
// `exports` has two shapes and both are common. The subpath map keys every
|
|
27
|
+
// entry by path (`{".": {...}, "./x": {...}}`), and the sugar form drops the
|
|
28
|
+
// "." and IS the condition map (`{"types": "...", "default": "..."}`). Reading
|
|
29
|
+
// only `exports["."]` misses the sugar entirely — which is how chalk 6, a
|
|
30
|
+
// package that ships a perfectly good index.d.ts, read as untyped.
|
|
31
|
+
const dot = subpathRoot(pkg.exports);
|
|
32
|
+
if (dot && typeof dot === "object") {
|
|
33
|
+
const cond = dot;
|
|
34
|
+
push(cond.types);
|
|
16
35
|
for (const k of ["import", "require", "default", "node"]) {
|
|
17
|
-
const v =
|
|
36
|
+
const v = cond[k];
|
|
18
37
|
if (typeof v === "string" && v.endsWith(".d.ts"))
|
|
19
38
|
push(v);
|
|
20
39
|
else if (v && typeof v === "object")
|
|
@@ -42,11 +61,16 @@ function typeCandidates(pkg) {
|
|
|
42
61
|
for (const v of Object.values(o))
|
|
43
62
|
deep(v, d + 1);
|
|
44
63
|
};
|
|
45
|
-
deep(
|
|
64
|
+
deep(dot);
|
|
46
65
|
out.push("index.d.ts", "dist/index.d.ts", "types/index.d.ts", "lib/index.d.ts", "dist/types/index.d.ts", "dist/development/index.d.ts", "dist/production/index.d.ts", "dist/node/index.d.ts", "dist/index.d.mts", "dist/index.d.cts", "index.d.mts", "types/index.d.mts", "dist/esm/index.d.ts", "build/index.d.ts");
|
|
47
66
|
return [...new Set(out.filter((p) => p && /\.d\.[cm]?ts$/.test(p)))];
|
|
48
67
|
}
|
|
49
|
-
export function symbolsFromSource(
|
|
68
|
+
export function symbolsFromSource(source) {
|
|
69
|
+
// Comments are blanked first. A re-export block can carry a jsdoc per name —
|
|
70
|
+
// graphql 17 does, to mark deprecations — and splitting the raw text on
|
|
71
|
+
// commas then yields "/** @deprecated ... */ valueFromAST", which fails the
|
|
72
|
+
// identifier test and drops a symbol that is exported.
|
|
73
|
+
const src = sanitize(source);
|
|
50
74
|
const out = new Set();
|
|
51
75
|
for (const m of src.matchAll(/export\s*(?:type\s*)?\{([^}]*)\}/gs)) {
|
|
52
76
|
for (let part of m[1].split(",")) {
|
|
@@ -64,6 +88,126 @@ export function symbolsFromSource(src) {
|
|
|
64
88
|
out.add(m[1]);
|
|
65
89
|
return out;
|
|
66
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* The members of an ambient declaration — `declare module "x" { ... }` or
|
|
93
|
+
* `declare namespace X { ... }` paired with `export = X`.
|
|
94
|
+
*
|
|
95
|
+
* This is how a large share of the ecosystem still declares itself: every
|
|
96
|
+
* DefinitelyTyped package for a CommonJS library, plus stripe, winston, pino,
|
|
97
|
+
* mongoose and knex among the packages measured. An ES-export reader finds
|
|
98
|
+
* nothing in them, so without this the tool answers "cannot read this package"
|
|
99
|
+
* for one popular package in four.
|
|
100
|
+
*
|
|
101
|
+
* Only the top level of the block counts. Nested namespaces are the library's
|
|
102
|
+
* internal organisation, and counting them makes a rename inside one look like
|
|
103
|
+
* a removal from the public surface.
|
|
104
|
+
*/
|
|
105
|
+
export function ambientSymbols(source) {
|
|
106
|
+
// Brace counting has to happen on text where a brace is a brace. Joi ships
|
|
107
|
+
// the same 82KB of declarations in v17 and v18; the raw scanner read 98
|
|
108
|
+
// symbols from one and 20 from the other, because a brace inside a string or
|
|
109
|
+
// a jsdoc example desynchronised the depth and closed the block early.
|
|
110
|
+
const src = sanitize(source);
|
|
111
|
+
const out = new Set();
|
|
112
|
+
const OPEN = /declare\s+(?:module\s+["'`][^"'`]+["'`]|namespace\s+[A-Za-z_$][\w$.]*)\s*\{/g;
|
|
113
|
+
const DECL = /^\s*(?:export\s+)?(?:declare\s+)?(?:abstract\s+)?(?:interface|type|class|function|const|let|var|enum|namespace)\s+([A-Za-z_$][\w$]*)/;
|
|
114
|
+
for (const open of src.matchAll(OPEN)) {
|
|
115
|
+
// Brace-match the block so a nested `{` cannot end it early.
|
|
116
|
+
let depth = 1;
|
|
117
|
+
let i = open.index + open[0].length;
|
|
118
|
+
const start = i;
|
|
119
|
+
for (; i < src.length && depth > 0; i++) {
|
|
120
|
+
if (src[i] === "{")
|
|
121
|
+
depth++;
|
|
122
|
+
else if (src[i] === "}")
|
|
123
|
+
depth--;
|
|
124
|
+
}
|
|
125
|
+
const body = src.slice(start, i - 1);
|
|
126
|
+
for (const name of topLevelDecls(body))
|
|
127
|
+
out.add(name);
|
|
128
|
+
}
|
|
129
|
+
// `declare module "stripe" { namespace Stripe { ... } }` puts the entire API
|
|
130
|
+
// one level further in. A block whose only member is a namespace is a
|
|
131
|
+
// container, so read what it contains instead of reporting one symbol.
|
|
132
|
+
if (out.size === 1) {
|
|
133
|
+
const only = [...out][0];
|
|
134
|
+
const inner = new RegExp(`namespace\\s+${only}\\b[^{]*\\{`).exec(src);
|
|
135
|
+
if (inner) {
|
|
136
|
+
let depth = 1;
|
|
137
|
+
let i = inner.index + inner[0].length;
|
|
138
|
+
const start = i;
|
|
139
|
+
for (; i < src.length && depth > 0; i++) {
|
|
140
|
+
if (src[i] === "{")
|
|
141
|
+
depth++;
|
|
142
|
+
else if (src[i] === "}")
|
|
143
|
+
depth--;
|
|
144
|
+
}
|
|
145
|
+
for (const name of topLevelDecls(src.slice(start, i - 1)))
|
|
146
|
+
out.add(name);
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
return out;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Blank out comments and the insides of string and template literals, keeping
|
|
153
|
+
* every character position and newline. What is left has braces that mean what
|
|
154
|
+
* they say, and identifiers still where they were.
|
|
155
|
+
*/
|
|
156
|
+
export function sanitize(src) {
|
|
157
|
+
const out = src.split("");
|
|
158
|
+
const blank = (from, to) => {
|
|
159
|
+
for (let i = from; i < to && i < out.length; i++)
|
|
160
|
+
if (out[i] !== "\n")
|
|
161
|
+
out[i] = " ";
|
|
162
|
+
};
|
|
163
|
+
for (let i = 0; i < src.length; i++) {
|
|
164
|
+
const c = src[i];
|
|
165
|
+
const next = src[i + 1];
|
|
166
|
+
if (c === "/" && next === "/") {
|
|
167
|
+
const end = src.indexOf("\n", i);
|
|
168
|
+
blank(i, end === -1 ? src.length : end);
|
|
169
|
+
i = end === -1 ? src.length : end;
|
|
170
|
+
}
|
|
171
|
+
else if (c === "/" && next === "*") {
|
|
172
|
+
const end = src.indexOf("*/", i + 2);
|
|
173
|
+
blank(i, end === -1 ? src.length : end + 2);
|
|
174
|
+
i = end === -1 ? src.length : end + 1;
|
|
175
|
+
}
|
|
176
|
+
else if (c === '"' || c === "'" || c === "`") {
|
|
177
|
+
let j = i + 1;
|
|
178
|
+
while (j < src.length && src[j] !== c) {
|
|
179
|
+
if (src[j] === "\\")
|
|
180
|
+
j++;
|
|
181
|
+
j++;
|
|
182
|
+
}
|
|
183
|
+
blank(i + 1, j);
|
|
184
|
+
i = j;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
return out.join("");
|
|
188
|
+
}
|
|
189
|
+
/** Declarations at the top level of a block body, ignoring anything nested. */
|
|
190
|
+
function topLevelDecls(body) {
|
|
191
|
+
const DECL = /^\s*(?:export\s+)?(?:declare\s+)?(?:abstract\s+)?(?:interface|type|class|function|const|let|var|enum|namespace)\s+([A-Za-z_$][\w$]*)/;
|
|
192
|
+
const names = [];
|
|
193
|
+
let d = 0;
|
|
194
|
+
for (const line of body.split("\n")) {
|
|
195
|
+
if (d === 0) {
|
|
196
|
+
const m = DECL.exec(line);
|
|
197
|
+
if (m)
|
|
198
|
+
names.push(m[1]);
|
|
199
|
+
}
|
|
200
|
+
for (const ch of line) {
|
|
201
|
+
if (ch === "{")
|
|
202
|
+
d++;
|
|
203
|
+
else if (ch === "}")
|
|
204
|
+
d--;
|
|
205
|
+
}
|
|
206
|
+
if (d < 0)
|
|
207
|
+
d = 0;
|
|
208
|
+
}
|
|
209
|
+
return names;
|
|
210
|
+
}
|
|
67
211
|
/** Did `sym` carry an @deprecated jsdoc in this package? */
|
|
68
212
|
export function isDeprecated(sources, sym) {
|
|
69
213
|
const decl = new RegExp(`(?:interface|type|declare\\s+(?:const|function|class|abstract\\s+class|enum)|class|function|const|enum)\\s+${sym}\\b`);
|
|
@@ -128,7 +272,58 @@ export async function readmeOf(p, version) {
|
|
|
128
272
|
* sides of a diff are wrong together, so the removals stay right, but "3
|
|
129
273
|
* exported symbols -> 61" is not a sentence anyone should have to interpret.
|
|
130
274
|
*/
|
|
131
|
-
export async function surfaceOf(p, version, followDeps =
|
|
275
|
+
export async function surfaceOf(p, version, followDeps = 2) {
|
|
276
|
+
const hops = followDeps === true ? 2 : followDeps === false ? 0 : followDeps;
|
|
277
|
+
try {
|
|
278
|
+
return await readSurface(p, version, hops, p.name);
|
|
279
|
+
}
|
|
280
|
+
catch (err) {
|
|
281
|
+
if (!(err instanceof NoTypeEntrypoint))
|
|
282
|
+
throw err;
|
|
283
|
+
// The package publishes no declarations of its own. DefinitelyTyped is
|
|
284
|
+
// where they live for that whole family of packages, and it is what a
|
|
285
|
+
// TypeScript user installs, so it is the surface worth diffing.
|
|
286
|
+
const types = await typesPackageFor(p.name, version).catch(() => null);
|
|
287
|
+
if (!types)
|
|
288
|
+
throw untyped(p.name, version);
|
|
289
|
+
try {
|
|
290
|
+
const s = await readSurface(types.packument, types.version, hops, types.packument.name);
|
|
291
|
+
return { ...s, typesFrom: `${types.packument.name}@${types.version}` };
|
|
292
|
+
}
|
|
293
|
+
catch {
|
|
294
|
+
// A @types stub that carries nothing is not an answer either. Report the
|
|
295
|
+
// package the caller actually asked about.
|
|
296
|
+
throw untyped(p.name, version);
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
/** Thrown when a tarball carries no declarations we can point at. */
|
|
301
|
+
class NoTypeEntrypoint extends Error {
|
|
302
|
+
}
|
|
303
|
+
function untyped(name, version) {
|
|
304
|
+
return new Error(`${name}@${version} ships no TypeScript declarations, and neither does its @types package. ` +
|
|
305
|
+
`There is nothing for tsc to check an answer against.`);
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* The DefinitelyTyped package for `name`, at the version whose major matches
|
|
309
|
+
* the package's. `@types/*` tracks the package's major by convention
|
|
310
|
+
* (@types/express 4.x for express 4.x), so that is the pairing to use; if the
|
|
311
|
+
* major is not published there, the latest is closer than nothing.
|
|
312
|
+
*/
|
|
313
|
+
async function typesPackageFor(name, version) {
|
|
314
|
+
const typesName = name.startsWith("@")
|
|
315
|
+
? `@types/${name.slice(1).replace("/", "__")}`
|
|
316
|
+
: `@types/${name}`;
|
|
317
|
+
const packument = await fetchPackument(typesName);
|
|
318
|
+
const major = version.split(".")[0];
|
|
319
|
+
try {
|
|
320
|
+
return { packument, version: resolveVersion(packument, major) };
|
|
321
|
+
}
|
|
322
|
+
catch {
|
|
323
|
+
return { packument, version: resolveVersion(packument) };
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
async function readSurface(p, version, hops, label) {
|
|
132
327
|
const files = await packageFiles(p, version);
|
|
133
328
|
let pkg = {};
|
|
134
329
|
try {
|
|
@@ -139,30 +334,55 @@ export async function surfaceOf(p, version, followDeps = true) {
|
|
|
139
334
|
}
|
|
140
335
|
const dts = [...files.entries()].filter(([rel]) => /\.d\.[cm]?ts$/.test(rel));
|
|
141
336
|
const sources = dts.map(([, src]) => src);
|
|
337
|
+
// Every declared candidate is tried and the richest surface wins, rather than
|
|
338
|
+
// the first that happens to exist. A package that ships both `index.d.ts` and
|
|
339
|
+
// `index.d.mts` does not always put the same thing in them, and picking a
|
|
340
|
+
// different one for each side of a diff reports the difference between two
|
|
341
|
+
// files as a change to the API. valibot and date-fns both did that.
|
|
142
342
|
let entry = "";
|
|
143
343
|
let entrySrc = "";
|
|
344
|
+
let best = null;
|
|
345
|
+
const self = { name: p.name, pkg };
|
|
144
346
|
for (const c of typeCandidates(pkg)) {
|
|
145
347
|
const src = files.get(c);
|
|
146
|
-
if (src
|
|
348
|
+
if (src === undefined)
|
|
349
|
+
continue;
|
|
350
|
+
const got = resolveExports(files, c, 12, self);
|
|
351
|
+
const richer = !best || got.symbols.size > best.symbols.size;
|
|
352
|
+
if (richer) {
|
|
353
|
+
best = got;
|
|
147
354
|
entry = c;
|
|
148
355
|
entrySrc = src;
|
|
149
|
-
break;
|
|
150
356
|
}
|
|
151
357
|
}
|
|
152
|
-
if (!entry)
|
|
153
|
-
throw new
|
|
154
|
-
}
|
|
155
|
-
const { symbols: entryOnly, unresolved } = resolveExports(files, entry);
|
|
358
|
+
if (!entry || !best)
|
|
359
|
+
throw new NoTypeEntrypoint(`${p.name}@${version} ships no type entrypoint`);
|
|
360
|
+
const { symbols: entryOnly, unresolved } = best;
|
|
156
361
|
const widened = new Set(entryOnly);
|
|
157
|
-
for (const s of sources)
|
|
362
|
+
for (const s of sources) {
|
|
158
363
|
for (const x of symbolsFromSource(s))
|
|
159
364
|
widened.add(x);
|
|
365
|
+
for (const x of ambientSymbols(s))
|
|
366
|
+
widened.add(x);
|
|
367
|
+
}
|
|
368
|
+
// A file can carry both kinds of declaration, so both are read, always. Doing
|
|
369
|
+
// it only when the ES surface looked thin made the reader sensitive to things
|
|
370
|
+
// it has no business caring about: joi 17 and joi 18 are the same 82KB
|
|
371
|
+
// `declare namespace Joi` with different indentation, and they extracted 98
|
|
372
|
+
// symbols and 20.
|
|
373
|
+
for (const x of ambientSymbols(entrySrc))
|
|
374
|
+
entryOnly.add(x);
|
|
375
|
+
if (entryOnly.size < 5) {
|
|
376
|
+
for (const src of sources)
|
|
377
|
+
for (const x of ambientSymbols(src))
|
|
378
|
+
entryOnly.add(x);
|
|
379
|
+
}
|
|
160
380
|
// Cross the package boundary once, for an `export *` that points at a
|
|
161
381
|
// dependency this package declares. Anything else stays unresolved.
|
|
162
382
|
const stillUnresolved = [];
|
|
163
|
-
if (
|
|
383
|
+
if (hops > 0) {
|
|
164
384
|
for (const spec of unresolved) {
|
|
165
|
-
const inherited = await surfaceOfDependency(pkg, spec).catch(() => null);
|
|
385
|
+
const inherited = await surfaceOfDependency(pkg, spec, hops - 1).catch(() => null);
|
|
166
386
|
if (!inherited) {
|
|
167
387
|
stillUnresolved.push(spec);
|
|
168
388
|
continue;
|
|
@@ -189,7 +409,10 @@ export async function surfaceOf(p, version, followDeps = true) {
|
|
|
189
409
|
break;
|
|
190
410
|
}
|
|
191
411
|
}
|
|
192
|
-
return {
|
|
412
|
+
return {
|
|
413
|
+
entryOnly, widened, needsWiden, sources, entry,
|
|
414
|
+
unresolved: stillUnresolved, readme, typesFrom: label,
|
|
415
|
+
};
|
|
193
416
|
}
|
|
194
417
|
/**
|
|
195
418
|
* Read the surface of a package this one depends on, at the version the
|
|
@@ -197,7 +420,7 @@ export async function surfaceOf(p, version, followDeps = true) {
|
|
|
197
420
|
* caret or tilde range falls back to the highest stable release of that major,
|
|
198
421
|
* and anything else (`workspace:*`, a git url) is left unresolved.
|
|
199
422
|
*/
|
|
200
|
-
async function surfaceOfDependency(pkg, spec) {
|
|
423
|
+
async function surfaceOfDependency(pkg, spec, hops) {
|
|
201
424
|
const range = pkg.dependencies?.[spec] ?? pkg.peerDependencies?.[spec] ?? pkg.optionalDependencies?.[spec];
|
|
202
425
|
if (!range)
|
|
203
426
|
return null;
|
|
@@ -206,12 +429,19 @@ async function surfaceOfDependency(pkg, spec) {
|
|
|
206
429
|
return null;
|
|
207
430
|
const dep = await fetchPackument(spec);
|
|
208
431
|
const version = dep.versions[bare] ? bare : resolveVersion(dep, bare.split(".")[0]);
|
|
209
|
-
//
|
|
210
|
-
//
|
|
211
|
-
|
|
432
|
+
// Bounded, because a chain is real — vue re-exports @vue/runtime-dom, which
|
|
433
|
+
// re-exports @vue/runtime-core — but an unbounded one turns a drift check
|
|
434
|
+
// into a crawl of the dependency tree.
|
|
435
|
+
return surfaceOf(dep, version, hops);
|
|
212
436
|
}
|
|
213
|
-
/**
|
|
214
|
-
|
|
437
|
+
/**
|
|
438
|
+
* `export * from "spec"`, and the type-only form of it.
|
|
439
|
+
*
|
|
440
|
+
* `export type * from "./types.js"` is how got 15 re-exports most of its
|
|
441
|
+
* surface. Without the `type` alternative the walk skipped that line and 26 of
|
|
442
|
+
* the 29 symbols it then reported as removed were still importable.
|
|
443
|
+
*/
|
|
444
|
+
const REEXPORT_ALL = /export\s+(?:type\s+)?\*\s+(?:as\s+[A-Za-z_$][\w$]*\s+)?from\s*["'`]([^"'`]+)["'`]/g;
|
|
215
445
|
/**
|
|
216
446
|
* Walk the re-export chain from an entry .d.ts and collect every symbol a
|
|
217
447
|
* consumer can import from the package root.
|
|
@@ -222,7 +452,7 @@ const REEXPORT_ALL = /export\s+\*\s+from\s*["'`]([^"'`]+)["'`]/g;
|
|
|
222
452
|
* reported so the caller can fall back to scanning every .d.ts instead of
|
|
223
453
|
* silently under-reporting the surface.
|
|
224
454
|
*/
|
|
225
|
-
export function resolveExports(files, entry, maxDepth = 12) {
|
|
455
|
+
export function resolveExports(files, entry, maxDepth = 12, self) {
|
|
226
456
|
const symbols = new Set();
|
|
227
457
|
const unresolved = [];
|
|
228
458
|
const seen = new Set();
|
|
@@ -238,6 +468,15 @@ export function resolveExports(files, entry, maxDepth = 12) {
|
|
|
238
468
|
for (const m of src.matchAll(REEXPORT_ALL)) {
|
|
239
469
|
const spec = m[1];
|
|
240
470
|
if (!spec.startsWith(".")) {
|
|
471
|
+
// A package re-exporting its own subpath — `export * from "zustand/vanilla"`
|
|
472
|
+
// — is not a dependency, it is this tarball. Resolve it through the
|
|
473
|
+
// package's own exports map. zustand and jotai are both built this way,
|
|
474
|
+
// and treating it as unresolved reported their whole surface as removed.
|
|
475
|
+
const own = self && selfSubpath(files, self.name, self.pkg, spec);
|
|
476
|
+
if (own) {
|
|
477
|
+
walk(own, depth + 1);
|
|
478
|
+
continue;
|
|
479
|
+
}
|
|
241
480
|
unresolved.push(spec);
|
|
242
481
|
continue;
|
|
243
482
|
}
|
|
@@ -251,11 +490,45 @@ export function resolveExports(files, entry, maxDepth = 12) {
|
|
|
251
490
|
walk(entry, 0);
|
|
252
491
|
return { symbols, unresolved: [...new Set(unresolved)] };
|
|
253
492
|
}
|
|
493
|
+
/**
|
|
494
|
+
* Resolve `pkg/sub` against the package's own `exports` map, returning the
|
|
495
|
+
* .d.ts inside this tarball that the subpath points at.
|
|
496
|
+
*/
|
|
497
|
+
function selfSubpath(files, name, pkg, spec) {
|
|
498
|
+
if (spec !== name && !spec.startsWith(`${name}/`))
|
|
499
|
+
return null;
|
|
500
|
+
const sub = spec === name ? "." : `./${spec.slice(name.length + 1)}`;
|
|
501
|
+
const entry = pkg.exports?.[sub];
|
|
502
|
+
const candidates = [];
|
|
503
|
+
const collect = (o, d = 0) => {
|
|
504
|
+
if (d > 3 || !o)
|
|
505
|
+
return;
|
|
506
|
+
if (typeof o === "string")
|
|
507
|
+
candidates.push(o.replace(/^\.\//, ""));
|
|
508
|
+
else if (typeof o === "object")
|
|
509
|
+
for (const v of Object.values(o))
|
|
510
|
+
collect(v, d + 1);
|
|
511
|
+
};
|
|
512
|
+
collect(entry);
|
|
513
|
+
for (const c of candidates) {
|
|
514
|
+
const stem = c.replace(/\.(js|mjs|cjs|ts|d\.ts|d\.mts|d\.cts)$/, "");
|
|
515
|
+
for (const guess of [c, `${stem}.d.ts`, `${stem}.d.mts`, `${stem}.d.cts`, `${stem}/index.d.ts`]) {
|
|
516
|
+
if (files.has(guess) && /\.d\.[cm]?ts$/.test(guess))
|
|
517
|
+
return guess;
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
// No exports map, or nothing typed in it: fall back to the conventional path.
|
|
521
|
+
const guess = spec === name ? "index.d.ts" : `${spec.slice(name.length + 1)}.d.ts`;
|
|
522
|
+
return files.has(guess) ? guess : null;
|
|
523
|
+
}
|
|
254
524
|
/** Map a relative specifier onto a .d.ts path inside the tarball. */
|
|
255
525
|
function resolveRelativeDts(files, dir, spec) {
|
|
256
526
|
const base = path.posix.normalize(path.posix.join(dir, spec)).replace(/^\.\//, "");
|
|
257
527
|
// `export * from "./core.js"` is how an ESM-correct .d.ts names its sibling.
|
|
258
|
-
|
|
528
|
+
// `.ts` is in the list because date-fns v4's barrel is `export * from "./add.ts"`.
|
|
529
|
+
// Missing it left the entry resolving to nothing, so v4 read as 1 symbol
|
|
530
|
+
// against v3's 300 and every export looked removed.
|
|
531
|
+
const stem = base.replace(/\.(js|mjs|cjs|ts|d\.ts|d\.mts|d\.cts)$/, "");
|
|
259
532
|
for (const c of [
|
|
260
533
|
base,
|
|
261
534
|
`${stem}.d.ts`, `${stem}.d.mts`, `${stem}.d.cts`,
|
package/dist/surface.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../src/surface.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,cAAc,EAAoC,MAAM,eAAe,CAAC;AA2CjG,kFAAkF;AAClF,SAAS,cAAc,CAAC,GAAwB;IAC9C,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,CAAC,CAAU,EAAE,EAAE;QAC1B,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChB,KAAK,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;YACzD,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,IAAI,CAAC,CAAC,CAAC,CAAC;iBACrD,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;gBAAE,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IACD,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,WAAW;IACX,KAAK,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;QAClD,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,SAAS;QACpC,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;QACnE,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,OAAO,EAAE,GAAG,IAAI,QAAQ,EAAE,GAAG,IAAI,QAAQ,CAAC,CAAC;IAC7D,CAAC;IACD,2EAA2E;IAC3E,MAAM,IAAI,GAAG,CAAC,CAAU,EAAE,CAAC,GAAG,CAAC,EAAQ,EAAE;QACvC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAAE,OAAO;QACxB,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1C,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAW,CAAC;gBAAE,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxF,CAAC,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,GAAG,CAAC,IAAI,CACN,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,gBAAgB,EACrE,uBAAuB,EAAE,6BAA6B,EAAE,4BAA4B,EACpF,sBAAsB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAC7E,mBAAmB,EAAE,qBAAqB,EAAE,kBAAkB,CAC/D,CAAC;IACF,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC3C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,oCAAoC,CAAC,EAAE,CAAC;QACnE,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAC3C,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,EAAG,CAAC,IAAI,EAAE,CAAC;YAC/C,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;gBAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAC1B,2HAA2H,CAC5H;QAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAC1B,8FAA8F,CAC/F;QAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,YAAY,CAAC,OAAiB,EAAE,GAAW;IACzD,MAAM,IAAI,GAAG,IAAI,MAAM,CACrB,8GAA8G,GAAG,KAAK,CACvH,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAAE,SAAS;YACnC,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3D,uEAAuE;YACvE,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,GAAG,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;YAC7F,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;QAC3C,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,YAAY,GAAG,IAAI,GAAG,EAA+B,CAAC;AAE5D,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,CAAY,EAAE,OAAe;IAC9D,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;IACnC,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC;IACpB,MAAM,IAAI,GAA4B,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,GAAG,GAAG,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC;IAChC,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,iCAAiC,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,cAAc,CAC1B,MAAM,YAAY,CAAC,GAAG,CAAC,EACvB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,cAAc,IAAI,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,CACjG,CAAC;IACF,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7B,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,CAAY,EAAE,OAAe;IAC1D,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7C,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,KAAK;QAAE,IAAI,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC;IACjF,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,CAAY,EAAE,OAAe,EAAE,UAAU,GAAG,IAAI;IAC9E,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAE7C,IAAI,GAAG,GAAwB,EAAE,CAAC;IAClC,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,CAAC;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,gFAAgF;IAClF,CAAC;IAED,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAE1C,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,KAAK,GAAG,CAAC,CAAC;YACV,QAAQ,GAAG,GAAG,CAAC;YACf,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,GAAG,CAAC,CAAC,IAAI,IAAI,OAAO,qFAAqF,CAC1G,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IACnC,KAAK,MAAM,CAAC,IAAI,OAAO;QAAE,KAAK,MAAM,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAE9E,sEAAsE;IACtE,oEAAoE;IACpE,MAAM,eAAe,GAAa,EAAE,CAAC;IACrC,IAAI,UAAU,EAAE,CAAC;QACf,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YACzE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3B,SAAS;YACX,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;gBACpC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,SAAS,CAAC,OAAO;gBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;SAAM,CAAC;QACN,eAAe,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;IACtC,CAAC;IACD,8EAA8E;IAC9E,sEAAsE;IACtE,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;IACpE,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,KAAK,EAAE,CAAC;QAC/B,IAAI,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,CAAC;YACb,MAAM;QACR,CAAC;IACH,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC;AACjG,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,mBAAmB,CAAC,GAAwB,EAAE,IAAY;IACvE,MAAM,KAAK,GACT,GAAG,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC;IAC/F,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IACxD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpF,6EAA6E;IAC7E,yCAAyC;IACzC,OAAO,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AACxC,CAAC;AAED,gFAAgF;AAChF,MAAM,YAAY,GAAG,2CAA2C,CAAC;AAEjE;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAC5B,KAA0B,EAC1B,KAAa,EACb,QAAQ,GAAG,EAAE;IAEb,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,KAAa,EAAQ,EAAE;QAChD,IAAI,KAAK,GAAG,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO;QAC9C,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO;QAC9B,KAAK,MAAM,CAAC,IAAI,iBAAiB,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACvD,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtB,SAAS;YACX,CAAC;YACD,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;YACxE,IAAI,MAAM;gBAAE,IAAI,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;;gBAC/B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACf,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;AAC3D,CAAC;AAED,qEAAqE;AACrE,SAAS,kBAAkB,CAAC,KAA0B,EAAE,GAAW,EAAE,IAAY;IAC/E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACnF,6EAA6E;IAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,qCAAqC,EAAE,EAAE,CAAC,CAAC;IACrE,KAAK,MAAM,CAAC,IAAI;QACd,IAAI;QACJ,GAAG,IAAI,OAAO,EAAE,GAAG,IAAI,QAAQ,EAAE,GAAG,IAAI,QAAQ;QAChD,GAAG,IAAI,aAAa,EAAE,GAAG,IAAI,cAAc,EAAE,GAAG,IAAI,cAAc;KACnE,EAAE,CAAC;QACF,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,OAAiB,EAAE,GAAW;IAC1D,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,IAAI,MAAM,CACtB,gFAAgF,OAAO,KAAK,CAC7F,CAAC;IACF,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAChD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,CAAS;IACpC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACtF,CAAC"}
|
|
1
|
+
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../src/surface.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sdkproof",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Score how often an AI model writes library code that does not compile. Give it a package name, it writes real tasks, compiles every answer against the real installed package with tsc, and reports what broke.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|