@hominis/fireforge 0.55.0 → 0.60.0
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 +233 -6
- package/README.md +51 -17
- package/dist/bin/fireforge.js +34 -129
- package/dist/build-info.json +4 -4
- package/dist/src/check/check.js +394 -0
- package/dist/src/check/gate.js +448 -0
- package/dist/src/check/index.js +10 -0
- package/dist/src/check/record.js +155 -0
- package/dist/src/cli/command.js +286 -0
- package/dist/src/cli/output.js +96 -0
- package/dist/src/cli/program.js +231 -0
- package/dist/src/cli/stdio.js +59 -0
- package/dist/src/cli/version.js +99 -0
- package/dist/src/commands/bootstrap.js +17 -102
- package/dist/src/commands/build.js +34 -456
- package/dist/src/commands/check.js +44 -157
- package/dist/src/commands/config.js +50 -226
- package/dist/src/commands/discard.js +38 -215
- package/dist/src/commands/doctor.js +29 -456
- package/dist/src/commands/download.js +35 -499
- package/dist/src/commands/export.js +42 -431
- package/dist/src/commands/furnace.js +220 -0
- package/dist/src/commands/gate.js +127 -0
- package/dist/src/commands/import.js +44 -445
- package/dist/src/commands/index.js +86 -0
- package/dist/src/commands/lint.js +44 -546
- package/dist/src/commands/merge-driver.js +56 -0
- package/dist/src/commands/migrate.js +75 -0
- package/dist/src/commands/override.js +43 -0
- package/dist/src/commands/package.js +48 -77
- package/dist/src/commands/patch.js +221 -0
- package/dist/src/commands/re-export.js +55 -359
- package/dist/src/commands/rebase.js +69 -0
- package/dist/src/commands/register.js +62 -103
- package/dist/src/commands/reset.js +28 -91
- package/dist/src/commands/resolve.js +20 -167
- package/dist/src/commands/restore.js +19 -0
- package/dist/src/commands/run.js +60 -382
- package/dist/src/commands/setup.js +78 -90
- package/dist/src/commands/status.js +44 -413
- package/dist/src/commands/test.js +97 -423
- package/dist/src/commands/token.js +185 -228
- package/dist/src/commands/typecheck.js +59 -241
- package/dist/src/commands/verify.js +28 -334
- package/dist/src/commands/version.js +14 -0
- package/dist/src/commands/watch.js +20 -218
- package/dist/src/commands/wire.js +60 -349
- package/dist/src/commands/workspace.js +117 -0
- package/dist/src/config/edit.js +237 -0
- package/dist/src/config/index.js +15 -0
- package/dist/src/config/load.js +59 -0
- package/dist/src/config/previous.js +404 -0
- package/dist/src/config/schema/build.js +63 -0
- package/dist/src/config/schema/check.js +113 -0
- package/dist/src/config/schema/common.js +71 -0
- package/dist/src/config/schema/export-queue.js +36 -0
- package/dist/src/config/schema/firefox.js +69 -0
- package/dist/src/config/schema/gate.js +199 -0
- package/dist/src/config/schema/identity.js +55 -0
- package/dist/src/config/schema/index.js +45 -0
- package/dist/src/config/schema/lint.js +297 -0
- package/dist/src/config/schema/policy.js +111 -0
- package/dist/src/config/schema/source.js +90 -0
- package/dist/src/config/schema/test.js +17 -0
- package/dist/src/config/schema/toolchains.js +17 -0
- package/dist/src/config/schema/typecheck.js +29 -0
- package/dist/src/config/schema/wire.js +15 -0
- package/dist/src/diff/apply.js +129 -0
- package/dist/src/diff/index.js +16 -0
- package/dist/src/diff/model.js +267 -0
- package/dist/src/diff/query.js +65 -0
- package/dist/src/doctor/index.js +240 -0
- package/dist/src/engine/archive.js +396 -0
- package/dist/src/engine/audit.js +66 -0
- package/dist/src/engine/build.js +150 -0
- package/dist/src/engine/hostLocks.js +66 -0
- package/dist/src/engine/index.js +26 -0
- package/dist/src/engine/installManifests.js +147 -0
- package/dist/src/engine/mach.js +97 -0
- package/dist/src/engine/machHints.js +80 -0
- package/dist/src/engine/mozconfig.js +110 -0
- package/dist/src/engine/objdir.js +124 -0
- package/dist/src/engine/package.js +169 -0
- package/dist/src/engine/pin.js +12 -0
- package/dist/src/engine/pool.js +423 -0
- package/dist/src/engine/pristine.js +281 -0
- package/dist/src/engine/python.js +68 -0
- package/dist/src/engine/resourceGuard.js +582 -0
- package/dist/src/engine/run.js +259 -0
- package/dist/src/engine/smoke.js +204 -0
- package/dist/src/engine/staleness.js +229 -0
- package/dist/src/engine/watch.js +82 -0
- package/dist/src/engine/workspace.js +85 -0
- package/dist/src/furnace/config.js +360 -0
- package/dist/src/furnace/deploy.js +414 -0
- package/dist/src/furnace/diff.js +59 -0
- package/dist/src/furnace/edit.js +64 -0
- package/dist/src/furnace/fragments.js +53 -0
- package/dist/src/furnace/index.js +19 -0
- package/dist/src/furnace/operations.js +283 -0
- package/dist/src/furnace/registration.js +220 -0
- package/dist/src/furnace/scaffold.js +311 -0
- package/dist/src/furnace/typing.js +252 -0
- package/dist/src/furnace/validate.js +662 -0
- package/dist/src/git/apply.js +129 -0
- package/dist/src/git/diff.js +143 -0
- package/dist/src/git/index.js +33 -0
- package/dist/src/git/objects.js +201 -0
- package/dist/src/git/refs.js +85 -0
- package/dist/src/git/repo.js +222 -0
- package/dist/src/git/run.js +242 -0
- package/dist/src/git/status.js +156 -0
- package/dist/src/kernel/errors.js +123 -0
- package/dist/src/kernel/fs.js +515 -0
- package/dist/src/kernel/glob.js +63 -0
- package/dist/src/kernel/hash.js +28 -0
- package/dist/src/kernel/journal.js +524 -0
- package/dist/src/kernel/json-edit.js +198 -0
- package/dist/src/kernel/json.js +101 -0
- package/dist/src/kernel/lock.js +589 -0
- package/dist/src/kernel/log.js +154 -0
- package/dist/src/kernel/process/identity.js +313 -0
- package/dist/src/kernel/process/index.js +8 -0
- package/dist/src/kernel/process/listing.js +128 -0
- package/dist/src/kernel/process/spawn.js +430 -0
- package/dist/src/kernel/process/tree.js +301 -0
- package/dist/src/kernel/schema.js +308 -0
- package/dist/src/kernel/signals.js +171 -0
- package/dist/src/kernel/text.js +151 -0
- package/dist/src/kernel/time.js +83 -0
- package/dist/src/kernel/tty.js +84 -0
- package/dist/src/lint/cache.js +77 -0
- package/dist/src/lint/checkjs.js +400 -0
- package/dist/src/lint/index.js +3 -0
- package/dist/src/lint/input.js +100 -0
- package/dist/src/lint/report.js +107 -0
- package/dist/src/lint/rule.js +41 -0
- package/dist/src/lint/rules/css.js +308 -0
- package/dist/src/lint/rules/javascript.js +299 -0
- package/dist/src/lint/rules/jsdoc.js +249 -0
- package/dist/src/lint/rules/license.js +93 -0
- package/dist/src/lint/rules/policy.js +201 -0
- package/dist/src/lint/rules/registration.js +264 -0
- package/dist/src/lint/rules/size.js +299 -0
- package/dist/src/lint/run.js +126 -0
- package/dist/src/lint/shim.js +323 -0
- package/dist/src/lint/typescript.js +186 -0
- package/dist/src/lint/waivers.js +93 -0
- package/dist/src/mode/changes.js +264 -0
- package/dist/src/mode/diagnose.js +173 -0
- package/dist/src/mode/export.js +147 -0
- package/dist/src/mode/index.js +23 -0
- package/dist/src/mode/migrate.js +181 -0
- package/dist/src/mode/previousWaivers.js +206 -0
- package/dist/src/mode/pristine.js +61 -0
- package/dist/src/mode/rebase.js +197 -0
- package/dist/src/mode/report.js +157 -0
- package/dist/src/mode/setup.js +103 -0
- package/dist/src/mode/tracked.js +116 -0
- package/dist/src/mode/upgrade.js +281 -0
- package/dist/src/mode/watch.js +83 -0
- package/dist/src/mode/workspace.js +189 -0
- package/dist/src/mozbuild/index.js +6 -0
- package/dist/src/mozbuild/jar.js +366 -0
- package/dist/src/mozbuild/mozbuild.js +321 -0
- package/dist/src/mozbuild/paths.js +96 -0
- package/dist/src/mozbuild/references.js +39 -0
- package/dist/src/mozbuild/testManifest.js +343 -0
- package/dist/src/mozbuild/text.js +142 -0
- package/dist/src/project/changes.js +145 -0
- package/dist/src/project/checkout.js +66 -0
- package/dist/src/project/index.js +11 -0
- package/dist/src/project/license.js +119 -0
- package/dist/src/project/project.js +111 -0
- package/dist/src/project/state.js +85 -0
- package/dist/src/project/tracked.js +1 -0
- package/dist/src/queue/apply.js +270 -0
- package/dist/src/queue/attribute.js +159 -0
- package/dist/src/queue/baseline.js +409 -0
- package/dist/src/queue/capture.js +298 -0
- package/dist/src/queue/changes.js +234 -0
- package/dist/src/queue/index.js +50 -0
- package/dist/src/queue/manifest.js +341 -0
- package/dist/src/queue/operations.js +454 -0
- package/dist/src/queue/placement.js +220 -0
- package/dist/src/queue/queue.js +359 -0
- package/dist/src/queue/restore.js +103 -0
- package/dist/src/queue/session.js +685 -0
- package/dist/src/queue/status.js +137 -0
- package/dist/src/register/files.js +39 -0
- package/dist/src/register/index.js +8 -0
- package/dist/src/register/js.js +217 -0
- package/dist/src/register/register.js +359 -0
- package/dist/src/register/wire.js +146 -0
- package/dist/src/source/adopt.js +99 -0
- package/dist/src/source/changes.js +132 -0
- package/dist/src/source/edit.js +278 -0
- package/dist/src/source/export.js +70 -0
- package/dist/src/source/groups.js +131 -0
- package/dist/src/source/index.js +20 -0
- package/dist/src/source/materialize.js +382 -0
- package/dist/src/source/merge.js +255 -0
- package/dist/src/source/objects.js +102 -0
- package/dist/src/source/previous.js +166 -0
- package/dist/src/source/records.js +138 -0
- package/dist/src/source/refresh.js +264 -0
- package/dist/src/source/tree.js +337 -0
- package/dist/src/syntax/css.js +215 -0
- package/dist/src/syntax/fragments.js +63 -0
- package/dist/src/syntax/index.js +10 -0
- package/dist/src/syntax/js.js +270 -0
- package/dist/src/test/classify.js +826 -0
- package/dist/src/test/control.js +236 -0
- package/dist/src/test/host.js +266 -0
- package/dist/src/test/index.js +11 -0
- package/dist/src/test/plan.js +347 -0
- package/dist/src/test/rawLog.js +138 -0
- package/dist/src/test/run.js +404 -0
- package/dist/src/test/verdict.js +420 -0
- package/dist/src/test/xpcshell.js +143 -0
- package/dist/src/tokens/add.js +304 -0
- package/dist/src/tokens/coverage.js +65 -0
- package/dist/src/tokens/css.js +58 -0
- package/dist/src/tokens/index.js +12 -0
- package/dist/src/tokens/lint.js +96 -0
- package/dist/src/tokens/model.js +118 -0
- package/dist/src/tokens/settings.js +87 -0
- package/dist/src/tokens/siblings.js +104 -0
- package/dist/src/typecheck/explain.js +123 -0
- package/dist/src/typecheck/index.js +8 -0
- package/dist/src/typecheck/typecheck.js +332 -0
- package/docs/README.md +23 -28
- package/docs/authoring.md +97 -0
- package/docs/configuration.md +307 -766
- package/docs/exit-codes.md +76 -94
- package/docs/furnace.md +111 -221
- package/docs/gate.md +205 -0
- package/docs/getting-started.md +165 -0
- package/docs/machine-output.md +201 -290
- package/docs/migrating.md +261 -0
- package/docs/patch-workflow.md +159 -723
- package/docs/quality.md +220 -0
- package/docs/source-workflow.md +228 -0
- package/docs/testing.md +101 -719
- package/docs/workspaces.md +187 -0
- package/package.json +22 -30
- package/templates/configs/common.mozconfig +8 -2
- package/templates/configs/darwin.mozconfig +6 -7
- package/templates/configs/linux.mozconfig +5 -8
- package/templates/configs/win32.mozconfig +3 -9
- package/dist/bin/fireforge.d.ts +0 -9
- package/dist/src/cli-usage-error.d.ts +0 -46
- package/dist/src/cli-usage-error.js +0 -81
- package/dist/src/cli.d.ts +0 -41
- package/dist/src/cli.js +0 -380
- package/dist/src/commands/bootstrap-checks.d.ts +0 -16
- package/dist/src/commands/bootstrap-checks.js +0 -66
- package/dist/src/commands/bootstrap.d.ts +0 -10
- package/dist/src/commands/build-prelock.d.ts +0 -20
- package/dist/src/commands/build-prelock.js +0 -50
- package/dist/src/commands/build.d.ts +0 -13
- package/dist/src/commands/check-report.d.ts +0 -41
- package/dist/src/commands/check-report.js +0 -98
- package/dist/src/commands/check-run.d.ts +0 -44
- package/dist/src/commands/check-run.js +0 -125
- package/dist/src/commands/check-steps.d.ts +0 -75
- package/dist/src/commands/check-steps.js +0 -200
- package/dist/src/commands/check.d.ts +0 -32
- package/dist/src/commands/config.d.ts +0 -13
- package/dist/src/commands/declarations-report.d.ts +0 -49
- package/dist/src/commands/declarations-report.js +0 -83
- package/dist/src/commands/destructive-decision.d.ts +0 -19
- package/dist/src/commands/destructive-decision.js +0 -31
- package/dist/src/commands/discard.d.ts +0 -12
- package/dist/src/commands/doctor-check-core.d.ts +0 -110
- package/dist/src/commands/doctor-check-core.js +0 -24
- package/dist/src/commands/doctor-engine-eslint.d.ts +0 -3
- package/dist/src/commands/doctor-engine-eslint.js +0 -17
- package/dist/src/commands/doctor-external-toolchains.d.ts +0 -3
- package/dist/src/commands/doctor-external-toolchains.js +0 -56
- package/dist/src/commands/doctor-furnace-config-sync.d.ts +0 -18
- package/dist/src/commands/doctor-furnace-config-sync.js +0 -295
- package/dist/src/commands/doctor-furnace-jar.d.ts +0 -14
- package/dist/src/commands/doctor-furnace-jar.js +0 -44
- package/dist/src/commands/doctor-furnace.d.ts +0 -8
- package/dist/src/commands/doctor-furnace.js +0 -514
- package/dist/src/commands/doctor-macos-sdk.d.ts +0 -8
- package/dist/src/commands/doctor-macos-sdk.js +0 -158
- package/dist/src/commands/doctor-orphaned-harness.d.ts +0 -41
- package/dist/src/commands/doctor-orphaned-harness.js +0 -98
- package/dist/src/commands/doctor-patch-manifest.d.ts +0 -9
- package/dist/src/commands/doctor-patch-manifest.js +0 -156
- package/dist/src/commands/doctor-post-rebase-audit.d.ts +0 -2
- package/dist/src/commands/doctor-post-rebase-audit.js +0 -108
- package/dist/src/commands/doctor-source-pin.d.ts +0 -29
- package/dist/src/commands/doctor-source-pin.js +0 -91
- package/dist/src/commands/doctor-working-tree.d.ts +0 -27
- package/dist/src/commands/doctor-working-tree.js +0 -89
- package/dist/src/commands/doctor.d.ts +0 -49
- package/dist/src/commands/download.d.ts +0 -11
- package/dist/src/commands/export-adopt-check.d.ts +0 -37
- package/dist/src/commands/export-adopt-check.js +0 -97
- package/dist/src/commands/export-all.d.ts +0 -11
- package/dist/src/commands/export-all.js +0 -361
- package/dist/src/commands/export-flow.d.ts +0 -124
- package/dist/src/commands/export-flow.js +0 -423
- package/dist/src/commands/export-placement-conflicts.d.ts +0 -17
- package/dist/src/commands/export-placement-conflicts.js +0 -75
- package/dist/src/commands/export-placement-gate.d.ts +0 -42
- package/dist/src/commands/export-placement-gate.js +0 -107
- package/dist/src/commands/export-placement-policy.d.ts +0 -22
- package/dist/src/commands/export-placement-policy.js +0 -54
- package/dist/src/commands/export-shared.d.ts +0 -152
- package/dist/src/commands/export-shared.js +0 -396
- package/dist/src/commands/export-staged-registration.d.ts +0 -46
- package/dist/src/commands/export-staged-registration.js +0 -91
- package/dist/src/commands/export.d.ts +0 -13
- package/dist/src/commands/forward-import-remedy.d.ts +0 -31
- package/dist/src/commands/forward-import-remedy.js +0 -62
- package/dist/src/commands/furnace/apply.d.ts +0 -8
- package/dist/src/commands/furnace/apply.js +0 -327
- package/dist/src/commands/furnace/authoring-config.d.ts +0 -13
- package/dist/src/commands/furnace/authoring-config.js +0 -19
- package/dist/src/commands/furnace/chrome-doc-remove.d.ts +0 -14
- package/dist/src/commands/furnace/chrome-doc-remove.js +0 -148
- package/dist/src/commands/furnace/chrome-doc-templates.d.ts +0 -152
- package/dist/src/commands/furnace/chrome-doc-templates.js +0 -331
- package/dist/src/commands/furnace/chrome-doc-tests.d.ts +0 -23
- package/dist/src/commands/furnace/chrome-doc-tests.js +0 -148
- package/dist/src/commands/furnace/chrome-doc.d.ts +0 -87
- package/dist/src/commands/furnace/chrome-doc.js +0 -365
- package/dist/src/commands/furnace/create-browser-test.d.ts +0 -44
- package/dist/src/commands/furnace/create-browser-test.js +0 -179
- package/dist/src/commands/furnace/create-dry-run.d.ts +0 -49
- package/dist/src/commands/furnace/create-dry-run.js +0 -107
- package/dist/src/commands/furnace/create-features.d.ts +0 -24
- package/dist/src/commands/furnace/create-features.js +0 -55
- package/dist/src/commands/furnace/create-mochikit.d.ts +0 -29
- package/dist/src/commands/furnace/create-mochikit.js +0 -75
- package/dist/src/commands/furnace/create-readback.d.ts +0 -22
- package/dist/src/commands/furnace/create-readback.js +0 -32
- package/dist/src/commands/furnace/create-templates.d.ts +0 -119
- package/dist/src/commands/furnace/create-templates.js +0 -283
- package/dist/src/commands/furnace/create-validation.d.ts +0 -6
- package/dist/src/commands/furnace/create-validation.js +0 -59
- package/dist/src/commands/furnace/create-xpcshell.d.ts +0 -27
- package/dist/src/commands/furnace/create-xpcshell.js +0 -80
- package/dist/src/commands/furnace/create.d.ts +0 -24
- package/dist/src/commands/furnace/create.js +0 -407
- package/dist/src/commands/furnace/deploy-fragment-includers.d.ts +0 -59
- package/dist/src/commands/furnace/deploy-fragment-includers.js +0 -120
- package/dist/src/commands/furnace/deploy-named.d.ts +0 -48
- package/dist/src/commands/furnace/deploy-named.js +0 -107
- package/dist/src/commands/furnace/deploy.d.ts +0 -9
- package/dist/src/commands/furnace/deploy.js +0 -229
- package/dist/src/commands/furnace/diff.d.ts +0 -11
- package/dist/src/commands/furnace/diff.js +0 -238
- package/dist/src/commands/furnace/index.d.ts +0 -4
- package/dist/src/commands/furnace/index.js +0 -283
- package/dist/src/commands/furnace/init.d.ts +0 -11
- package/dist/src/commands/furnace/init.js +0 -287
- package/dist/src/commands/furnace/list.d.ts +0 -8
- package/dist/src/commands/furnace/list.js +0 -104
- package/dist/src/commands/furnace/override.d.ts +0 -16
- package/dist/src/commands/furnace/override.js +0 -454
- package/dist/src/commands/furnace/preview.d.ts +0 -19
- package/dist/src/commands/furnace/preview.js +0 -349
- package/dist/src/commands/furnace/refresh.d.ts +0 -10
- package/dist/src/commands/furnace/refresh.js +0 -303
- package/dist/src/commands/furnace/remove-mutations.d.ts +0 -36
- package/dist/src/commands/furnace/remove-mutations.js +0 -168
- package/dist/src/commands/furnace/remove-state.d.ts +0 -20
- package/dist/src/commands/furnace/remove-state.js +0 -60
- package/dist/src/commands/furnace/remove.d.ts +0 -8
- package/dist/src/commands/furnace/remove.js +0 -415
- package/dist/src/commands/furnace/rename-browser-test.d.ts +0 -2
- package/dist/src/commands/furnace/rename-browser-test.js +0 -68
- package/dist/src/commands/furnace/rename-dry-run.d.ts +0 -29
- package/dist/src/commands/furnace/rename-dry-run.js +0 -127
- package/dist/src/commands/furnace/rename-helpers.d.ts +0 -26
- package/dist/src/commands/furnace/rename-helpers.js +0 -85
- package/dist/src/commands/furnace/rename-registrations.d.ts +0 -41
- package/dist/src/commands/furnace/rename-registrations.js +0 -98
- package/dist/src/commands/furnace/rename-xpcshell.d.ts +0 -32
- package/dist/src/commands/furnace/rename-xpcshell.js +0 -95
- package/dist/src/commands/furnace/rename.d.ts +0 -6
- package/dist/src/commands/furnace/rename.js +0 -400
- package/dist/src/commands/furnace/scan.d.ts +0 -14
- package/dist/src/commands/furnace/scan.js +0 -192
- package/dist/src/commands/furnace/status.d.ts +0 -7
- package/dist/src/commands/furnace/status.js +0 -209
- package/dist/src/commands/furnace/sync.d.ts +0 -12
- package/dist/src/commands/furnace/sync.js +0 -145
- package/dist/src/commands/furnace/test-file-name.d.ts +0 -28
- package/dist/src/commands/furnace/test-file-name.js +0 -39
- package/dist/src/commands/furnace/validate-report.d.ts +0 -45
- package/dist/src/commands/furnace/validate-report.js +0 -91
- package/dist/src/commands/furnace/validate.d.ts +0 -8
- package/dist/src/commands/furnace/validate.js +0 -309
- package/dist/src/commands/furnace/validation-output.d.ts +0 -47
- package/dist/src/commands/furnace/validation-output.js +0 -161
- package/dist/src/commands/import.d.ts +0 -11
- package/dist/src/commands/lint-per-patch.d.ts +0 -10
- package/dist/src/commands/lint-per-patch.js +0 -428
- package/dist/src/commands/lint-per-run-checkjs.d.ts +0 -66
- package/dist/src/commands/lint-per-run-checkjs.js +0 -102
- package/dist/src/commands/lint-report.d.ts +0 -25
- package/dist/src/commands/lint-report.js +0 -76
- package/dist/src/commands/lint.d.ts +0 -47
- package/dist/src/commands/manifest.d.ts +0 -38
- package/dist/src/commands/manifest.js +0 -68
- package/dist/src/commands/package.d.ts +0 -11
- package/dist/src/commands/park.d.ts +0 -22
- package/dist/src/commands/park.js +0 -232
- package/dist/src/commands/patch/body.d.ts +0 -29
- package/dist/src/commands/patch/body.js +0 -60
- package/dist/src/commands/patch/compact.d.ts +0 -28
- package/dist/src/commands/patch/compact.js +0 -208
- package/dist/src/commands/patch/delete-gap-notice.d.ts +0 -24
- package/dist/src/commands/patch/delete-gap-notice.js +0 -48
- package/dist/src/commands/patch/delete.d.ts +0 -28
- package/dist/src/commands/patch/delete.js +0 -131
- package/dist/src/commands/patch/entry-projection.d.ts +0 -13
- package/dist/src/commands/patch/entry-projection.js +0 -24
- package/dist/src/commands/patch/index.d.ts +0 -16
- package/dist/src/commands/patch/index.js +0 -54
- package/dist/src/commands/patch/lint-ignore-from.d.ts +0 -43
- package/dist/src/commands/patch/lint-ignore-from.js +0 -141
- package/dist/src/commands/patch/lint-ignore.d.ts +0 -42
- package/dist/src/commands/patch/lint-ignore.js +0 -263
- package/dist/src/commands/patch/move-files-adopt.d.ts +0 -33
- package/dist/src/commands/patch/move-files-adopt.js +0 -65
- package/dist/src/commands/patch/move-files-create.d.ts +0 -19
- package/dist/src/commands/patch/move-files-create.js +0 -187
- package/dist/src/commands/patch/move-files-into.d.ts +0 -65
- package/dist/src/commands/patch/move-files-into.js +0 -325
- package/dist/src/commands/patch/move-files-retire.d.ts +0 -39
- package/dist/src/commands/patch/move-files-retire.js +0 -91
- package/dist/src/commands/patch/move-files.d.ts +0 -28
- package/dist/src/commands/patch/move-files.js +0 -224
- package/dist/src/commands/patch/move-size-tier.d.ts +0 -27
- package/dist/src/commands/patch/move-size-tier.js +0 -66
- package/dist/src/commands/patch/patch-context.d.ts +0 -40
- package/dist/src/commands/patch/patch-context.js +0 -51
- package/dist/src/commands/patch/removal-created-files.d.ts +0 -48
- package/dist/src/commands/patch/removal-created-files.js +0 -83
- package/dist/src/commands/patch/removal-dependents.d.ts +0 -63
- package/dist/src/commands/patch/removal-dependents.js +0 -133
- package/dist/src/commands/patch/rename.d.ts +0 -35
- package/dist/src/commands/patch/rename.js +0 -378
- package/dist/src/commands/patch/reorder-projection.d.ts +0 -17
- package/dist/src/commands/patch/reorder-projection.js +0 -49
- package/dist/src/commands/patch/reorder-shift.d.ts +0 -30
- package/dist/src/commands/patch/reorder-shift.js +0 -307
- package/dist/src/commands/patch/reorder.d.ts +0 -34
- package/dist/src/commands/patch/reorder.js +0 -375
- package/dist/src/commands/patch/reserve.d.ts +0 -33
- package/dist/src/commands/patch/reserve.js +0 -152
- package/dist/src/commands/patch/retire.d.ts +0 -34
- package/dist/src/commands/patch/retire.js +0 -133
- package/dist/src/commands/patch/split-plan.d.ts +0 -125
- package/dist/src/commands/patch/split-plan.js +0 -313
- package/dist/src/commands/patch/split-staged.d.ts +0 -108
- package/dist/src/commands/patch/split-staged.js +0 -202
- package/dist/src/commands/patch/split.d.ts +0 -43
- package/dist/src/commands/patch/split.js +0 -367
- package/dist/src/commands/patch/stage.d.ts +0 -34
- package/dist/src/commands/patch/stage.js +0 -153
- package/dist/src/commands/patch/staged-dependency-batch.d.ts +0 -48
- package/dist/src/commands/patch/staged-dependency-batch.js +0 -176
- package/dist/src/commands/patch/staged-dependency-entries.d.ts +0 -44
- package/dist/src/commands/patch/staged-dependency-entries.js +0 -80
- package/dist/src/commands/patch/staged-dependency-from.d.ts +0 -14
- package/dist/src/commands/patch/staged-dependency-from.js +0 -114
- package/dist/src/commands/patch/staged-dependency-remove.d.ts +0 -53
- package/dist/src/commands/patch/staged-dependency-remove.js +0 -114
- package/dist/src/commands/patch/staged-dependency-validate.d.ts +0 -27
- package/dist/src/commands/patch/staged-dependency-validate.js +0 -78
- package/dist/src/commands/patch/staged-dependency.d.ts +0 -22
- package/dist/src/commands/patch/staged-dependency.js +0 -251
- package/dist/src/commands/patch/tier.d.ts +0 -34
- package/dist/src/commands/patch/tier.js +0 -125
- package/dist/src/commands/patch-rename-map.d.ts +0 -30
- package/dist/src/commands/patch-rename-map.js +0 -54
- package/dist/src/commands/pending-resolution.d.ts +0 -15
- package/dist/src/commands/pending-resolution.js +0 -25
- package/dist/src/commands/re-export-adjacent-registrations.d.ts +0 -20
- package/dist/src/commands/re-export-adjacent-registrations.js +0 -75
- package/dist/src/commands/re-export-adjacent.d.ts +0 -111
- package/dist/src/commands/re-export-adjacent.js +0 -285
- package/dist/src/commands/re-export-bulk-scan.d.ts +0 -19
- package/dist/src/commands/re-export-bulk-scan.js +0 -233
- package/dist/src/commands/re-export-drift.d.ts +0 -110
- package/dist/src/commands/re-export-drift.js +0 -358
- package/dist/src/commands/re-export-each.d.ts +0 -46
- package/dist/src/commands/re-export-each.js +0 -110
- package/dist/src/commands/re-export-files.d.ts +0 -15
- package/dist/src/commands/re-export-files.js +0 -307
- package/dist/src/commands/re-export-hunks.d.ts +0 -37
- package/dist/src/commands/re-export-hunks.js +0 -264
- package/dist/src/commands/re-export-lint.d.ts +0 -137
- package/dist/src/commands/re-export-lint.js +0 -303
- package/dist/src/commands/re-export-options.d.ts +0 -29
- package/dist/src/commands/re-export-options.js +0 -192
- package/dist/src/commands/re-export-preflight.d.ts +0 -23
- package/dist/src/commands/re-export-preflight.js +0 -159
- package/dist/src/commands/re-export-purity-scope.d.ts +0 -18
- package/dist/src/commands/re-export-purity-scope.js +0 -137
- package/dist/src/commands/re-export-register.d.ts +0 -12
- package/dist/src/commands/re-export-register.js +0 -99
- package/dist/src/commands/re-export-removed.d.ts +0 -15
- package/dist/src/commands/re-export-removed.js +0 -94
- package/dist/src/commands/re-export-retired-declarations.d.ts +0 -22
- package/dist/src/commands/re-export-retired-declarations.js +0 -113
- package/dist/src/commands/re-export-scan-owner.d.ts +0 -44
- package/dist/src/commands/re-export-scan-owner.js +0 -116
- package/dist/src/commands/re-export-scan.d.ts +0 -72
- package/dist/src/commands/re-export-scan.js +0 -265
- package/dist/src/commands/re-export-single.d.ts +0 -53
- package/dist/src/commands/re-export-single.js +0 -426
- package/dist/src/commands/re-export-stale-registrations.d.ts +0 -39
- package/dist/src/commands/re-export-stale-registrations.js +0 -106
- package/dist/src/commands/re-export-summary.d.ts +0 -44
- package/dist/src/commands/re-export-summary.js +0 -59
- package/dist/src/commands/re-export.d.ts +0 -8
- package/dist/src/commands/rebase/abort.d.ts +0 -7
- package/dist/src/commands/rebase/abort.js +0 -67
- package/dist/src/commands/rebase/confirm.d.ts +0 -42
- package/dist/src/commands/rebase/confirm.js +0 -36
- package/dist/src/commands/rebase/conflict-summary.d.ts +0 -12
- package/dist/src/commands/rebase/conflict-summary.js +0 -37
- package/dist/src/commands/rebase/continue.d.ts +0 -7
- package/dist/src/commands/rebase/continue.js +0 -119
- package/dist/src/commands/rebase/index.d.ts +0 -22
- package/dist/src/commands/rebase/index.js +0 -209
- package/dist/src/commands/rebase/patch-loop.d.ts +0 -15
- package/dist/src/commands/rebase/patch-loop.js +0 -289
- package/dist/src/commands/rebase/summary.d.ts +0 -8
- package/dist/src/commands/rebase/summary.js +0 -47
- package/dist/src/commands/register.d.ts +0 -13
- package/dist/src/commands/reset.d.ts +0 -11
- package/dist/src/commands/resolve.d.ts +0 -36
- package/dist/src/commands/run.d.ts +0 -10
- package/dist/src/commands/setup-support.d.ts +0 -35
- package/dist/src/commands/setup-support.js +0 -386
- package/dist/src/commands/setup.d.ts +0 -11
- package/dist/src/commands/source.d.ts +0 -9
- package/dist/src/commands/source.js +0 -120
- package/dist/src/commands/status-check.d.ts +0 -87
- package/dist/src/commands/status-check.js +0 -161
- package/dist/src/commands/status-json.d.ts +0 -45
- package/dist/src/commands/status-json.js +0 -97
- package/dist/src/commands/status-output.d.ts +0 -23
- package/dist/src/commands/status-output.js +0 -231
- package/dist/src/commands/status-ownership.d.ts +0 -54
- package/dist/src/commands/status-ownership.js +0 -59
- package/dist/src/commands/status-scope.d.ts +0 -37
- package/dist/src/commands/status-scope.js +0 -54
- package/dist/src/commands/status.d.ts +0 -11
- package/dist/src/commands/test-appdir.d.ts +0 -6
- package/dist/src/commands/test-appdir.js +0 -29
- package/dist/src/commands/test-browser-preflight.d.ts +0 -28
- package/dist/src/commands/test-browser-preflight.js +0 -197
- package/dist/src/commands/test-build-furnace.d.ts +0 -21
- package/dist/src/commands/test-build-furnace.js +0 -53
- package/dist/src/commands/test-build-phase.d.ts +0 -34
- package/dist/src/commands/test-build-phase.js +0 -291
- package/dist/src/commands/test-checkjs.d.ts +0 -3
- package/dist/src/commands/test-checkjs.js +0 -35
- package/dist/src/commands/test-control-restore.d.ts +0 -40
- package/dist/src/commands/test-control-restore.js +0 -86
- package/dist/src/commands/test-diagnose.d.ts +0 -23
- package/dist/src/commands/test-diagnose.js +0 -317
- package/dist/src/commands/test-dispatch.d.ts +0 -39
- package/dist/src/commands/test-dispatch.js +0 -281
- package/dist/src/commands/test-furnace-reach.d.ts +0 -37
- package/dist/src/commands/test-furnace-reach.js +0 -132
- package/dist/src/commands/test-harness-env.d.ts +0 -23
- package/dist/src/commands/test-harness-env.js +0 -81
- package/dist/src/commands/test-harness-teardown.d.ts +0 -62
- package/dist/src/commands/test-harness-teardown.js +0 -128
- package/dist/src/commands/test-modes.d.ts +0 -57
- package/dist/src/commands/test-modes.js +0 -158
- package/dist/src/commands/test-multi-verdict.d.ts +0 -61
- package/dist/src/commands/test-multi-verdict.js +0 -112
- package/dist/src/commands/test-orchestrate.d.ts +0 -70
- package/dist/src/commands/test-orchestrate.js +0 -277
- package/dist/src/commands/test-perf-scope.d.ts +0 -50
- package/dist/src/commands/test-perf-scope.js +0 -138
- package/dist/src/commands/test-prelock.d.ts +0 -61
- package/dist/src/commands/test-prelock.js +0 -301
- package/dist/src/commands/test-register.d.ts +0 -4
- package/dist/src/commands/test-register.js +0 -181
- package/dist/src/commands/test-results.d.ts +0 -71
- package/dist/src/commands/test-results.js +0 -79
- package/dist/src/commands/test-run.d.ts +0 -89
- package/dist/src/commands/test-run.js +0 -251
- package/dist/src/commands/test-shards.d.ts +0 -114
- package/dist/src/commands/test-shards.js +0 -272
- package/dist/src/commands/test-stale-gate.d.ts +0 -56
- package/dist/src/commands/test-stale-gate.js +0 -208
- package/dist/src/commands/test-verdict.d.ts +0 -102
- package/dist/src/commands/test-verdict.js +0 -176
- package/dist/src/commands/test.d.ts +0 -22
- package/dist/src/commands/token-coverage.d.ts +0 -5
- package/dist/src/commands/token-coverage.js +0 -170
- package/dist/src/commands/token-lint.d.ts +0 -14
- package/dist/src/commands/token-lint.js +0 -151
- package/dist/src/commands/token-list.d.ts +0 -26
- package/dist/src/commands/token-list.js +0 -153
- package/dist/src/commands/token.d.ts +0 -14
- package/dist/src/commands/tree.d.ts +0 -19
- package/dist/src/commands/tree.js +0 -341
- package/dist/src/commands/typecheck-explain.d.ts +0 -13
- package/dist/src/commands/typecheck-explain.js +0 -100
- package/dist/src/commands/typecheck.d.ts +0 -61
- package/dist/src/commands/verify-scope.d.ts +0 -28
- package/dist/src/commands/verify-scope.js +0 -67
- package/dist/src/commands/verify.d.ts +0 -58
- package/dist/src/commands/watch.d.ts +0 -9
- package/dist/src/commands/wire.d.ts +0 -13
- package/dist/src/core/ast-utils.d.ts +0 -73
- package/dist/src/core/ast-utils.js +0 -105
- package/dist/src/core/brand-validation.d.ts +0 -7
- package/dist/src/core/brand-validation.js +0 -14
- package/dist/src/core/branding.d.ts +0 -86
- package/dist/src/core/branding.js +0 -371
- package/dist/src/core/browser-wire.d.ts +0 -48
- package/dist/src/core/browser-wire.js +0 -133
- package/dist/src/core/build-audit-platform.d.ts +0 -67
- package/dist/src/core/build-audit-platform.js +0 -373
- package/dist/src/core/build-audit-registration.d.ts +0 -80
- package/dist/src/core/build-audit-registration.js +0 -181
- package/dist/src/core/build-audit-resolve.d.ts +0 -78
- package/dist/src/core/build-audit-resolve.js +0 -240
- package/dist/src/core/build-audit-skip.d.ts +0 -57
- package/dist/src/core/build-audit-skip.js +0 -112
- package/dist/src/core/build-audit-transforms.d.ts +0 -23
- package/dist/src/core/build-audit-transforms.js +0 -92
- package/dist/src/core/build-audit.d.ts +0 -93
- package/dist/src/core/build-audit.js +0 -633
- package/dist/src/core/build-baseline-types.d.ts +0 -225
- package/dist/src/core/build-baseline-types.js +0 -10
- package/dist/src/core/build-baseline-validate.d.ts +0 -32
- package/dist/src/core/build-baseline-validate.js +0 -173
- package/dist/src/core/build-baseline.d.ts +0 -103
- package/dist/src/core/build-baseline.js +0 -261
- package/dist/src/core/build-jar-escalation.d.ts +0 -61
- package/dist/src/core/build-jar-escalation.js +0 -125
- package/dist/src/core/build-overwrite-guard.d.ts +0 -92
- package/dist/src/core/build-overwrite-guard.js +0 -235
- package/dist/src/core/build-prepare.d.ts +0 -83
- package/dist/src/core/build-prepare.js +0 -414
- package/dist/src/core/build-run-record.d.ts +0 -74
- package/dist/src/core/build-run-record.js +0 -136
- package/dist/src/core/checkjs-support-heads.d.ts +0 -41
- package/dist/src/core/checkjs-support-heads.js +0 -104
- package/dist/src/core/component-source-guard.d.ts +0 -20
- package/dist/src/core/component-source-guard.js +0 -68
- package/dist/src/core/config-mutate.d.ts +0 -16
- package/dist/src/core/config-mutate.js +0 -76
- package/dist/src/core/config-paths.d.ts +0 -16
- package/dist/src/core/config-paths.js +0 -106
- package/dist/src/core/config-state.d.ts +0 -16
- package/dist/src/core/config-state.js +0 -141
- package/dist/src/core/config-validate-build-audit.d.ts +0 -8
- package/dist/src/core/config-validate-build-audit.js +0 -80
- package/dist/src/core/config-validate-check.d.ts +0 -8
- package/dist/src/core/config-validate-check.js +0 -219
- package/dist/src/core/config-validate-file-size.d.ts +0 -15
- package/dist/src/core/config-validate-file-size.js +0 -154
- package/dist/src/core/config-validate-history.d.ts +0 -11
- package/dist/src/core/config-validate-history.js +0 -38
- package/dist/src/core/config-validate-patch-policy.d.ts +0 -7
- package/dist/src/core/config-validate-patch-policy.js +0 -284
- package/dist/src/core/config-validate-test-toolchains.d.ts +0 -8
- package/dist/src/core/config-validate-test-toolchains.js +0 -133
- package/dist/src/core/config-validate-token-scales.d.ts +0 -9
- package/dist/src/core/config-validate-token-scales.js +0 -125
- package/dist/src/core/config-validate.d.ts +0 -11
- package/dist/src/core/config-validate.js +0 -509
- package/dist/src/core/config.d.ts +0 -92
- package/dist/src/core/config.js +0 -169
- package/dist/src/core/coverage-dispatch.d.ts +0 -24
- package/dist/src/core/coverage-dispatch.js +0 -44
- package/dist/src/core/coverage-extend.d.ts +0 -89
- package/dist/src/core/coverage-extend.js +0 -239
- package/dist/src/core/coverage-records.d.ts +0 -107
- package/dist/src/core/coverage-records.js +0 -383
- package/dist/src/core/destructive.d.ts +0 -144
- package/dist/src/core/destructive.js +0 -182
- package/dist/src/core/dev-profile.d.ts +0 -28
- package/dist/src/core/dev-profile.js +0 -58
- package/dist/src/core/diff-hunks.d.ts +0 -73
- package/dist/src/core/diff-hunks.js +0 -286
- package/dist/src/core/discard-baseline.d.ts +0 -60
- package/dist/src/core/discard-baseline.js +0 -247
- package/dist/src/core/display-state.d.ts +0 -50
- package/dist/src/core/display-state.js +0 -87
- package/dist/src/core/engine-changes.d.ts +0 -40
- package/dist/src/core/engine-changes.js +0 -95
- package/dist/src/core/engine-precondition.d.ts +0 -42
- package/dist/src/core/engine-precondition.js +0 -60
- package/dist/src/core/engine-session-lock.d.ts +0 -119
- package/dist/src/core/engine-session-lock.js +0 -374
- package/dist/src/core/engine-write-boundary.d.ts +0 -5
- package/dist/src/core/engine-write-boundary.js +0 -41
- package/dist/src/core/export-moved-code-shape.d.ts +0 -98
- package/dist/src/core/export-moved-code-shape.js +0 -220
- package/dist/src/core/file-lock-owner.d.ts +0 -103
- package/dist/src/core/file-lock-owner.js +0 -259
- package/dist/src/core/file-lock-queue.d.ts +0 -67
- package/dist/src/core/file-lock-queue.js +0 -219
- package/dist/src/core/file-lock-shared.d.ts +0 -57
- package/dist/src/core/file-lock-shared.js +0 -117
- package/dist/src/core/file-lock.d.ts +0 -143
- package/dist/src/core/file-lock.js +0 -531
- package/dist/src/core/firefox-archive.d.ts +0 -45
- package/dist/src/core/firefox-archive.js +0 -96
- package/dist/src/core/firefox-cache.d.ts +0 -30
- package/dist/src/core/firefox-cache.js +0 -248
- package/dist/src/core/firefox-download.d.ts +0 -30
- package/dist/src/core/firefox-download.js +0 -152
- package/dist/src/core/firefox-extract.d.ts +0 -42
- package/dist/src/core/firefox-extract.js +0 -248
- package/dist/src/core/firefox-ignorefile.d.ts +0 -17
- package/dist/src/core/firefox-ignorefile.js +0 -30
- package/dist/src/core/firefox.d.ts +0 -66
- package/dist/src/core/firefox.js +0 -121
- package/dist/src/core/forward-registrations.d.ts +0 -33
- package/dist/src/core/forward-registrations.js +0 -16
- package/dist/src/core/furnace-apply-dry-run.d.ts +0 -12
- package/dist/src/core/furnace-apply-dry-run.js +0 -99
- package/dist/src/core/furnace-apply-ftl.d.ts +0 -49
- package/dist/src/core/furnace-apply-ftl.js +0 -210
- package/dist/src/core/furnace-apply-helpers.d.ts +0 -106
- package/dist/src/core/furnace-apply-helpers.js +0 -436
- package/dist/src/core/furnace-apply-output.d.ts +0 -36
- package/dist/src/core/furnace-apply-output.js +0 -111
- package/dist/src/core/furnace-apply-overwrite-warn.d.ts +0 -67
- package/dist/src/core/furnace-apply-overwrite-warn.js +0 -131
- package/dist/src/core/furnace-apply-undeploy-actions.d.ts +0 -10
- package/dist/src/core/furnace-apply-undeploy-actions.js +0 -48
- package/dist/src/core/furnace-apply.d.ts +0 -49
- package/dist/src/core/furnace-apply.js +0 -465
- package/dist/src/core/furnace-checksum-utils.d.ts +0 -25
- package/dist/src/core/furnace-checksum-utils.js +0 -54
- package/dist/src/core/furnace-composed-source.d.ts +0 -76
- package/dist/src/core/furnace-composed-source.js +0 -167
- package/dist/src/core/furnace-config-array-utils.d.ts +0 -11
- package/dist/src/core/furnace-config-array-utils.js +0 -26
- package/dist/src/core/furnace-config-custom.d.ts +0 -15
- package/dist/src/core/furnace-config-custom.js +0 -73
- package/dist/src/core/furnace-config-order.d.ts +0 -8
- package/dist/src/core/furnace-config-order.js +0 -90
- package/dist/src/core/furnace-config-tokens.d.ts +0 -17
- package/dist/src/core/furnace-config-tokens.js +0 -42
- package/dist/src/core/furnace-config-validate-exceptions.d.ts +0 -17
- package/dist/src/core/furnace-config-validate-exceptions.js +0 -122
- package/dist/src/core/furnace-config-validate.d.ts +0 -32
- package/dist/src/core/furnace-config-validate.js +0 -167
- package/dist/src/core/furnace-config.d.ts +0 -139
- package/dist/src/core/furnace-config.js +0 -511
- package/dist/src/core/furnace-constants.d.ts +0 -81
- package/dist/src/core/furnace-constants.js +0 -125
- package/dist/src/core/furnace-css-fragments.d.ts +0 -96
- package/dist/src/core/furnace-css-fragments.js +0 -279
- package/dist/src/core/furnace-deploy-owner.d.ts +0 -29
- package/dist/src/core/furnace-deploy-owner.js +0 -116
- package/dist/src/core/furnace-dir-entry.d.ts +0 -20
- package/dist/src/core/furnace-dir-entry.js +0 -21
- package/dist/src/core/furnace-fragment-includers.d.ts +0 -56
- package/dist/src/core/furnace-fragment-includers.js +0 -122
- package/dist/src/core/furnace-graph-utils.d.ts +0 -11
- package/dist/src/core/furnace-graph-utils.js +0 -93
- package/dist/src/core/furnace-jsconfig.d.ts +0 -87
- package/dist/src/core/furnace-jsconfig.js +0 -248
- package/dist/src/core/furnace-marker.d.ts +0 -15
- package/dist/src/core/furnace-marker.js +0 -21
- package/dist/src/core/furnace-operation.d.ts +0 -195
- package/dist/src/core/furnace-operation.js +0 -444
- package/dist/src/core/furnace-precondition.d.ts +0 -61
- package/dist/src/core/furnace-precondition.js +0 -67
- package/dist/src/core/furnace-refresh.d.ts +0 -28
- package/dist/src/core/furnace-refresh.js +0 -125
- package/dist/src/core/furnace-registration-ast.d.ts +0 -53
- package/dist/src/core/furnace-registration-ast.js +0 -402
- package/dist/src/core/furnace-registration-jar-inplace.d.ts +0 -12
- package/dist/src/core/furnace-registration-jar-inplace.js +0 -79
- package/dist/src/core/furnace-registration-remove.d.ts +0 -56
- package/dist/src/core/furnace-registration-remove.js +0 -260
- package/dist/src/core/furnace-registration-rename.d.ts +0 -26
- package/dist/src/core/furnace-registration-rename.js +0 -77
- package/dist/src/core/furnace-registration-validate.d.ts +0 -53
- package/dist/src/core/furnace-registration-validate.js +0 -110
- package/dist/src/core/furnace-registration.d.ts +0 -112
- package/dist/src/core/furnace-registration.js +0 -348
- package/dist/src/core/furnace-rollback.d.ts +0 -48
- package/dist/src/core/furnace-rollback.js +0 -170
- package/dist/src/core/furnace-scanner.d.ts +0 -47
- package/dist/src/core/furnace-scanner.js +0 -236
- package/dist/src/core/furnace-stale-export.d.ts +0 -60
- package/dist/src/core/furnace-stale-export.js +0 -125
- package/dist/src/core/furnace-staleness.d.ts +0 -24
- package/dist/src/core/furnace-staleness.js +0 -67
- package/dist/src/core/furnace-state-persist.d.ts +0 -68
- package/dist/src/core/furnace-state-persist.js +0 -116
- package/dist/src/core/furnace-step-errors.d.ts +0 -23
- package/dist/src/core/furnace-step-errors.js +0 -25
- package/dist/src/core/furnace-stories.d.ts +0 -37
- package/dist/src/core/furnace-stories.js +0 -186
- package/dist/src/core/furnace-tag-map.d.ts +0 -47
- package/dist/src/core/furnace-tag-map.js +0 -182
- package/dist/src/core/furnace-validate-accessibility.d.ts +0 -39
- package/dist/src/core/furnace-validate-accessibility.js +0 -417
- package/dist/src/core/furnace-validate-checks.d.ts +0 -4
- package/dist/src/core/furnace-validate-checks.js +0 -6
- package/dist/src/core/furnace-validate-compatibility.d.ts +0 -6
- package/dist/src/core/furnace-validate-compatibility.js +0 -295
- package/dist/src/core/furnace-validate-exceptions.d.ts +0 -49
- package/dist/src/core/furnace-validate-exceptions.js +0 -98
- package/dist/src/core/furnace-validate-helpers.d.ts +0 -7
- package/dist/src/core/furnace-validate-helpers.js +0 -4
- package/dist/src/core/furnace-validate-icon-button.d.ts +0 -7
- package/dist/src/core/furnace-validate-icon-button.js +0 -78
- package/dist/src/core/furnace-validate-registration.d.ts +0 -67
- package/dist/src/core/furnace-validate-registration.js +0 -487
- package/dist/src/core/furnace-validate-structure.d.ts +0 -22
- package/dist/src/core/furnace-validate-structure.js +0 -122
- package/dist/src/core/furnace-validate.d.ts +0 -41
- package/dist/src/core/furnace-validate.js +0 -331
- package/dist/src/core/furnace-version-drift.d.ts +0 -57
- package/dist/src/core/furnace-version-drift.js +0 -102
- package/dist/src/core/gecko-dom-types.d.ts +0 -2
- package/dist/src/core/gecko-dom-types.js +0 -17
- package/dist/src/core/git-base.d.ts +0 -101
- package/dist/src/core/git-base.js +0 -162
- package/dist/src/core/git-diff-new-file.d.ts +0 -40
- package/dist/src/core/git-diff-new-file.js +0 -118
- package/dist/src/core/git-diff.d.ts +0 -82
- package/dist/src/core/git-diff.js +0 -539
- package/dist/src/core/git-file-ops.d.ts +0 -108
- package/dist/src/core/git-file-ops.js +0 -280
- package/dist/src/core/git-readonly-index.d.ts +0 -91
- package/dist/src/core/git-readonly-index.js +0 -177
- package/dist/src/core/git-status.d.ts +0 -84
- package/dist/src/core/git-status.js +0 -208
- package/dist/src/core/git.d.ts +0 -114
- package/dist/src/core/git.js +0 -540
- package/dist/src/core/harness-helper-pids.d.ts +0 -98
- package/dist/src/core/harness-helper-pids.js +0 -240
- package/dist/src/core/harness-orphans.d.ts +0 -118
- package/dist/src/core/harness-orphans.js +0 -268
- package/dist/src/core/harness-port-fallback.d.ts +0 -60
- package/dist/src/core/harness-port-fallback.js +0 -96
- package/dist/src/core/harness-port-reservation.d.ts +0 -60
- package/dist/src/core/harness-port-reservation.js +0 -122
- package/dist/src/core/history-log-file.d.ts +0 -61
- package/dist/src/core/history-log-file.js +0 -164
- package/dist/src/core/history-log.d.ts +0 -20
- package/dist/src/core/history-log.js +0 -30
- package/dist/src/core/json-preserving-edit.d.ts +0 -22
- package/dist/src/core/json-preserving-edit.js +0 -199
- package/dist/src/core/launchable-build.d.ts +0 -39
- package/dist/src/core/launchable-build.js +0 -85
- package/dist/src/core/license-headers.d.ts +0 -103
- package/dist/src/core/license-headers.js +0 -328
- package/dist/src/core/line-prefixer.d.ts +0 -18
- package/dist/src/core/line-prefixer.js +0 -34
- package/dist/src/core/lit-template-regions.d.ts +0 -4
- package/dist/src/core/lit-template-regions.js +0 -50
- package/dist/src/core/mach-build-artifacts.d.ts +0 -176
- package/dist/src/core/mach-build-artifacts.js +0 -436
- package/dist/src/core/mach-error-hints.d.ts +0 -24
- package/dist/src/core/mach-error-hints.js +0 -135
- package/dist/src/core/mach-known-noise-filter.d.ts +0 -122
- package/dist/src/core/mach-known-noise-filter.js +0 -257
- package/dist/src/core/mach-mozconfig.d.ts +0 -57
- package/dist/src/core/mach-mozconfig.js +0 -166
- package/dist/src/core/mach-python.d.ts +0 -19
- package/dist/src/core/mach-python.js +0 -131
- package/dist/src/core/mach-resource-shim.d.ts +0 -107
- package/dist/src/core/mach-resource-shim.js +0 -640
- package/dist/src/core/mach.d.ts +0 -284
- package/dist/src/core/mach.js +0 -445
- package/dist/src/core/marionette-port.d.ts +0 -153
- package/dist/src/core/marionette-port.js +0 -474
- package/dist/src/core/marionette-preflight.d.ts +0 -58
- package/dist/src/core/marionette-preflight.js +0 -332
- package/dist/src/core/markdown-table.d.ts +0 -104
- package/dist/src/core/markdown-table.js +0 -265
- package/dist/src/core/mochitest-server-port.d.ts +0 -81
- package/dist/src/core/mochitest-server-port.js +0 -175
- package/dist/src/core/module-resolution-preflight.d.ts +0 -65
- package/dist/src/core/module-resolution-preflight.js +0 -171
- package/dist/src/core/moz-manifest-helpers.d.ts +0 -79
- package/dist/src/core/moz-manifest-helpers.js +0 -163
- package/dist/src/core/moz-manifest-register.d.ts +0 -19
- package/dist/src/core/moz-manifest-register.js +0 -51
- package/dist/src/core/moz-manifest-rules.d.ts +0 -58
- package/dist/src/core/moz-manifest-rules.js +0 -264
- package/dist/src/core/moz-manifest-tokenizers.d.ts +0 -38
- package/dist/src/core/moz-manifest-tokenizers.js +0 -108
- package/dist/src/core/negative-control-compiled.d.ts +0 -46
- package/dist/src/core/negative-control-compiled.js +0 -109
- package/dist/src/core/negative-control-diff.d.ts +0 -51
- package/dist/src/core/negative-control-diff.js +0 -167
- package/dist/src/core/negative-control.d.ts +0 -150
- package/dist/src/core/negative-control.js +0 -399
- package/dist/src/core/objdir-install-manifests.d.ts +0 -73
- package/dist/src/core/objdir-install-manifests.js +0 -226
- package/dist/src/core/objdir-maintenance.d.ts +0 -10
- package/dist/src/core/objdir-maintenance.js +0 -167
- package/dist/src/core/ownership-table.d.ts +0 -53
- package/dist/src/core/ownership-table.js +0 -159
- package/dist/src/core/parent-exit-watchdog.d.ts +0 -62
- package/dist/src/core/parent-exit-watchdog.js +0 -69
- package/dist/src/core/park-store.d.ts +0 -63
- package/dist/src/core/park-store.js +0 -216
- package/dist/src/core/parser-fallback.d.ts +0 -50
- package/dist/src/core/parser-fallback.js +0 -61
- package/dist/src/core/patch-apply-fuzz.d.ts +0 -57
- package/dist/src/core/patch-apply-fuzz.js +0 -125
- package/dist/src/core/patch-apply.d.ts +0 -88
- package/dist/src/core/patch-apply.js +0 -435
- package/dist/src/core/patch-export-coverage.d.ts +0 -49
- package/dist/src/core/patch-export-coverage.js +0 -73
- package/dist/src/core/patch-export-metadata.d.ts +0 -46
- package/dist/src/core/patch-export-metadata.js +0 -47
- package/dist/src/core/patch-export-update.d.ts +0 -55
- package/dist/src/core/patch-export-update.js +0 -95
- package/dist/src/core/patch-export.d.ts +0 -175
- package/dist/src/core/patch-export.js +0 -312
- package/dist/src/core/patch-files.d.ts +0 -17
- package/dist/src/core/patch-files.js +0 -59
- package/dist/src/core/patch-identifier-suggest.d.ts +0 -26
- package/dist/src/core/patch-identifier-suggest.js +0 -135
- package/dist/src/core/patch-lint-binary.d.ts +0 -45
- package/dist/src/core/patch-lint-binary.js +0 -39
- package/dist/src/core/patch-lint-cache-checkjs.d.ts +0 -45
- package/dist/src/core/patch-lint-cache-checkjs.js +0 -195
- package/dist/src/core/patch-lint-cache.d.ts +0 -79
- package/dist/src/core/patch-lint-cache.js +0 -247
- package/dist/src/core/patch-lint-checkjs-any-import.d.ts +0 -57
- package/dist/src/core/patch-lint-checkjs-any-import.js +0 -91
- package/dist/src/core/patch-lint-checkjs-cache.d.ts +0 -18
- package/dist/src/core/patch-lint-checkjs-cache.js +0 -45
- package/dist/src/core/patch-lint-checkjs-diagnostics.d.ts +0 -17
- package/dist/src/core/patch-lint-checkjs-diagnostics.js +0 -32
- package/dist/src/core/patch-lint-checkjs-resolve.d.ts +0 -31
- package/dist/src/core/patch-lint-checkjs-resolve.js +0 -86
- package/dist/src/core/patch-lint-checkjs.d.ts +0 -182
- package/dist/src/core/patch-lint-checkjs.js +0 -563
- package/dist/src/core/patch-lint-chrome-jsdoc.d.ts +0 -43
- package/dist/src/core/patch-lint-chrome-jsdoc.js +0 -90
- package/dist/src/core/patch-lint-code-lines.d.ts +0 -59
- package/dist/src/core/patch-lint-code-lines.js +0 -105
- package/dist/src/core/patch-lint-creators.d.ts +0 -26
- package/dist/src/core/patch-lint-creators.js +0 -45
- package/dist/src/core/patch-lint-cross.d.ts +0 -232
- package/dist/src/core/patch-lint-cross.js +0 -590
- package/dist/src/core/patch-lint-css.d.ts +0 -27
- package/dist/src/core/patch-lint-css.js +0 -228
- package/dist/src/core/patch-lint-diff-tag.d.ts +0 -51
- package/dist/src/core/patch-lint-diff-tag.js +0 -105
- package/dist/src/core/patch-lint-diff.d.ts +0 -42
- package/dist/src/core/patch-lint-diff.js +0 -100
- package/dist/src/core/patch-lint-file-size.d.ts +0 -57
- package/dist/src/core/patch-lint-file-size.js +0 -62
- package/dist/src/core/patch-lint-forward-registration-extended.d.ts +0 -61
- package/dist/src/core/patch-lint-forward-registration-extended.js +0 -265
- package/dist/src/core/patch-lint-forward-registration.d.ts +0 -71
- package/dist/src/core/patch-lint-forward-registration.js +0 -266
- package/dist/src/core/patch-lint-ignore.d.ts +0 -196
- package/dist/src/core/patch-lint-ignore.js +0 -429
- package/dist/src/core/patch-lint-imports.d.ts +0 -9
- package/dist/src/core/patch-lint-imports.js +0 -90
- package/dist/src/core/patch-lint-jsdoc.d.ts +0 -67
- package/dist/src/core/patch-lint-jsdoc.js +0 -471
- package/dist/src/core/patch-lint-module-registration.d.ts +0 -22
- package/dist/src/core/patch-lint-module-registration.js +0 -97
- package/dist/src/core/patch-lint-mozbuild.d.ts +0 -18
- package/dist/src/core/patch-lint-mozbuild.js +0 -192
- package/dist/src/core/patch-lint-observer.d.ts +0 -37
- package/dist/src/core/patch-lint-observer.js +0 -167
- package/dist/src/core/patch-lint-ownership.d.ts +0 -74
- package/dist/src/core/patch-lint-ownership.js +0 -125
- package/dist/src/core/patch-lint-prettier.d.ts +0 -34
- package/dist/src/core/patch-lint-prettier.js +0 -124
- package/dist/src/core/patch-lint-projection.d.ts +0 -25
- package/dist/src/core/patch-lint-projection.js +0 -43
- package/dist/src/core/patch-lint-queue-types.d.ts +0 -60
- package/dist/src/core/patch-lint-queue-types.js +0 -12
- package/dist/src/core/patch-lint-size-thresholds.d.ts +0 -52
- package/dist/src/core/patch-lint-size-thresholds.js +0 -110
- package/dist/src/core/patch-lint-size.d.ts +0 -117
- package/dist/src/core/patch-lint-size.js +0 -331
- package/dist/src/core/patch-lint-staged-registration.d.ts +0 -98
- package/dist/src/core/patch-lint-staged-registration.js +0 -128
- package/dist/src/core/patch-lint-token-scale.d.ts +0 -65
- package/dist/src/core/patch-lint-token-scale.js +0 -304
- package/dist/src/core/patch-lint-unmanaged-companion.d.ts +0 -106
- package/dist/src/core/patch-lint-unmanaged-companion.js +0 -214
- package/dist/src/core/patch-lint.d.ts +0 -206
- package/dist/src/core/patch-lint.js +0 -533
- package/dist/src/core/patch-lock.d.ts +0 -40
- package/dist/src/core/patch-lock.js +0 -129
- package/dist/src/core/patch-manifest-consistency.d.ts +0 -95
- package/dist/src/core/patch-manifest-consistency.js +0 -256
- package/dist/src/core/patch-manifest-files-affected.d.ts +0 -43
- package/dist/src/core/patch-manifest-files-affected.js +0 -77
- package/dist/src/core/patch-manifest-io.d.ts +0 -199
- package/dist/src/core/patch-manifest-io.js +0 -556
- package/dist/src/core/patch-manifest-key-order.d.ts +0 -23
- package/dist/src/core/patch-manifest-key-order.js +0 -60
- package/dist/src/core/patch-manifest-query.d.ts +0 -55
- package/dist/src/core/patch-manifest-query.js +0 -139
- package/dist/src/core/patch-manifest-resolve.d.ts +0 -21
- package/dist/src/core/patch-manifest-resolve.js +0 -35
- package/dist/src/core/patch-manifest-stage.d.ts +0 -46
- package/dist/src/core/patch-manifest-stage.js +0 -96
- package/dist/src/core/patch-manifest-validate.d.ts +0 -20
- package/dist/src/core/patch-manifest-validate.js +0 -240
- package/dist/src/core/patch-manifest.d.ts +0 -12
- package/dist/src/core/patch-manifest.js +0 -13
- package/dist/src/core/patch-order-legal.d.ts +0 -26
- package/dist/src/core/patch-order-legal.js +0 -88
- package/dist/src/core/patch-parse.d.ts +0 -176
- package/dist/src/core/patch-parse.js +0 -416
- package/dist/src/core/patch-policy-content.d.ts +0 -40
- package/dist/src/core/patch-policy-content.js +0 -219
- package/dist/src/core/patch-policy.d.ts +0 -80
- package/dist/src/core/patch-policy.js +0 -394
- package/dist/src/core/patch-registration-refs.d.ts +0 -41
- package/dist/src/core/patch-registration-refs.js +0 -107
- package/dist/src/core/patch-retired.d.ts +0 -57
- package/dist/src/core/patch-retired.js +0 -92
- package/dist/src/core/patch-source-metadata.d.ts +0 -6
- package/dist/src/core/patch-source-metadata.js +0 -12
- package/dist/src/core/patch-subset.d.ts +0 -18
- package/dist/src/core/patch-subset.js +0 -67
- package/dist/src/core/patch-transform.d.ts +0 -61
- package/dist/src/core/patch-transform.js +0 -198
- package/dist/src/core/preflight-wait.d.ts +0 -22
- package/dist/src/core/preflight-wait.js +0 -62
- package/dist/src/core/process-cpu-time.d.ts +0 -12
- package/dist/src/core/process-cpu-time.js +0 -52
- package/dist/src/core/process-owner.d.ts +0 -9
- package/dist/src/core/process-owner.js +0 -43
- package/dist/src/core/rebase-dry-run.d.ts +0 -48
- package/dist/src/core/rebase-dry-run.js +0 -105
- package/dist/src/core/rebase-from-version.d.ts +0 -46
- package/dist/src/core/rebase-from-version.js +0 -71
- package/dist/src/core/rebase-session.d.ts +0 -100
- package/dist/src/core/rebase-session.js +0 -174
- package/dist/src/core/register-browser-content.d.ts +0 -11
- package/dist/src/core/register-browser-content.js +0 -52
- package/dist/src/core/register-browser-test.d.ts +0 -18
- package/dist/src/core/register-browser-test.js +0 -66
- package/dist/src/core/register-module.d.ts +0 -11
- package/dist/src/core/register-module.js +0 -56
- package/dist/src/core/register-result.d.ts +0 -30
- package/dist/src/core/register-result.js +0 -8
- package/dist/src/core/register-scaffold.d.ts +0 -55
- package/dist/src/core/register-scaffold.js +0 -146
- package/dist/src/core/register-shared-css.d.ts +0 -36
- package/dist/src/core/register-shared-css.js +0 -112
- package/dist/src/core/register-xpcshell-test.d.ts +0 -50
- package/dist/src/core/register-xpcshell-test.js +0 -143
- package/dist/src/core/run-log-redact.d.ts +0 -38
- package/dist/src/core/run-log-redact.js +0 -69
- package/dist/src/core/run-log.d.ts +0 -97
- package/dist/src/core/run-log.js +0 -334
- package/dist/src/core/run-profile.d.ts +0 -57
- package/dist/src/core/run-profile.js +0 -137
- package/dist/src/core/shared-ftl.d.ts +0 -28
- package/dist/src/core/shared-ftl.js +0 -49
- package/dist/src/core/signal-critical.d.ts +0 -38
- package/dist/src/core/signal-critical.js +0 -62
- package/dist/src/core/smoke-patterns.d.ts +0 -81
- package/dist/src/core/smoke-patterns.js +0 -176
- package/dist/src/core/state-file.d.ts +0 -60
- package/dist/src/core/state-file.js +0 -71
- package/dist/src/core/status-binary.d.ts +0 -62
- package/dist/src/core/status-binary.js +0 -133
- package/dist/src/core/status-classify.d.ts +0 -96
- package/dist/src/core/status-classify.js +0 -244
- package/dist/src/core/test-changed-prefs.d.ts +0 -30
- package/dist/src/core/test-changed-prefs.js +0 -93
- package/dist/src/core/test-harness-crash.d.ts +0 -251
- package/dist/src/core/test-harness-crash.js +0 -780
- package/dist/src/core/test-harness-infra.d.ts +0 -32
- package/dist/src/core/test-harness-infra.js +0 -69
- package/dist/src/core/test-harness-output.d.ts +0 -45
- package/dist/src/core/test-harness-output.js +0 -119
- package/dist/src/core/test-harness-signature.d.ts +0 -57
- package/dist/src/core/test-harness-signature.js +0 -35
- package/dist/src/core/test-harness-verdict-notes.d.ts +0 -54
- package/dist/src/core/test-harness-verdict-notes.js +0 -48
- package/dist/src/core/test-host-state.d.ts +0 -14
- package/dist/src/core/test-host-state.js +0 -80
- package/dist/src/core/test-path-scope.d.ts +0 -59
- package/dist/src/core/test-path-scope.js +0 -147
- package/dist/src/core/test-profile-files.d.ts +0 -17
- package/dist/src/core/test-profile-files.js +0 -75
- package/dist/src/core/test-raw-log.d.ts +0 -66
- package/dist/src/core/test-raw-log.js +0 -122
- package/dist/src/core/test-run-completeness.d.ts +0 -97
- package/dist/src/core/test-run-completeness.js +0 -191
- package/dist/src/core/test-stale-check.d.ts +0 -213
- package/dist/src/core/test-stale-check.js +0 -396
- package/dist/src/core/test-stale-exempt.d.ts +0 -40
- package/dist/src/core/test-stale-exempt.js +0 -70
- package/dist/src/core/test-stale-symlink.d.ts +0 -12
- package/dist/src/core/test-stale-symlink.js +0 -39
- package/dist/src/core/test-stall-triage.d.ts +0 -51
- package/dist/src/core/test-stall-triage.js +0 -142
- package/dist/src/core/test-xpcshell-retry.d.ts +0 -35
- package/dist/src/core/test-xpcshell-retry.js +0 -31
- package/dist/src/core/token-category.d.ts +0 -54
- package/dist/src/core/token-category.js +0 -299
- package/dist/src/core/token-coverage.d.ts +0 -12
- package/dist/src/core/token-coverage.js +0 -96
- package/dist/src/core/token-dark-mode.d.ts +0 -64
- package/dist/src/core/token-dark-mode.js +0 -186
- package/dist/src/core/token-docs.d.ts +0 -34
- package/dist/src/core/token-docs.js +0 -102
- package/dist/src/core/token-inventory.d.ts +0 -56
- package/dist/src/core/token-inventory.js +0 -114
- package/dist/src/core/token-lint.d.ts +0 -53
- package/dist/src/core/token-lint.js +0 -131
- package/dist/src/core/token-manager.d.ts +0 -87
- package/dist/src/core/token-manager.js +0 -407
- package/dist/src/core/token-scaffold.d.ts +0 -36
- package/dist/src/core/token-scaffold.js +0 -73
- package/dist/src/core/token-sibling-sheets.d.ts +0 -46
- package/dist/src/core/token-sibling-sheets.js +0 -119
- package/dist/src/core/token-variant.d.ts +0 -90
- package/dist/src/core/token-variant.js +0 -327
- package/dist/src/core/toolchain-preflight.d.ts +0 -90
- package/dist/src/core/toolchain-preflight.js +0 -251
- package/dist/src/core/tree-cow.d.ts +0 -16
- package/dist/src/core/tree-cow.js +0 -71
- package/dist/src/core/tree-guard.d.ts +0 -35
- package/dist/src/core/tree-guard.js +0 -194
- package/dist/src/core/tree-store.d.ts +0 -143
- package/dist/src/core/tree-store.js +0 -478
- package/dist/src/core/typecheck-explain.d.ts +0 -93
- package/dist/src/core/typecheck-explain.js +0 -213
- package/dist/src/core/typecheck-shim.d.ts +0 -90
- package/dist/src/core/typecheck-shim.js +0 -508
- package/dist/src/core/typecheck.d.ts +0 -97
- package/dist/src/core/typecheck.js +0 -457
- package/dist/src/core/wire-destroy.d.ts +0 -25
- package/dist/src/core/wire-destroy.js +0 -126
- package/dist/src/core/wire-dom-fragment.d.ts +0 -44
- package/dist/src/core/wire-dom-fragment.js +0 -139
- package/dist/src/core/wire-init.d.ts +0 -28
- package/dist/src/core/wire-init.js +0 -219
- package/dist/src/core/wire-subscript.d.ts +0 -23
- package/dist/src/core/wire-subscript.js +0 -145
- package/dist/src/core/wire-utils.d.ts +0 -149
- package/dist/src/core/wire-utils.js +0 -338
- package/dist/src/core/xpcshell-appdir.d.ts +0 -157
- package/dist/src/core/xpcshell-appdir.js +0 -299
- package/dist/src/core/xpcshell-profile-dir.d.ts +0 -12
- package/dist/src/core/xpcshell-profile-dir.js +0 -45
- package/dist/src/errors/base.d.ts +0 -217
- package/dist/src/errors/base.js +0 -279
- package/dist/src/errors/build.d.ts +0 -92
- package/dist/src/errors/build.js +0 -166
- package/dist/src/errors/codes.d.ts +0 -74
- package/dist/src/errors/codes.js +0 -74
- package/dist/src/errors/config.d.ts +0 -17
- package/dist/src/errors/config.js +0 -39
- package/dist/src/errors/download.d.ts +0 -66
- package/dist/src/errors/download.js +0 -160
- package/dist/src/errors/furnace.d.ts +0 -20
- package/dist/src/errors/furnace.js +0 -28
- package/dist/src/errors/git.d.ts +0 -65
- package/dist/src/errors/git.js +0 -140
- package/dist/src/errors/patch.d.ts +0 -27
- package/dist/src/errors/patch.js +0 -52
- package/dist/src/errors/rebase.d.ts +0 -42
- package/dist/src/errors/rebase.js +0 -71
- package/dist/src/errors/run.d.ts +0 -16
- package/dist/src/errors/run.js +0 -22
- package/dist/src/index.d.ts +0 -42
- package/dist/src/index.js +0 -32
- package/dist/src/types/cli.d.ts +0 -14
- package/dist/src/types/commands/index.d.ts +0 -6
- package/dist/src/types/commands/index.js +0 -5
- package/dist/src/types/commands/options.d.ts +0 -1372
- package/dist/src/types/commands/options.js +0 -5
- package/dist/src/types/commands/patches.d.ts +0 -352
- package/dist/src/types/commands/patches.js +0 -5
- package/dist/src/types/commands/project.d.ts +0 -51
- package/dist/src/types/commands/project.js +0 -5
- package/dist/src/types/config.d.ts +0 -732
- package/dist/src/types/config.js +0 -15
- package/dist/src/types/furnace.d.ts +0 -422
- package/dist/src/types/furnace.js +0 -26
- package/dist/src/types/index.d.ts +0 -5
- package/dist/src/types/index.js +0 -5
- package/dist/src/types/json.d.ts +0 -22
- package/dist/src/types/json.js +0 -11
- package/dist/src/types/typecheck.d.ts +0 -51
- package/dist/src/types/typecheck.js +0 -14
- package/dist/src/utils/assert.d.ts +0 -34
- package/dist/src/utils/assert.js +0 -61
- package/dist/src/utils/build-info.d.ts +0 -30
- package/dist/src/utils/build-info.js +0 -99
- package/dist/src/utils/child-env.d.ts +0 -28
- package/dist/src/utils/child-env.js +0 -27
- package/dist/src/utils/concurrency.d.ts +0 -8
- package/dist/src/utils/concurrency.js +0 -32
- package/dist/src/utils/elapsed.d.ts +0 -2
- package/dist/src/utils/elapsed.js +0 -23
- package/dist/src/utils/errors.d.ts +0 -39
- package/dist/src/utils/errors.js +0 -67
- package/dist/src/utils/fs.d.ts +0 -113
- package/dist/src/utils/fs.js +0 -337
- package/dist/src/utils/hash.d.ts +0 -12
- package/dist/src/utils/hash.js +0 -16
- package/dist/src/utils/line-dispatch.d.ts +0 -15
- package/dist/src/utils/line-dispatch.js +0 -48
- package/dist/src/utils/logger.d.ts +0 -109
- package/dist/src/utils/logger.js +0 -270
- package/dist/src/utils/machine-output.d.ts +0 -12
- package/dist/src/utils/machine-output.js +0 -33
- package/dist/src/utils/options.d.ts +0 -155
- package/dist/src/utils/options.js +0 -312
- package/dist/src/utils/package-root.d.ts +0 -21
- package/dist/src/utils/package-root.js +0 -70
- package/dist/src/utils/parse.d.ts +0 -117
- package/dist/src/utils/parse.js +0 -214
- package/dist/src/utils/path-glob.d.ts +0 -15
- package/dist/src/utils/path-glob.js +0 -47
- package/dist/src/utils/paths.d.ts +0 -31
- package/dist/src/utils/paths.js +0 -80
- package/dist/src/utils/platform.d.ts +0 -9
- package/dist/src/utils/platform.js +0 -14
- package/dist/src/utils/process-group.d.ts +0 -42
- package/dist/src/utils/process-group.js +0 -190
- package/dist/src/utils/process-input.d.ts +0 -27
- package/dist/src/utils/process-input.js +0 -46
- package/dist/src/utils/process.d.ts +0 -293
- package/dist/src/utils/process.js +0 -593
- package/dist/src/utils/ps-duration.d.ts +0 -31
- package/dist/src/utils/ps-duration.js +0 -70
- package/dist/src/utils/regex.d.ts +0 -39
- package/dist/src/utils/regex.js +0 -109
- package/dist/src/utils/sleep.d.ts +0 -25
- package/dist/src/utils/sleep.js +0 -30
- package/dist/src/utils/stdio-drain.d.ts +0 -28
- package/dist/src/utils/stdio-drain.js +0 -54
- package/dist/src/utils/validation.d.ts +0 -182
- package/dist/src/utils/validation.js +0 -394
- package/docs/lifecycle-invariants.md +0 -523
- package/docs/run-logs.md +0 -122
- package/docs/verification-trees.md +0 -49
- /package/dist/src/{types/cli.js → cli/context.js} +0 -0
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import type { PatchQueueForwardRegistrationEntry, PatchQueueView } from './patch-lint-queue-types.js';
|
|
2
|
-
/** Which carriers `forward-registration` checks. */
|
|
3
|
-
export type ForwardRegistrationScope = 'support-files' | 'extended';
|
|
4
|
-
/** The carrier kind a forward registration was found in. */
|
|
5
|
-
export type ForwardRegistrationKind = 'support-files' | 'jar-mn' | 'moz-build' | 'test-manifest' | 'custom-elements';
|
|
6
|
-
/** One undeclared forward registration: a line naming a file a later patch creates. */
|
|
7
|
-
export interface ForwardRegistration {
|
|
8
|
-
/** The patch that adds the registration line. */
|
|
9
|
-
patch: string;
|
|
10
|
-
/** Carrier kind. */
|
|
11
|
-
kind: ForwardRegistrationKind;
|
|
12
|
-
/** Engine-relative path of the carrier file (the manifest, jar.mn, …). */
|
|
13
|
-
file: string;
|
|
14
|
-
/** The added line, whitespace-trimmed, that names the target. */
|
|
15
|
-
line: string;
|
|
16
|
-
/** The token on that line that names the target, as written. */
|
|
17
|
-
token: string;
|
|
18
|
-
/** Engine-relative path of the file the later patch creates. */
|
|
19
|
-
creates: string;
|
|
20
|
-
/** The later patch that creates it. */
|
|
21
|
-
owner: string;
|
|
22
|
-
/** How many distinct added lines in the carrier name the same target. */
|
|
23
|
-
occurrences: number;
|
|
24
|
-
/** Paste-and-run declaration that records the stage as intentional. */
|
|
25
|
-
command: string;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* jar target → packaged source, over every jar.mn line the queue adds. Only
|
|
29
|
-
* exact (wildcard-free) sources can back a chrome URL lookup.
|
|
30
|
-
*/
|
|
31
|
-
export declare function buildJarTargetIndex(entries: readonly PatchQueueForwardRegistrationEntry[]): Map<string, string>;
|
|
32
|
-
/** True for a jar.mn, moz.build or test manifest, the carriers {@link resolveCarrierReferences} reads. */
|
|
33
|
-
export declare function isRegistrationCarrier(file: string): boolean;
|
|
34
|
-
/**
|
|
35
|
-
* The engine paths named by the lines of one jar.mn, moz.build or test
|
|
36
|
-
* manifest, resolved the way this rule resolves them. Exported for a caller
|
|
37
|
-
* outside the queue lint (re-export's adjacency belt asks which files a
|
|
38
|
-
* patch's added registration lines name). A `customElements.js` chrome URL
|
|
39
|
-
* resolves only through the queue's jar.mn index, so it is not covered.
|
|
40
|
-
*
|
|
41
|
-
* @param rawPath - Engine-relative path of the carrier
|
|
42
|
-
* @param content - The carrier lines to read (typically the added ones)
|
|
43
|
-
* @returns One entry per resolvable token. `exact` is set when it has no wildcard.
|
|
44
|
-
*/
|
|
45
|
-
export declare function resolveCarrierReferences(rawPath: string, content: string): {
|
|
46
|
-
line: string;
|
|
47
|
-
exact?: string;
|
|
48
|
-
matches: (candidate: string) => boolean;
|
|
49
|
-
}[];
|
|
50
|
-
/** The discharge command, in the exact shape the support-files arm prints. */
|
|
51
|
-
export declare function formatRegistrationDeclaration(patch: string, file: string, line: string, creates: string, owner: string): string;
|
|
52
|
-
/**
|
|
53
|
-
* Finds every undeclared forward registration in the extended carriers:
|
|
54
|
-
* a registration line a patch adds that names a file only a later-ordered
|
|
55
|
-
* patch creates. Creators come from `createdFiles` (the `new file mode`
|
|
56
|
-
* sections), never `filesAffected`.
|
|
57
|
-
*
|
|
58
|
-
* @param ctx - Queue in application order
|
|
59
|
-
* @returns One record per (patch, carrier, created file), first line quoted
|
|
60
|
-
*/
|
|
61
|
-
export declare function findExtendedForwardRegistrations(ctx: PatchQueueView<PatchQueueForwardRegistrationEntry>): ForwardRegistration[];
|
|
@@ -1,265 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* The opt-in arms of the `forward-registration` rule
|
|
4
|
-
* (`patchLint.forwardRegistration: "extended"`).
|
|
5
|
-
*
|
|
6
|
-
* The default rule covers test-manifest `support-files` only. These arms
|
|
7
|
-
* cover the carriers whose target resolves WITHOUT the build system:
|
|
8
|
-
*
|
|
9
|
-
* - a jar.mn pair line: the packaged source is on the line, in parentheses,
|
|
10
|
-
* relative to the jar.mn directory (or `/`-rooted at the source root);
|
|
11
|
-
* - a moz.build path token (a quoted string with a `.` or `/`), relative to
|
|
12
|
-
* the moz.build directory (or `/`-rooted);
|
|
13
|
-
* - a test manifest's section header (`["browser_foo.js"]`) and `head`,
|
|
14
|
-
* relative to the manifest directory;
|
|
15
|
-
* - a `customElements.js` `chrome://<pkg>/content/<path>` URL, resolved
|
|
16
|
-
* through the jar.mn lines the same queue adds (`content/<pkg>/<path>`
|
|
17
|
-
* is the jar target that URL serves).
|
|
18
|
-
*
|
|
19
|
-
* Anything else stays silent: a preprocessor or locale substitution, a
|
|
20
|
-
* `**` or `!` pattern, a path that climbs out of the tree, a chrome URL no
|
|
21
|
-
* queue jar.mn line packages. A rule that guessed there would refuse
|
|
22
|
-
* correct queues on a Firefox-sized tree.
|
|
23
|
-
*
|
|
24
|
-
* Opt-in because a queue that predates it can carry many such edges on a
|
|
25
|
-
* ratchet, and a new error on install would red a `--max-warnings 0` gate.
|
|
26
|
-
*/
|
|
27
|
-
import { basename, dirname, posix } from 'node:path';
|
|
28
|
-
import { normalizePathSlashes } from '../utils/paths.js';
|
|
29
|
-
import { escapeRegex } from '../utils/regex.js';
|
|
30
|
-
import { parseJarMnEntry } from './build-audit-registration.js';
|
|
31
|
-
import { isLaterOwner, quoteRegistrationLine, STAGED_DEPENDENCY_REASON_PLACEHOLDER, } from './patch-lint-staged-registration.js';
|
|
32
|
-
const TEST_MANIFEST_BASENAMES = new Set([
|
|
33
|
-
'xpcshell.toml',
|
|
34
|
-
'xpcshell.ini',
|
|
35
|
-
'mochitest.toml',
|
|
36
|
-
'mochitest.ini',
|
|
37
|
-
'browser.toml',
|
|
38
|
-
'browser.ini',
|
|
39
|
-
'chrome.toml',
|
|
40
|
-
'chrome.ini',
|
|
41
|
-
'a11y.toml',
|
|
42
|
-
'a11y.ini',
|
|
43
|
-
]);
|
|
44
|
-
/**
|
|
45
|
-
* Resolves a path token against a base directory into a matcher. A leading
|
|
46
|
-
* `/` is rooted at the source tree. Only a `*` inside one segment is
|
|
47
|
-
* expanded. Substitutions (`%`, `@`), `**`, `!` and paths that climb out of
|
|
48
|
-
* the tree resolve to nothing.
|
|
49
|
-
*/
|
|
50
|
-
function resolvePathToken(baseDir, token) {
|
|
51
|
-
if (/[%@!\s]/.test(token) || token.includes('**'))
|
|
52
|
-
return undefined;
|
|
53
|
-
const joined = token.startsWith('/')
|
|
54
|
-
? posix.normalize(token.slice(1))
|
|
55
|
-
: posix.normalize(posix.join(baseDir, normalizePathSlashes(token)));
|
|
56
|
-
if (joined.startsWith('..') || joined === '.' || joined.length === 0)
|
|
57
|
-
return undefined;
|
|
58
|
-
if (!joined.includes('*')) {
|
|
59
|
-
return { exact: joined, matches: (candidate) => candidate === joined };
|
|
60
|
-
}
|
|
61
|
-
const pattern = new RegExp(`^${joined
|
|
62
|
-
.split('*')
|
|
63
|
-
.map((part) => escapeRegex(part))
|
|
64
|
-
.join('[^/]*')}$`);
|
|
65
|
-
return { matches: (candidate) => pattern.test(candidate) };
|
|
66
|
-
}
|
|
67
|
-
function carrierDir(file) {
|
|
68
|
-
const dir = normalizePathSlashes(dirname(file));
|
|
69
|
-
return dir === '.' ? '' : dir;
|
|
70
|
-
}
|
|
71
|
-
function jarMnReferences(file, content) {
|
|
72
|
-
const refs = [];
|
|
73
|
-
for (const raw of content.split('\n')) {
|
|
74
|
-
const parsed = parseJarMnEntry(raw);
|
|
75
|
-
if (!parsed)
|
|
76
|
-
continue;
|
|
77
|
-
const resolved = resolvePathToken(carrierDir(file), parsed.source);
|
|
78
|
-
if (resolved)
|
|
79
|
-
refs.push({ kind: 'jar-mn', file, line: raw.trim(), token: parsed.source, ...resolved });
|
|
80
|
-
}
|
|
81
|
-
return refs;
|
|
82
|
-
}
|
|
83
|
-
function mozBuildReferences(file, content) {
|
|
84
|
-
const refs = [];
|
|
85
|
-
for (const raw of content.split('\n')) {
|
|
86
|
-
if (raw.trimStart().startsWith('#'))
|
|
87
|
-
continue;
|
|
88
|
-
for (const quoted of raw.matchAll(/["']([^"']+)["']/g)) {
|
|
89
|
-
const token = quoted[1] ?? '';
|
|
90
|
-
// A path names a file: it has an extension or a directory. Bare words
|
|
91
|
-
// ("Firefox", a define's value) are not paths.
|
|
92
|
-
if (!token.includes('.') && !token.includes('/'))
|
|
93
|
-
continue;
|
|
94
|
-
const resolved = resolvePathToken(carrierDir(file), token);
|
|
95
|
-
if (resolved)
|
|
96
|
-
refs.push({ kind: 'moz-build', file, line: raw.trim(), token, ...resolved });
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
return refs;
|
|
100
|
-
}
|
|
101
|
-
function testManifestReferences(file, content) {
|
|
102
|
-
const refs = [];
|
|
103
|
-
for (const raw of content.split('\n')) {
|
|
104
|
-
const section = /^\s*\[\s*["']?([^"'\]]+?)["']?\s*\]\s*$/.exec(raw);
|
|
105
|
-
const head = /^\s*head\s*=\s*["']?([^"'\s]+)["']?\s*$/.exec(raw);
|
|
106
|
-
const token = section?.[1] ?? head?.[1];
|
|
107
|
-
if (token === undefined || token === 'DEFAULT')
|
|
108
|
-
continue;
|
|
109
|
-
const resolved = resolvePathToken(carrierDir(file), token);
|
|
110
|
-
if (resolved)
|
|
111
|
-
refs.push({ kind: 'test-manifest', file, line: raw.trim(), token, ...resolved });
|
|
112
|
-
}
|
|
113
|
-
return refs;
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* jar target → packaged source, over every jar.mn line the queue adds. Only
|
|
117
|
-
* exact (wildcard-free) sources can back a chrome URL lookup.
|
|
118
|
-
*/
|
|
119
|
-
export function buildJarTargetIndex(entries) {
|
|
120
|
-
const index = new Map();
|
|
121
|
-
for (const entry of entries) {
|
|
122
|
-
for (const [file, content] of [...entry.newFiles, ...entry.modifiedFileAdditions]) {
|
|
123
|
-
if (basename(normalizePathSlashes(file)) !== 'jar.mn')
|
|
124
|
-
continue;
|
|
125
|
-
for (const raw of content.split('\n')) {
|
|
126
|
-
const parsed = parseJarMnEntry(raw);
|
|
127
|
-
if (!parsed)
|
|
128
|
-
continue;
|
|
129
|
-
const resolved = resolvePathToken(carrierDir(file), parsed.source);
|
|
130
|
-
if (resolved?.exact !== undefined)
|
|
131
|
-
index.set(parsed.target, resolved.exact);
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
return index;
|
|
136
|
-
}
|
|
137
|
-
function customElementsReferences(file, content, jarTargets) {
|
|
138
|
-
const refs = [];
|
|
139
|
-
for (const raw of content.split('\n')) {
|
|
140
|
-
for (const url of raw.matchAll(/chrome:\/\/([\w.-]+)\/content\/([^"'\s)]+)/g)) {
|
|
141
|
-
const source = jarTargets.get(`content/${url[1] ?? ''}/${url[2] ?? ''}`);
|
|
142
|
-
if (source === undefined)
|
|
143
|
-
continue;
|
|
144
|
-
refs.push({
|
|
145
|
-
kind: 'custom-elements',
|
|
146
|
-
file,
|
|
147
|
-
line: raw.trim(),
|
|
148
|
-
token: url[0],
|
|
149
|
-
exact: source,
|
|
150
|
-
matches: (candidate) => candidate === source,
|
|
151
|
-
});
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
return refs;
|
|
155
|
-
}
|
|
156
|
-
/** True for a jar.mn, moz.build or test manifest, the carriers {@link resolveCarrierReferences} reads. */
|
|
157
|
-
export function isRegistrationCarrier(file) {
|
|
158
|
-
const name = basename(normalizePathSlashes(file));
|
|
159
|
-
return name === 'jar.mn' || name === 'moz.build' || TEST_MANIFEST_BASENAMES.has(name);
|
|
160
|
-
}
|
|
161
|
-
function carrierReferences(file, content) {
|
|
162
|
-
const name = basename(file);
|
|
163
|
-
if (name === 'jar.mn')
|
|
164
|
-
return jarMnReferences(file, content);
|
|
165
|
-
if (name === 'moz.build')
|
|
166
|
-
return mozBuildReferences(file, content);
|
|
167
|
-
if (TEST_MANIFEST_BASENAMES.has(name))
|
|
168
|
-
return testManifestReferences(file, content);
|
|
169
|
-
return [];
|
|
170
|
-
}
|
|
171
|
-
/**
|
|
172
|
-
* The engine paths named by the lines of one jar.mn, moz.build or test
|
|
173
|
-
* manifest, resolved the way this rule resolves them. Exported for a caller
|
|
174
|
-
* outside the queue lint (re-export's adjacency belt asks which files a
|
|
175
|
-
* patch's added registration lines name). A `customElements.js` chrome URL
|
|
176
|
-
* resolves only through the queue's jar.mn index, so it is not covered.
|
|
177
|
-
*
|
|
178
|
-
* @param rawPath - Engine-relative path of the carrier
|
|
179
|
-
* @param content - The carrier lines to read (typically the added ones)
|
|
180
|
-
* @returns One entry per resolvable token. `exact` is set when it has no wildcard.
|
|
181
|
-
*/
|
|
182
|
-
export function resolveCarrierReferences(rawPath, content) {
|
|
183
|
-
return carrierReferences(normalizePathSlashes(rawPath), content);
|
|
184
|
-
}
|
|
185
|
-
function referencesFor(entry, jarTargets) {
|
|
186
|
-
const refs = [];
|
|
187
|
-
for (const [rawPath, content] of [...entry.newFiles, ...entry.modifiedFileAdditions]) {
|
|
188
|
-
const file = normalizePathSlashes(rawPath);
|
|
189
|
-
if (basename(file) === 'customElements.js') {
|
|
190
|
-
refs.push(...customElementsReferences(file, content, jarTargets));
|
|
191
|
-
}
|
|
192
|
-
else {
|
|
193
|
-
refs.push(...carrierReferences(file, content));
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
return refs;
|
|
197
|
-
}
|
|
198
|
-
function isDeclared(entry, file, created) {
|
|
199
|
-
return (entry.metadata?.stagedDependencies?.registrations ?? []).some((registration) => normalizePathSlashes(registration.file) === file &&
|
|
200
|
-
normalizePathSlashes(registration.creates) === created);
|
|
201
|
-
}
|
|
202
|
-
/** The discharge command, in the exact shape the support-files arm prints. */
|
|
203
|
-
export function formatRegistrationDeclaration(patch, file, line, creates, owner) {
|
|
204
|
-
return (`fireforge patch staged-dependency ${patch} --add --kind registration ` +
|
|
205
|
-
`--file ${file} --line "${quoteRegistrationLine(line)}" ` +
|
|
206
|
-
`--creates ${creates} --owner ${owner} ${STAGED_DEPENDENCY_REASON_PLACEHOLDER}`);
|
|
207
|
-
}
|
|
208
|
-
/**
|
|
209
|
-
* Finds every undeclared forward registration in the extended carriers:
|
|
210
|
-
* a registration line a patch adds that names a file only a later-ordered
|
|
211
|
-
* patch creates. Creators come from `createdFiles` (the `new file mode`
|
|
212
|
-
* sections), never `filesAffected`.
|
|
213
|
-
*
|
|
214
|
-
* @param ctx - Queue in application order
|
|
215
|
-
* @returns One record per (patch, carrier, created file), first line quoted
|
|
216
|
-
*/
|
|
217
|
-
export function findExtendedForwardRegistrations(ctx) {
|
|
218
|
-
const jarTargets = buildJarTargetIndex(ctx.entries);
|
|
219
|
-
const creatorsByPath = new Map();
|
|
220
|
-
for (const entry of ctx.entries) {
|
|
221
|
-
for (const created of entry.createdFiles) {
|
|
222
|
-
const path = normalizePathSlashes(created);
|
|
223
|
-
const list = creatorsByPath.get(path) ?? [];
|
|
224
|
-
list.push(entry);
|
|
225
|
-
creatorsByPath.set(path, list);
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
const found = new Map();
|
|
229
|
-
const linesByKey = new Map();
|
|
230
|
-
for (const entry of ctx.entries) {
|
|
231
|
-
for (const ref of referencesFor(entry, jarTargets)) {
|
|
232
|
-
const candidates = ref.exact !== undefined
|
|
233
|
-
? (creatorsByPath.get(ref.exact) ?? []).map((owner) => [ref.exact ?? '', owner])
|
|
234
|
-
: [...creatorsByPath].flatMap(([path, owners]) => ref.matches(path) ? owners.map((owner) => [path, owner]) : []);
|
|
235
|
-
for (const [created, later] of candidates) {
|
|
236
|
-
if (!isLaterOwner(later, entry))
|
|
237
|
-
continue;
|
|
238
|
-
if (isDeclared(entry, ref.file, created))
|
|
239
|
-
continue;
|
|
240
|
-
const key = `${entry.filename}|${ref.file}|${created}|${later.filename}`;
|
|
241
|
-
const existing = found.get(key);
|
|
242
|
-
if (existing !== undefined) {
|
|
243
|
-
const lines = linesByKey.get(key) ?? new Set();
|
|
244
|
-
lines.add(ref.line);
|
|
245
|
-
linesByKey.set(key, lines);
|
|
246
|
-
existing.occurrences = lines.size;
|
|
247
|
-
continue;
|
|
248
|
-
}
|
|
249
|
-
linesByKey.set(key, new Set([ref.line]));
|
|
250
|
-
found.set(key, {
|
|
251
|
-
patch: entry.filename,
|
|
252
|
-
kind: ref.kind,
|
|
253
|
-
file: ref.file,
|
|
254
|
-
line: ref.line,
|
|
255
|
-
token: ref.token,
|
|
256
|
-
creates: created,
|
|
257
|
-
owner: later.filename,
|
|
258
|
-
occurrences: 1,
|
|
259
|
-
command: formatRegistrationDeclaration(entry.filename, ref.file, ref.line, created, later.filename),
|
|
260
|
-
});
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
|
-
return [...found.values()];
|
|
265
|
-
}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import type { PatchLintIssue } from '../types/commands/index.js';
|
|
2
|
-
import { type ForwardRegistration, type ForwardRegistrationScope } from './patch-lint-forward-registration-extended.js';
|
|
3
|
-
import type { PatchQueueForwardRegistrationEntry, PatchQueueView } from './patch-lint-queue-types.js';
|
|
4
|
-
/**
|
|
5
|
-
* One `support-files` entry, with the line the patch actually adds it on.
|
|
6
|
-
*
|
|
7
|
-
* The entry alone is not enough for the discharge command the rule prints:
|
|
8
|
-
* `--line` is compared, whitespace-trimmed, against the lines the patch
|
|
9
|
-
* adds, and a synthesised `support-files = ["<entry>"]` only ever matches a
|
|
10
|
-
* manifest whose array is single-line and single-entry. Carrying the source
|
|
11
|
-
* line keeps the remedy and the validation talking about the same text.
|
|
12
|
-
*/
|
|
13
|
-
export interface SupportFileEntry {
|
|
14
|
-
/** The entry as written inside the manifest (e.g. `fixtures/*.sqlite`). */
|
|
15
|
-
entry: string;
|
|
16
|
-
/** The first added line, whitespace-trimmed, that spells the entry out. */
|
|
17
|
-
line: string;
|
|
18
|
-
/**
|
|
19
|
-
* How many distinct added lines spell it out. Above one, the printed
|
|
20
|
-
* command quotes the first and says so: one declaration covers the file
|
|
21
|
-
* either way, because the declared check keys on file + creates.
|
|
22
|
-
*/
|
|
23
|
-
occurrences: number;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Extracts the `support-files` entries declared in `content`, each paired
|
|
27
|
-
* with the manifest line it is written on.
|
|
28
|
-
*
|
|
29
|
-
* Handles the TOML array on one line and spread over several, and the
|
|
30
|
-
* whitespace-separated `.ini` spelling. Anything else (a computed value, a
|
|
31
|
-
* shape this does not recognise) yields nothing, because a rule that
|
|
32
|
-
* guesses at a manifest it cannot parse refuses correct queues.
|
|
33
|
-
*
|
|
34
|
-
* Quoted tokens are matched per physical line rather than over the whole
|
|
35
|
-
* accumulated array body, so a multi-line array attributes each element to
|
|
36
|
-
* its own line. Entries are deduplicated: a manifest that lists the same
|
|
37
|
-
* file under two per-test sections needs one declaration, not two.
|
|
38
|
-
*/
|
|
39
|
-
export declare function extractSupportFileEntries(content: string): SupportFileEntry[];
|
|
40
|
-
/**
|
|
41
|
-
* Resolves one `support-files` entry, relative to its manifest's directory,
|
|
42
|
-
* into a matcher over engine-relative paths.
|
|
43
|
-
*
|
|
44
|
-
* Only a `*` inside a single path segment is expanded, the shape the
|
|
45
|
-
* downstream report uses (`fixtures/*.sqlite`). `**`, `!` exclusions and
|
|
46
|
-
* absolute `/`-rooted entries return undefined: they either cross directory
|
|
47
|
-
* boundaries or subtract, and a matcher that guessed at them would attribute
|
|
48
|
-
* a creation to the wrong manifest.
|
|
49
|
-
*/
|
|
50
|
-
export declare function buildSupportFileMatcher(manifestPath: string, entry: string): ((candidate: string) => boolean) | undefined;
|
|
51
|
-
/**
|
|
52
|
-
* Every undeclared forward registration in the queue, over the carriers
|
|
53
|
-
* `scope` selects: `support-files` (the default) or `extended` (adds
|
|
54
|
-
* jar.mn, moz.build, test-manifest sections and customElements.js; see
|
|
55
|
-
* `patch-lint-forward-registration-extended.ts`).
|
|
56
|
-
*
|
|
57
|
-
* @param ctx - Queue in application order
|
|
58
|
-
* @param scope - Which carriers to check
|
|
59
|
-
*/
|
|
60
|
-
export declare function collectForwardRegistrations(ctx: PatchQueueView<PatchQueueForwardRegistrationEntry>, scope?: ForwardRegistrationScope): ForwardRegistration[];
|
|
61
|
-
/**
|
|
62
|
-
* Flags every forward registration the queue's scope selects, unless the
|
|
63
|
-
* staged dependency is declared.
|
|
64
|
-
*
|
|
65
|
-
* @param ctx - Projected queue in application order, with its
|
|
66
|
-
* `forwardRegistration` scope (default `support-files`)
|
|
67
|
-
* @returns One issue per undeclared forward registration
|
|
68
|
-
*/
|
|
69
|
-
export declare function lintPatchQueueForwardRegistrations(ctx: PatchQueueView<PatchQueueForwardRegistrationEntry> & {
|
|
70
|
-
forwardRegistration?: ForwardRegistrationScope;
|
|
71
|
-
}): PatchLintIssue[];
|
|
@@ -1,266 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* Cross-patch lint rule: a test manifest that registers a file a
|
|
4
|
-
* later-ordered patch creates, without declaring the staged dependency.
|
|
5
|
-
*
|
|
6
|
-
* The import kind has had this arm since forward-import shipped. The
|
|
7
|
-
* registration kind never did. `--kind registration` metadata was only ever
|
|
8
|
-
* checked for staleness once declared, so a patch whose `xpcshell.toml`
|
|
9
|
-
* carried `support-files = ["fixtures/*.sqlite"]` for a fixture the next
|
|
10
|
-
* patch creates passed lint in both arms. Declaring the dependency and
|
|
11
|
-
* removing the declaration produced identical silence, so the gap was
|
|
12
|
-
* invisible rather than merely absent.
|
|
13
|
-
*
|
|
14
|
-
* Scope is narrow by default: test-manifest `support-files` only. The
|
|
15
|
-
* carriers whose target resolves without the build system (jar.mn pair
|
|
16
|
-
* lines, moz.build path tokens, test-manifest sections, customElements.js
|
|
17
|
-
* chrome URLs) are opt-in through `patchLint.forwardRegistration:
|
|
18
|
-
* "extended"` (see `patch-lint-forward-registration-extended.ts`), since a
|
|
19
|
-
* queue that predates them can carry such edges on a ratchet and a new
|
|
20
|
-
* error on install would red its gate. The staged-registration declaration
|
|
21
|
-
* remains the documented escape hatch for a deliberate stage.
|
|
22
|
-
*/
|
|
23
|
-
import { basename, dirname, posix } from 'node:path';
|
|
24
|
-
import { normalizePathSlashes } from '../utils/paths.js';
|
|
25
|
-
import { escapeRegex } from '../utils/regex.js';
|
|
26
|
-
import { findExtendedForwardRegistrations, formatRegistrationDeclaration, } from './patch-lint-forward-registration-extended.js';
|
|
27
|
-
import { isLaterOwner } from './patch-lint-staged-registration.js';
|
|
28
|
-
/**
|
|
29
|
-
* Manifest basenames whose `support-files` key registers auxiliary files
|
|
30
|
-
* for a test suite. Closed and documented on purpose: a pattern like
|
|
31
|
-
* "anything .toml" would sweep in Cargo and taskcluster manifests, whose
|
|
32
|
-
* `support-files`-shaped keys mean something else entirely.
|
|
33
|
-
*/
|
|
34
|
-
const TEST_MANIFEST_BASENAMES = new Set([
|
|
35
|
-
'xpcshell.toml',
|
|
36
|
-
'xpcshell.ini',
|
|
37
|
-
'mochitest.toml',
|
|
38
|
-
'mochitest.ini',
|
|
39
|
-
'browser.toml',
|
|
40
|
-
'browser.ini',
|
|
41
|
-
'chrome.toml',
|
|
42
|
-
'chrome.ini',
|
|
43
|
-
'a11y.toml',
|
|
44
|
-
'a11y.ini',
|
|
45
|
-
]);
|
|
46
|
-
/** True for a path whose basename is a recognised test manifest. */
|
|
47
|
-
function isTestManifestPath(path) {
|
|
48
|
-
return TEST_MANIFEST_BASENAMES.has(basename(normalizePathSlashes(path)));
|
|
49
|
-
}
|
|
50
|
-
/** Matches the start of a `support-files` assignment. */
|
|
51
|
-
const SUPPORT_FILES_PATTERN = /^\s*support-files\s*=\s*(.*)$/;
|
|
52
|
-
/**
|
|
53
|
-
* Extracts the `support-files` entries declared in `content`, each paired
|
|
54
|
-
* with the manifest line it is written on.
|
|
55
|
-
*
|
|
56
|
-
* Handles the TOML array on one line and spread over several, and the
|
|
57
|
-
* whitespace-separated `.ini` spelling. Anything else (a computed value, a
|
|
58
|
-
* shape this does not recognise) yields nothing, because a rule that
|
|
59
|
-
* guesses at a manifest it cannot parse refuses correct queues.
|
|
60
|
-
*
|
|
61
|
-
* Quoted tokens are matched per physical line rather than over the whole
|
|
62
|
-
* accumulated array body, so a multi-line array attributes each element to
|
|
63
|
-
* its own line. Entries are deduplicated: a manifest that lists the same
|
|
64
|
-
* file under two per-test sections needs one declaration, not two.
|
|
65
|
-
*/
|
|
66
|
-
export function extractSupportFileEntries(content) {
|
|
67
|
-
const lines = content.split('\n');
|
|
68
|
-
const order = [];
|
|
69
|
-
const sourceLines = new Map();
|
|
70
|
-
const record = (entry, source) => {
|
|
71
|
-
let seen = sourceLines.get(entry);
|
|
72
|
-
if (seen === undefined) {
|
|
73
|
-
seen = [];
|
|
74
|
-
sourceLines.set(entry, seen);
|
|
75
|
-
order.push(entry);
|
|
76
|
-
}
|
|
77
|
-
const trimmed = source.trim();
|
|
78
|
-
if (!seen.includes(trimmed))
|
|
79
|
-
seen.push(trimmed);
|
|
80
|
-
};
|
|
81
|
-
for (let i = 0; i < lines.length; i++) {
|
|
82
|
-
const raw = lines[i] ?? '';
|
|
83
|
-
const match = SUPPORT_FILES_PATTERN.exec(raw);
|
|
84
|
-
if (!match)
|
|
85
|
-
continue;
|
|
86
|
-
const head = match[1] ?? '';
|
|
87
|
-
if (!head.trimStart().startsWith('[')) {
|
|
88
|
-
// `.ini` spelling: whitespace-separated bare paths on one line.
|
|
89
|
-
for (const token of head.split(/\s+/).filter((t) => t.length > 0))
|
|
90
|
-
record(token, raw);
|
|
91
|
-
continue;
|
|
92
|
-
}
|
|
93
|
-
// TOML array: walk the physical lines until the closing bracket,
|
|
94
|
-
// bounded so an unterminated array in a malformed manifest cannot walk
|
|
95
|
-
// the file.
|
|
96
|
-
let body = head;
|
|
97
|
-
let scanned = 0;
|
|
98
|
-
let current = raw;
|
|
99
|
-
for (;;) {
|
|
100
|
-
for (const quoted of current.matchAll(/["']([^"']+)["']/g)) {
|
|
101
|
-
if (quoted[1] !== undefined)
|
|
102
|
-
record(quoted[1], current);
|
|
103
|
-
}
|
|
104
|
-
if (body.includes(']') || i + 1 >= lines.length || scanned >= 200)
|
|
105
|
-
break;
|
|
106
|
-
i += 1;
|
|
107
|
-
scanned += 1;
|
|
108
|
-
current = lines[i] ?? '';
|
|
109
|
-
body += `\n${current}`;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
return order.map((entry) => {
|
|
113
|
-
const seen = sourceLines.get(entry) ?? [];
|
|
114
|
-
return { entry, line: seen[0] ?? '', occurrences: seen.length };
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Resolves one `support-files` entry, relative to its manifest's directory,
|
|
119
|
-
* into a matcher over engine-relative paths.
|
|
120
|
-
*
|
|
121
|
-
* Only a `*` inside a single path segment is expanded, the shape the
|
|
122
|
-
* downstream report uses (`fixtures/*.sqlite`). `**`, `!` exclusions and
|
|
123
|
-
* absolute `/`-rooted entries return undefined: they either cross directory
|
|
124
|
-
* boundaries or subtract, and a matcher that guessed at them would attribute
|
|
125
|
-
* a creation to the wrong manifest.
|
|
126
|
-
*/
|
|
127
|
-
export function buildSupportFileMatcher(manifestPath, entry) {
|
|
128
|
-
if (entry.startsWith('!') || entry.includes('**') || entry.startsWith('/'))
|
|
129
|
-
return undefined;
|
|
130
|
-
const resolved = posix.normalize(posix.join(normalizePathSlashes(dirname(manifestPath)), normalizePathSlashes(entry)));
|
|
131
|
-
if (resolved.startsWith('..'))
|
|
132
|
-
return undefined;
|
|
133
|
-
if (!resolved.includes('*')) {
|
|
134
|
-
return (candidate) => normalizePathSlashes(candidate) === resolved;
|
|
135
|
-
}
|
|
136
|
-
const pattern = new RegExp(`^${resolved
|
|
137
|
-
.split('*')
|
|
138
|
-
.map((part) => escapeRegex(part))
|
|
139
|
-
.join('[^/]*')}$`);
|
|
140
|
-
return (candidate) => pattern.test(normalizePathSlashes(candidate));
|
|
141
|
-
}
|
|
142
|
-
/** True when this patch already declares the staged registration. */
|
|
143
|
-
function isDeclared(entry, manifestPath, createdPath) {
|
|
144
|
-
return (entry.metadata?.stagedDependencies?.registrations ?? []).some((registration) => normalizePathSlashes(registration.file) === normalizePathSlashes(manifestPath) &&
|
|
145
|
-
normalizePathSlashes(registration.creates) === normalizePathSlashes(createdPath));
|
|
146
|
-
}
|
|
147
|
-
/**
|
|
148
|
-
* Finds every `support-files` registration a patch introduces that names a
|
|
149
|
-
* file only a later-ordered patch creates, unless the staged dependency is
|
|
150
|
-
* declared.
|
|
151
|
-
*
|
|
152
|
-
* @param ctx - Projected queue in application order
|
|
153
|
-
* @returns One record per (patch, manifest, entry, created file)
|
|
154
|
-
*/
|
|
155
|
-
function findSupportFileForwardRegistrations(ctx) {
|
|
156
|
-
const found = [];
|
|
157
|
-
for (const entry of ctx.entries) {
|
|
158
|
-
// Both arms: a manifest this patch creates and one it modifies can each
|
|
159
|
-
// introduce a registration line.
|
|
160
|
-
const manifests = [
|
|
161
|
-
...entry.newFiles,
|
|
162
|
-
...entry.modifiedFileAdditions,
|
|
163
|
-
].filter(([path]) => isTestManifestPath(path));
|
|
164
|
-
for (const [manifestPath, content] of manifests) {
|
|
165
|
-
for (const { entry: raw, line: addedLine, occurrences } of extractSupportFileEntries(content)) {
|
|
166
|
-
const matches = buildSupportFileMatcher(manifestPath, raw);
|
|
167
|
-
if (matches === undefined)
|
|
168
|
-
continue;
|
|
169
|
-
for (const later of ctx.entries) {
|
|
170
|
-
// Same predicate the declared-registration arm validates against,
|
|
171
|
-
// tiebreak included: two spellings of "later" would let one rule
|
|
172
|
-
// flag a pair the other considers already satisfied.
|
|
173
|
-
if (!isLaterOwner(later, entry))
|
|
174
|
-
continue;
|
|
175
|
-
for (const created of later.createdFiles) {
|
|
176
|
-
if (!matches(created))
|
|
177
|
-
continue;
|
|
178
|
-
if (isDeclared(entry, manifestPath, created))
|
|
179
|
-
continue;
|
|
180
|
-
found.push({
|
|
181
|
-
patch: entry.filename,
|
|
182
|
-
kind: 'support-files',
|
|
183
|
-
file: manifestPath,
|
|
184
|
-
// `--line` is the line as the patch adds it, which is what the
|
|
185
|
-
// declared arm compares and what `--remove` matches on.
|
|
186
|
-
// Synthesising `support-files = ["<entry>"]` instead only ever
|
|
187
|
-
// matched a single-line single-entry array, so the pasted
|
|
188
|
-
// command left the declaring patch red with
|
|
189
|
-
// staged-dependency-unused.
|
|
190
|
-
line: addedLine,
|
|
191
|
-
token: raw,
|
|
192
|
-
creates: created,
|
|
193
|
-
owner: later.filename,
|
|
194
|
-
occurrences,
|
|
195
|
-
command: formatRegistrationDeclaration(entry.filename, manifestPath, addedLine, created, later.filename),
|
|
196
|
-
});
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
return found;
|
|
203
|
-
}
|
|
204
|
-
/**
|
|
205
|
-
* Every undeclared forward registration in the queue, over the carriers
|
|
206
|
-
* `scope` selects: `support-files` (the default) or `extended` (adds
|
|
207
|
-
* jar.mn, moz.build, test-manifest sections and customElements.js; see
|
|
208
|
-
* `patch-lint-forward-registration-extended.ts`).
|
|
209
|
-
*
|
|
210
|
-
* @param ctx - Queue in application order
|
|
211
|
-
* @param scope - Which carriers to check
|
|
212
|
-
*/
|
|
213
|
-
export function collectForwardRegistrations(ctx, scope = 'support-files') {
|
|
214
|
-
const found = findSupportFileForwardRegistrations(ctx);
|
|
215
|
-
if (scope === 'extended')
|
|
216
|
-
found.push(...findExtendedForwardRegistrations(ctx));
|
|
217
|
-
return found;
|
|
218
|
-
}
|
|
219
|
-
const KIND_PHRASES = {
|
|
220
|
-
'support-files': 'as a support file',
|
|
221
|
-
'jar-mn': 'for packaging',
|
|
222
|
-
'moz-build': 'in the build',
|
|
223
|
-
'test-manifest': 'as a test',
|
|
224
|
-
'custom-elements': 'as a custom element',
|
|
225
|
-
};
|
|
226
|
-
/**
|
|
227
|
-
* Flags every forward registration the queue's scope selects, unless the
|
|
228
|
-
* staged dependency is declared.
|
|
229
|
-
*
|
|
230
|
-
* @param ctx - Projected queue in application order, with its
|
|
231
|
-
* `forwardRegistration` scope (default `support-files`)
|
|
232
|
-
* @returns One issue per undeclared forward registration
|
|
233
|
-
*/
|
|
234
|
-
export function lintPatchQueueForwardRegistrations(ctx) {
|
|
235
|
-
return collectForwardRegistrations(ctx, ctx.forwardRegistration).map((found) => {
|
|
236
|
-
const ambiguity = found.occurrences > 1
|
|
237
|
-
? ` (the entry is spelled out on ${found.occurrences} added lines here; ` +
|
|
238
|
-
'the first is quoted, and one declaration covers the file either way ' +
|
|
239
|
-
'because the declared check keys on --file and --creates.)'
|
|
240
|
-
: '';
|
|
241
|
-
return {
|
|
242
|
-
file: found.file,
|
|
243
|
-
check: 'forward-registration',
|
|
244
|
-
patches: [found.patch],
|
|
245
|
-
fingerprint: `forward-registration|${found.patch}|${found.file}|${found.token}|${found.creates}|${found.owner}`,
|
|
246
|
-
stagedDeclarations: [
|
|
247
|
-
{
|
|
248
|
-
patch: found.patch,
|
|
249
|
-
kind: 'registration',
|
|
250
|
-
file: found.file,
|
|
251
|
-
line: found.line,
|
|
252
|
-
creates: found.creates,
|
|
253
|
-
owner: found.owner,
|
|
254
|
-
},
|
|
255
|
-
],
|
|
256
|
-
message: `${found.file} in ${found.patch} registers "${found.token}" ${KIND_PHRASES[found.kind]}, ` +
|
|
257
|
-
`but ${found.creates} is created by the later patch ${found.owner}. ` +
|
|
258
|
-
'Applying the queue up to this patch leaves the registration dangling. ' +
|
|
259
|
-
'Reorder the patches so the file is created first, move the registration into ' +
|
|
260
|
-
'the later patch, or declare the intentional staged dependency with: ' +
|
|
261
|
-
found.command +
|
|
262
|
-
ambiguity,
|
|
263
|
-
severity: 'error',
|
|
264
|
-
};
|
|
265
|
-
});
|
|
266
|
-
}
|