@jhlagado/azm 0.2.11 → 0.2.13
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/src/api-compile.d.ts +7 -1
- package/dist/src/api-compile.js +17 -5
- package/dist/src/api-register-contracts.js +69 -2
- package/dist/src/api-tooling.d.ts +1 -1
- package/dist/src/assembly/import-visibility.js +108 -33
- package/dist/src/cli/artifact-files.d.ts +1 -0
- package/dist/src/cli/artifact-files.js +5 -0
- package/dist/src/cli/parse-args.d.ts +6 -1
- package/dist/src/cli/parse-args.js +59 -0
- package/dist/src/cli/run.js +2 -2
- package/dist/src/cli/usage.js +5 -0
- package/dist/src/cli/write-artifacts.d.ts +1 -1
- package/dist/src/cli/write-artifacts.js +15 -2
- package/dist/src/core/compile.js +1 -0
- package/dist/src/expansion/op-expand-selected.js +8 -1
- package/dist/src/expansion/op-expansion.d.ts +3 -0
- package/dist/src/expansion/op-expansion.js +12 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/node/source-host.js +5 -2
- package/dist/src/outputs/types.d.ts +13 -1
- package/dist/src/register-contracts/analyze-helpers.d.ts +6 -1
- package/dist/src/register-contracts/analyze-helpers.js +67 -0
- package/dist/src/register-contracts/analyze.d.ts +8 -1
- package/dist/src/register-contracts/analyze.js +353 -16
- package/dist/src/register-contracts/interfaceContracts.js +45 -0
- package/dist/src/register-contracts/liveness.js +23 -0
- package/dist/src/register-contracts/policy.d.ts +2 -0
- package/dist/src/register-contracts/policy.js +54 -0
- package/dist/src/register-contracts/programModel-boundaries.d.ts +5 -1
- package/dist/src/register-contracts/programModel-boundaries.js +20 -5
- package/dist/src/register-contracts/programModel-routines.js +37 -6
- package/dist/src/register-contracts/ratchet.d.ts +3 -0
- package/dist/src/register-contracts/ratchet.js +88 -0
- package/dist/src/register-contracts/report.d.ts +8 -1
- package/dist/src/register-contracts/report.js +174 -0
- package/dist/src/register-contracts/smartCommentParsing.js +22 -0
- package/dist/src/register-contracts/summary-boundary.js +9 -2
- package/dist/src/register-contracts/tooling.d.ts +2 -1
- package/dist/src/register-contracts/tooling.js +2 -0
- package/dist/src/register-contracts/types.d.ts +157 -0
- package/dist/src/source/logical-lines.d.ts +1 -0
- package/dist/src/source/source-span.d.ts +1 -0
- package/dist/src/syntax/parse-layout-declarations.js +1 -0
- package/dist/src/syntax/parse-line.js +4 -0
- package/docs/codebase/02-source-loading-and-parsing.md +10 -6
- package/docs/codebase/04-ops-and-register-contracts.md +49 -4
- package/docs/codebase/05-interfaces-and-output-artifacts.md +56 -6
- package/docs/codebase/06-verification-and-maintenance.md +10 -2
- package/docs/codebase/appendices/a-directory-file-reference.md +3 -1
- package/docs/codebase/appendices/b-compile-flow-reference.md +7 -5
- package/docs/codebase/appendices/c-public-surface-reference.md +19 -5
- package/package.json +1 -1
|
@@ -44,6 +44,16 @@ want one import path.
|
|
|
44
44
|
Use this path for build tools, Debug80 integration and scripts that need bytes
|
|
45
45
|
or artifacts.
|
|
46
46
|
|
|
47
|
+
Compile consumers should treat these register-contract options as public when
|
|
48
|
+
they use that subsystem:
|
|
49
|
+
|
|
50
|
+
- `registerContractsPolicy`
|
|
51
|
+
- `registerContractsReportFormat`
|
|
52
|
+
- `registerContractsBaseline`
|
|
53
|
+
- `registerContractsRatchet`
|
|
54
|
+
- `emitRegisterInference`
|
|
55
|
+
- `registerContractsInferenceFormat`
|
|
56
|
+
|
|
47
57
|
## Tooling Exports
|
|
48
58
|
|
|
49
59
|
`@jhlagado/azm/tooling` exposes:
|
|
@@ -62,9 +72,10 @@ Use this path for editors, linters and language tooling.
|
|
|
62
72
|
`analyzeRegisterCareForTools` remains as a deprecated compatibility export.
|
|
63
73
|
|
|
64
74
|
Tooling consumers should treat parsed item spans as provenance-bearing data.
|
|
65
|
-
When present, `sourceUnit` names the owning source unit
|
|
66
|
-
records whether
|
|
67
|
-
`
|
|
75
|
+
When present, `sourceUnit` names the owning source unit, `sourceRelation`
|
|
76
|
+
records whether the physical file edge was `entry`, `include` or `import`, and
|
|
77
|
+
`sourceUnitRelation` records whether the owning unit entered the load through
|
|
78
|
+
`entry` or `import`.
|
|
68
79
|
|
|
69
80
|
## CLI Export
|
|
70
81
|
|
|
@@ -95,12 +106,15 @@ Treat these as public contracts:
|
|
|
95
106
|
- `D8mSymbol`
|
|
96
107
|
- `LoadedProgramNext`
|
|
97
108
|
- `AnalyzeProgramNextResult`
|
|
109
|
+
- `RegisterContractsFinding`
|
|
110
|
+
- `RegisterContractsFindingKind`
|
|
111
|
+
- `RegisterContractsInferenceModel`
|
|
98
112
|
- `RegisterContractsCandidateDiagnostic`
|
|
99
113
|
- `RegisterContractsCodeAction`
|
|
100
114
|
|
|
101
115
|
For tooling consumers, this contract also includes the optional
|
|
102
|
-
`SourceSpan.sourceUnit
|
|
103
|
-
items.
|
|
116
|
+
`SourceSpan.sourceUnit`, `SourceSpan.sourceRelation` and
|
|
117
|
+
`SourceSpan.sourceUnitRelation` fields carried on parsed items.
|
|
104
118
|
|
|
105
119
|
When these shapes change, update package tests, TypeScript type tests, README
|
|
106
120
|
examples, repo-local reference docs and this manual.
|