@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,260 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* Removal of custom element registrations from customElements.js.
|
|
4
|
-
*
|
|
5
|
-
* Uses the same AST parser as the add path (`furnace-registration-ast.ts`) to
|
|
6
|
-
* locate and delete registration entries. A line-by-line scan with a bounded
|
|
7
|
-
* bracket match only works against Firefox's stock formatting and fails
|
|
8
|
-
* silently on a hand-reformatted customElements.js. AST-based bracket
|
|
9
|
-
* matching does not depend on the file's formatting.
|
|
10
|
-
*
|
|
11
|
-
* Contract:
|
|
12
|
-
* - Idempotent: if the tag is not registered, the file is left unchanged.
|
|
13
|
-
* - Non-destructive on parse failure: if customElements.js cannot be parsed,
|
|
14
|
-
* the file is left untouched rather than falling through to a line-based
|
|
15
|
-
* heuristic that could delete the wrong range.
|
|
16
|
-
* - Two registration shapes are recognised:
|
|
17
|
-
* (A) Standalone statement:
|
|
18
|
-
* customElements.setElementCreationCallback("tag", ...);
|
|
19
|
-
* (B) Entry inside a `for (... of [ ... ])` registration array, or an
|
|
20
|
-
* array declared by name and iterated with `for (... of NAME)`:
|
|
21
|
-
* ["tag", "chrome://..."]
|
|
22
|
-
* Both are deleted together with any trailing comma and newline so the
|
|
23
|
-
* resulting file is still valid JavaScript.
|
|
24
|
-
*/
|
|
25
|
-
import { join } from 'node:path';
|
|
26
|
-
import MagicString from 'magic-string';
|
|
27
|
-
import { pathExists, readText, writeText } from '../utils/fs.js';
|
|
28
|
-
import { asEstree, parseScript, walkAST } from './ast-utils.js';
|
|
29
|
-
import { CUSTOM_ELEMENTS_JS } from './furnace-constants.js';
|
|
30
|
-
/**
|
|
31
|
-
* Expands `[start, end)` to consume a trailing comma and any whitespace up
|
|
32
|
-
* to (and including) the next newline. This keeps the surrounding file
|
|
33
|
-
* layout stable: deleting a list entry should not leave a dangling comma
|
|
34
|
-
* behind, and deleting an expression statement should not leave a blank
|
|
35
|
-
* line where the statement stood.
|
|
36
|
-
*/
|
|
37
|
-
function expandRemovalRange(content, start, end) {
|
|
38
|
-
let expandedEnd = end;
|
|
39
|
-
// Walk past horizontal whitespace so a trailing comma is reachable even
|
|
40
|
-
// when the source has `[...] ,` or similar.
|
|
41
|
-
while (expandedEnd < content.length &&
|
|
42
|
-
(content[expandedEnd] === ' ' || content[expandedEnd] === '\t')) {
|
|
43
|
-
expandedEnd++;
|
|
44
|
-
}
|
|
45
|
-
if (content[expandedEnd] === ',') {
|
|
46
|
-
expandedEnd++;
|
|
47
|
-
}
|
|
48
|
-
else if (content[expandedEnd] === ';') {
|
|
49
|
-
expandedEnd++;
|
|
50
|
-
}
|
|
51
|
-
// Consume a trailing inline comment up to end-of-line so we do not leave
|
|
52
|
-
// the comment marooned on its own line. A leading inline comment is left
|
|
53
|
-
// alone, because it may belong to the next entry.
|
|
54
|
-
while (expandedEnd < content.length &&
|
|
55
|
-
(content[expandedEnd] === ' ' || content[expandedEnd] === '\t')) {
|
|
56
|
-
expandedEnd++;
|
|
57
|
-
}
|
|
58
|
-
if (content[expandedEnd] === '/' && content[expandedEnd + 1] === '/') {
|
|
59
|
-
while (expandedEnd < content.length && content[expandedEnd] !== '\n') {
|
|
60
|
-
expandedEnd++;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
if (content[expandedEnd] === '\n') {
|
|
64
|
-
expandedEnd++;
|
|
65
|
-
}
|
|
66
|
-
// Also consume leading whitespace on the line the removal starts on, so
|
|
67
|
-
// indentation does not survive as a blank-looking line.
|
|
68
|
-
let expandedStart = start;
|
|
69
|
-
while (expandedStart > 0) {
|
|
70
|
-
const prev = content[expandedStart - 1];
|
|
71
|
-
if (prev === ' ' || prev === '\t') {
|
|
72
|
-
expandedStart--;
|
|
73
|
-
continue;
|
|
74
|
-
}
|
|
75
|
-
break;
|
|
76
|
-
}
|
|
77
|
-
// If the removal now starts at the beginning of a line and the preceding
|
|
78
|
-
// line is blank, consume that blank line as well. This matches the older
|
|
79
|
-
// line-based implementation's "eat one leading blank" behaviour so that
|
|
80
|
-
// removing a callback block from between two blank-line-separated
|
|
81
|
-
// sections does not leave a doubled-up gap behind.
|
|
82
|
-
if (expandedStart > 0 &&
|
|
83
|
-
content[expandedStart - 1] === '\n' &&
|
|
84
|
-
expandedStart >= 2 &&
|
|
85
|
-
content[expandedStart - 2] === '\n') {
|
|
86
|
-
expandedStart--;
|
|
87
|
-
}
|
|
88
|
-
return { start: expandedStart, end: expandedEnd };
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Returns true if `node` represents a `[tag, module]` entry inside a
|
|
92
|
-
* registration array, i.e. an `ArrayExpression` whose first element is a
|
|
93
|
-
* string literal equal to `tagName`. Callers still have to verify the
|
|
94
|
-
* parent is the outer registration array so we do not accidentally delete
|
|
95
|
-
* an arbitrary user-owned `["moz-card", ...]` literal elsewhere in the file.
|
|
96
|
-
*/
|
|
97
|
-
function isEntryArrayFor(node, tagName) {
|
|
98
|
-
if (!node || node.type !== 'ArrayExpression')
|
|
99
|
-
return false;
|
|
100
|
-
const [first] = node.elements;
|
|
101
|
-
if (!first || first.type !== 'Literal')
|
|
102
|
-
return false;
|
|
103
|
-
const literal = first;
|
|
104
|
-
return literal.value === tagName;
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Returns true if `call` is `customElements.setElementCreationCallback(tagName, ...)`
|
|
108
|
-
* (optionally prefixed with `lazy.` or similar member chain). We only match
|
|
109
|
-
* the property name rather than the full callee chain so unusual-but-valid
|
|
110
|
-
* receivers (`lazy.customElements…`, `this.customElements…`) still count.
|
|
111
|
-
*/
|
|
112
|
-
function isStandaloneCallbackCallFor(call, tagName) {
|
|
113
|
-
if (call.callee.type !== 'MemberExpression')
|
|
114
|
-
return false;
|
|
115
|
-
const prop = call.callee.property;
|
|
116
|
-
if (prop.type !== 'Identifier' || prop.name !== 'setElementCreationCallback')
|
|
117
|
-
return false;
|
|
118
|
-
const [tagArg] = call.arguments;
|
|
119
|
-
if (!tagArg || tagArg.type !== 'Literal')
|
|
120
|
-
return false;
|
|
121
|
-
return tagArg.value === tagName;
|
|
122
|
-
}
|
|
123
|
-
/**
|
|
124
|
-
* Names of the identifiers used as the right-hand side of a `for (... of X)`
|
|
125
|
-
* loop. A registration list declared as `const ELEMENTS = [...]` and
|
|
126
|
-
* iterated by name is a registration array just like an inline literal: the
|
|
127
|
-
* add path (`addCustomElementRegistration`) has always written into
|
|
128
|
-
* it, so the remove and rename paths must find entries there too or a
|
|
129
|
-
* rename leaves the old entry behind.
|
|
130
|
-
*/
|
|
131
|
-
function collectForOfIdentifiers(ast) {
|
|
132
|
-
const names = new Set();
|
|
133
|
-
walkAST(ast, {
|
|
134
|
-
enter(node) {
|
|
135
|
-
if (node.type !== 'ForOfStatement')
|
|
136
|
-
return;
|
|
137
|
-
const right = asEstree(node).right;
|
|
138
|
-
if (right.type === 'Identifier')
|
|
139
|
-
names.add(right.name);
|
|
140
|
-
},
|
|
141
|
-
});
|
|
142
|
-
return names;
|
|
143
|
-
}
|
|
144
|
-
/** True when `parent`/`grandparent` make an array a registration list. */
|
|
145
|
-
function isRegistrationList(parent, grandparent, forOfIdentifiers) {
|
|
146
|
-
if (parent?.type !== 'ArrayExpression' || !grandparent)
|
|
147
|
-
return false;
|
|
148
|
-
if (grandparent.type === 'ForOfStatement')
|
|
149
|
-
return true;
|
|
150
|
-
if (grandparent.type !== 'VariableDeclarator')
|
|
151
|
-
return false;
|
|
152
|
-
const id = asEstree(grandparent).id;
|
|
153
|
-
return id.type === 'Identifier' && forOfIdentifiers.has(id.name);
|
|
154
|
-
}
|
|
155
|
-
/**
|
|
156
|
-
* Walks the AST and returns the source range of every registration of
|
|
157
|
-
* `tagName`: each `[tag, module]` entry of a registration list, and each
|
|
158
|
-
* statement enclosing a `setElementCreationCallback(tag, ...)` call.
|
|
159
|
-
* Ancestor tracking lets us tell an "entry" array from a random
|
|
160
|
-
* `["moz-foo", ...]` literal (only direct children of a registration list
|
|
161
|
-
* are entries). Shared by removal and the in-place rename.
|
|
162
|
-
*
|
|
163
|
-
* @param ast - Parsed customElements.js
|
|
164
|
-
* @param tagName - Tag whose registrations to find
|
|
165
|
-
* @returns Unexpanded `[start, end)` ranges, in source order
|
|
166
|
-
*/
|
|
167
|
-
export function findRegistrationRanges(ast, tagName) {
|
|
168
|
-
const ranges = [];
|
|
169
|
-
const ancestors = [];
|
|
170
|
-
const forOfIdentifiers = collectForOfIdentifiers(ast);
|
|
171
|
-
walkAST(ast, {
|
|
172
|
-
enter(node) {
|
|
173
|
-
// Entry array: [tag, module] inside a registration list, either the
|
|
174
|
-
// for-of array literal itself or an array declared by name and
|
|
175
|
-
// iterated by a for-of loop.
|
|
176
|
-
if (node.type === 'ArrayExpression' && isEntryArrayFor(node, tagName)) {
|
|
177
|
-
const parent = ancestors[ancestors.length - 1];
|
|
178
|
-
const grandparent = ancestors[ancestors.length - 2];
|
|
179
|
-
if (isRegistrationList(parent, grandparent, forOfIdentifiers)) {
|
|
180
|
-
ranges.push({ start: node.start, end: node.end });
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
// Standalone call: customElements.setElementCreationCallback(tag, …)
|
|
184
|
-
if (node.type === 'CallExpression') {
|
|
185
|
-
const call = asEstree(node);
|
|
186
|
-
if (isStandaloneCallbackCallFor(call, tagName)) {
|
|
187
|
-
// Find the enclosing statement so we can delete `call(...);` as
|
|
188
|
-
// a unit, not just the call expression body.
|
|
189
|
-
let enclosing = null;
|
|
190
|
-
for (let i = ancestors.length - 1; i >= 0; i--) {
|
|
191
|
-
const ancestor = ancestors[i];
|
|
192
|
-
if (!ancestor)
|
|
193
|
-
continue;
|
|
194
|
-
if (ancestor.type === 'ExpressionStatement' ||
|
|
195
|
-
ancestor.type === 'VariableDeclaration') {
|
|
196
|
-
enclosing = asEstree(ancestor);
|
|
197
|
-
break;
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
const target = enclosing ?? call;
|
|
201
|
-
ranges.push({ start: target.start, end: target.end });
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
|
-
ancestors.push(node);
|
|
205
|
-
},
|
|
206
|
-
leave() {
|
|
207
|
-
ancestors.pop();
|
|
208
|
-
},
|
|
209
|
-
});
|
|
210
|
-
return ranges;
|
|
211
|
-
}
|
|
212
|
-
/**
|
|
213
|
-
* Removes a custom element registration from customElements.js.
|
|
214
|
-
*
|
|
215
|
-
* This operation is idempotent: if the tag is not registered or the file
|
|
216
|
-
* does not exist, nothing happens. If the file exists but cannot be parsed,
|
|
217
|
-
* the file is left unchanged rather than fall back to a line-based
|
|
218
|
-
* heuristic. A corrupted customElements.js is a doctor problem, not
|
|
219
|
-
* something `furnace remove` should "helpfully" edit around.
|
|
220
|
-
*
|
|
221
|
-
* @param engineDir - Path to the Firefox engine source root
|
|
222
|
-
* @param tagName - Custom element tag name to remove
|
|
223
|
-
*/
|
|
224
|
-
export async function removeCustomElementRegistration(engineDir, tagName) {
|
|
225
|
-
const filePath = join(engineDir, CUSTOM_ELEMENTS_JS);
|
|
226
|
-
if (!(await pathExists(filePath))) {
|
|
227
|
-
return;
|
|
228
|
-
}
|
|
229
|
-
const content = await readText(filePath);
|
|
230
|
-
// Cheap pre-check: if the tag literal never appears in the file there is
|
|
231
|
-
// nothing to remove and we avoid the cost of parsing a large file on the
|
|
232
|
-
// hot path of a no-op remove.
|
|
233
|
-
if (!content.includes(`"${tagName}"`) && !content.includes(`'${tagName}'`)) {
|
|
234
|
-
return;
|
|
235
|
-
}
|
|
236
|
-
let ast;
|
|
237
|
-
try {
|
|
238
|
-
ast = parseScript(content);
|
|
239
|
-
}
|
|
240
|
-
catch {
|
|
241
|
-
// An unparsable customElements.js is left untouched on purpose: this
|
|
242
|
-
// function only removes registrations, and editing a file it cannot parse
|
|
243
|
-
// risks corrupting it. The caller's regex fallback handles the retry.
|
|
244
|
-
return;
|
|
245
|
-
}
|
|
246
|
-
const ranges = findRegistrationRanges(ast, tagName).map((range) => expandRemovalRange(content, range.start, range.end));
|
|
247
|
-
if (ranges.length === 0) {
|
|
248
|
-
return;
|
|
249
|
-
}
|
|
250
|
-
// Apply all removals in a single MagicString pass. MagicString tracks
|
|
251
|
-
// original offsets so the ranges do not need to be sorted or reversed.
|
|
252
|
-
const ms = new MagicString(content);
|
|
253
|
-
for (const range of ranges) {
|
|
254
|
-
ms.remove(range.start, range.end);
|
|
255
|
-
}
|
|
256
|
-
const next = ms.toString();
|
|
257
|
-
if (next !== content) {
|
|
258
|
-
await writeText(filePath, next);
|
|
259
|
-
}
|
|
260
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* In-place rename of a custom element registration in customElements.js.
|
|
3
|
-
*
|
|
4
|
-
* Removing the old entry and adding a new one would, on a registration
|
|
5
|
-
* list the remove path cannot see, leave the old entry beside the new one,
|
|
6
|
-
* and the new entry would lack the project marker every sibling line
|
|
7
|
-
* carries (`// <MARKER>:`), so the next lint would flag it as an unmarked
|
|
8
|
-
* engine edit. Rewriting the tag and module
|
|
9
|
-
* literals inside the existing entry keeps the entry's position, layout and
|
|
10
|
-
* trailing marker comments exactly as they were.
|
|
11
|
-
*/
|
|
12
|
-
/**
|
|
13
|
-
* Renames `oldTag`'s registration in customElements.js in place.
|
|
14
|
-
*
|
|
15
|
-
* Returns false, writing nothing, when the file is missing or unparsable,
|
|
16
|
-
* holds no registration for `oldTag`, or already registers `newTag` (an
|
|
17
|
-
* in-place rewrite would then register it twice); the caller then falls
|
|
18
|
-
* back to remove-and-add, whose add is idempotent. Never parses with a line-based heuristic: an unparsable
|
|
19
|
-
* file is a doctor problem, not something a rename edits around.
|
|
20
|
-
*
|
|
21
|
-
* @param engineDir - Path to the Firefox engine source root
|
|
22
|
-
* @param oldTag - Tag being renamed away from
|
|
23
|
-
* @param newTag - Tag being renamed to
|
|
24
|
-
* @returns True when at least one registration was rewritten
|
|
25
|
-
*/
|
|
26
|
-
export declare function renameCustomElementRegistration(engineDir: string, oldTag: string, newTag: string): Promise<boolean>;
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* In-place rename of a custom element registration in customElements.js.
|
|
4
|
-
*
|
|
5
|
-
* Removing the old entry and adding a new one would, on a registration
|
|
6
|
-
* list the remove path cannot see, leave the old entry beside the new one,
|
|
7
|
-
* and the new entry would lack the project marker every sibling line
|
|
8
|
-
* carries (`// <MARKER>:`), so the next lint would flag it as an unmarked
|
|
9
|
-
* engine edit. Rewriting the tag and module
|
|
10
|
-
* literals inside the existing entry keeps the entry's position, layout and
|
|
11
|
-
* trailing marker comments exactly as they were.
|
|
12
|
-
*/
|
|
13
|
-
import { join } from 'node:path';
|
|
14
|
-
import MagicString from 'magic-string';
|
|
15
|
-
import { pathExists, readText, writeText } from '../utils/fs.js';
|
|
16
|
-
import { escapeRegex } from '../utils/regex.js';
|
|
17
|
-
import { parseScript } from './ast-utils.js';
|
|
18
|
-
import { CUSTOM_ELEMENTS_JS } from './furnace-constants.js';
|
|
19
|
-
import { isTagAlreadyRegistered } from './furnace-registration-ast.js';
|
|
20
|
-
import { findRegistrationRanges } from './furnace-registration-remove.js';
|
|
21
|
-
/**
|
|
22
|
-
* Rewrites the old tag's literals inside one registration's source: the
|
|
23
|
-
* quoted tag itself and the module file name in its chrome:// URI.
|
|
24
|
-
* Everything else in the range (indentation, line breaks, comments between
|
|
25
|
-
* elements) is left byte-for-byte.
|
|
26
|
-
*/
|
|
27
|
-
function renameRegistrationSource(source, oldTag, newTag) {
|
|
28
|
-
const escaped = escapeRegex(oldTag);
|
|
29
|
-
return source
|
|
30
|
-
.replace(new RegExp(`(["'])${escaped}\\1`, 'g'), `$1${newTag}$1`)
|
|
31
|
-
.replace(new RegExp(`/${escaped}(\\.m?js["'])`, 'g'), `/${newTag}$1`);
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Renames `oldTag`'s registration in customElements.js in place.
|
|
35
|
-
*
|
|
36
|
-
* Returns false, writing nothing, when the file is missing or unparsable,
|
|
37
|
-
* holds no registration for `oldTag`, or already registers `newTag` (an
|
|
38
|
-
* in-place rewrite would then register it twice); the caller then falls
|
|
39
|
-
* back to remove-and-add, whose add is idempotent. Never parses with a line-based heuristic: an unparsable
|
|
40
|
-
* file is a doctor problem, not something a rename edits around.
|
|
41
|
-
*
|
|
42
|
-
* @param engineDir - Path to the Firefox engine source root
|
|
43
|
-
* @param oldTag - Tag being renamed away from
|
|
44
|
-
* @param newTag - Tag being renamed to
|
|
45
|
-
* @returns True when at least one registration was rewritten
|
|
46
|
-
*/
|
|
47
|
-
export async function renameCustomElementRegistration(engineDir, oldTag, newTag) {
|
|
48
|
-
const filePath = join(engineDir, CUSTOM_ELEMENTS_JS);
|
|
49
|
-
if (!(await pathExists(filePath)))
|
|
50
|
-
return false;
|
|
51
|
-
const content = await readText(filePath);
|
|
52
|
-
if (!content.includes(`"${oldTag}"`) && !content.includes(`'${oldTag}'`))
|
|
53
|
-
return false;
|
|
54
|
-
if (isTagAlreadyRegistered(content, newTag))
|
|
55
|
-
return false;
|
|
56
|
-
let ranges;
|
|
57
|
-
try {
|
|
58
|
-
ranges = findRegistrationRanges(parseScript(content), oldTag);
|
|
59
|
-
}
|
|
60
|
-
catch {
|
|
61
|
-
return false;
|
|
62
|
-
}
|
|
63
|
-
if (ranges.length === 0)
|
|
64
|
-
return false;
|
|
65
|
-
const ms = new MagicString(content);
|
|
66
|
-
for (const range of ranges) {
|
|
67
|
-
const source = content.slice(range.start, range.end);
|
|
68
|
-
const renamed = renameRegistrationSource(source, oldTag, newTag);
|
|
69
|
-
if (renamed !== source)
|
|
70
|
-
ms.overwrite(range.start, range.end, renamed);
|
|
71
|
-
}
|
|
72
|
-
const next = ms.toString();
|
|
73
|
-
if (next === content)
|
|
74
|
-
return false;
|
|
75
|
-
await writeText(filePath, next);
|
|
76
|
-
return true;
|
|
77
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared validation for furnace custom element registration placement.
|
|
3
|
-
* Shared by the AST registration editor and the registration validator to
|
|
4
|
-
* avoid duplicating logic.
|
|
5
|
-
*/
|
|
6
|
-
/**
|
|
7
|
-
* Regex for valid custom element tag names. A valid name is lowercase, starts
|
|
8
|
-
* with a letter, and contains one or more hyphen-separated groups where each
|
|
9
|
-
* group is a non-empty alphanumeric run. Consecutive hyphens and trailing
|
|
10
|
-
* hyphens are both rejected. Kept in sync with the HTML custom element spec
|
|
11
|
-
* requirement that a name contain at least one hyphen.
|
|
12
|
-
*
|
|
13
|
-
* A single shared constant is used by every furnace authoring path
|
|
14
|
-
* (`furnace create`, `furnace override`, and the AST registration helper) so
|
|
15
|
-
* that a name accepted by one command cannot be rejected by another.
|
|
16
|
-
*/
|
|
17
|
-
export declare const CUSTOM_ELEMENT_TAG_PATTERN: RegExp;
|
|
18
|
-
/** Human-readable description of the tag-name rules, for CLI error messages. */
|
|
19
|
-
export declare const CUSTOM_ELEMENT_TAG_RULES = "must be lowercase, start with a letter, and use hyphens to separate non-empty alphanumeric groups (e.g., \"my-widget\")";
|
|
20
|
-
/**
|
|
21
|
-
* Validates that a tag name conforms to custom element naming requirements.
|
|
22
|
-
* @throws FurnaceError if the tag name is invalid
|
|
23
|
-
*/
|
|
24
|
-
export declare function validateTagName(tagName: string): void;
|
|
25
|
-
/**
|
|
26
|
-
* Returns why `tagName` is invalid, or `undefined` when it is fine.
|
|
27
|
-
*
|
|
28
|
-
* The message-returning half of {@link validateTagName}, for callers that
|
|
29
|
-
* must not throw, specifically clack `validate` callbacks, which expect a
|
|
30
|
-
* returned string and re-prompt on it. Passing the throwing form to one
|
|
31
|
-
* makes an invalid tag name escape clack's validation loop as a
|
|
32
|
-
* `FurnaceError`, killing the prompt instead of showing the rule inline.
|
|
33
|
-
*
|
|
34
|
-
* @param tagName - Candidate custom element tag name
|
|
35
|
-
* @returns The rule violation, or undefined when the name is valid
|
|
36
|
-
*/
|
|
37
|
-
export declare function describeTagNameProblem(tagName: string): string | undefined;
|
|
38
|
-
/**
|
|
39
|
-
* Validates that a registration entry landed in the correct block
|
|
40
|
-
* (Pattern A = loadSubScript, Pattern B = DOMContentLoaded/importESModule).
|
|
41
|
-
*
|
|
42
|
-
* @param result - The full file content after insertion
|
|
43
|
-
* @param tagName - The tag that was inserted
|
|
44
|
-
* @param isESModule - Whether the module uses ESM (Pattern B) or not (Pattern A)
|
|
45
|
-
*/
|
|
46
|
-
export declare function validateRegistrationPlacement(result: string, tagName: string, isESModule: boolean): void;
|
|
47
|
-
/**
|
|
48
|
-
* Returns whether a tag appears in the correct customElements.js placement.
|
|
49
|
-
* ESM entries may either appear textually inside/after DOMContentLoaded or
|
|
50
|
-
* inside an array declared before DOMContentLoaded and consumed by a for-of
|
|
51
|
-
* loop inside the listener, as Firefox 152 Beta does for acornElements.
|
|
52
|
-
*/
|
|
53
|
-
export declare function isTagInCorrectCustomElementsPlacement(content: string, tagName: string, isESModule: boolean): boolean;
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
/**
|
|
3
|
-
* Shared validation for furnace custom element registration placement.
|
|
4
|
-
* Shared by the AST registration editor and the registration validator to
|
|
5
|
-
* avoid duplicating logic.
|
|
6
|
-
*/
|
|
7
|
-
import { FurnaceError } from '../errors/furnace.js';
|
|
8
|
-
import { escapeRegex, stripJsComments } from '../utils/regex.js';
|
|
9
|
-
/**
|
|
10
|
-
* Regex for valid custom element tag names. A valid name is lowercase, starts
|
|
11
|
-
* with a letter, and contains one or more hyphen-separated groups where each
|
|
12
|
-
* group is a non-empty alphanumeric run. Consecutive hyphens and trailing
|
|
13
|
-
* hyphens are both rejected. Kept in sync with the HTML custom element spec
|
|
14
|
-
* requirement that a name contain at least one hyphen.
|
|
15
|
-
*
|
|
16
|
-
* A single shared constant is used by every furnace authoring path
|
|
17
|
-
* (`furnace create`, `furnace override`, and the AST registration helper) so
|
|
18
|
-
* that a name accepted by one command cannot be rejected by another.
|
|
19
|
-
*/
|
|
20
|
-
export const CUSTOM_ELEMENT_TAG_PATTERN = /^[a-z][a-z0-9]*(-[a-z0-9]+)+$/;
|
|
21
|
-
/** Human-readable description of the tag-name rules, for CLI error messages. */
|
|
22
|
-
export const CUSTOM_ELEMENT_TAG_RULES = 'must be lowercase, start with a letter, and use hyphens to separate non-empty alphanumeric groups (e.g., "my-widget")';
|
|
23
|
-
/**
|
|
24
|
-
* Validates that a tag name conforms to custom element naming requirements.
|
|
25
|
-
* @throws FurnaceError if the tag name is invalid
|
|
26
|
-
*/
|
|
27
|
-
export function validateTagName(tagName) {
|
|
28
|
-
const problem = describeTagNameProblem(tagName);
|
|
29
|
-
if (problem !== undefined) {
|
|
30
|
-
throw new FurnaceError(problem, tagName);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Returns why `tagName` is invalid, or `undefined` when it is fine.
|
|
35
|
-
*
|
|
36
|
-
* The message-returning half of {@link validateTagName}, for callers that
|
|
37
|
-
* must not throw, specifically clack `validate` callbacks, which expect a
|
|
38
|
-
* returned string and re-prompt on it. Passing the throwing form to one
|
|
39
|
-
* makes an invalid tag name escape clack's validation loop as a
|
|
40
|
-
* `FurnaceError`, killing the prompt instead of showing the rule inline.
|
|
41
|
-
*
|
|
42
|
-
* @param tagName - Candidate custom element tag name
|
|
43
|
-
* @returns The rule violation, or undefined when the name is valid
|
|
44
|
-
*/
|
|
45
|
-
export function describeTagNameProblem(tagName) {
|
|
46
|
-
if (!CUSTOM_ELEMENT_TAG_PATTERN.test(tagName)) {
|
|
47
|
-
return `Invalid tag name "${tagName}": ${CUSTOM_ELEMENT_TAG_RULES}`;
|
|
48
|
-
}
|
|
49
|
-
return undefined;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Validates that a registration entry landed in the correct block
|
|
53
|
-
* (Pattern A = loadSubScript, Pattern B = DOMContentLoaded/importESModule).
|
|
54
|
-
*
|
|
55
|
-
* @param result - The full file content after insertion
|
|
56
|
-
* @param tagName - The tag that was inserted
|
|
57
|
-
* @param isESModule - Whether the module uses ESM (Pattern B) or not (Pattern A)
|
|
58
|
-
*/
|
|
59
|
-
export function validateRegistrationPlacement(result, tagName, isESModule) {
|
|
60
|
-
const insertedPos = result.lastIndexOf(`"${tagName}"`);
|
|
61
|
-
if (insertedPos === -1)
|
|
62
|
-
return;
|
|
63
|
-
if (!isTagInCorrectCustomElementsPlacement(result, tagName, isESModule)) {
|
|
64
|
-
if (!isESModule) {
|
|
65
|
-
throw new FurnaceError(`${tagName} was registered in the DOMContentLoaded/importESModule block (Pattern B) instead of the loadSubScript block (Pattern A). This will cause the component to fail at runtime. The customElements.js file structure may have changed upstream — manual intervention required.`, tagName);
|
|
66
|
-
}
|
|
67
|
-
throw new FurnaceError(`${tagName} was registered in the loadSubScript block (Pattern A) instead of the DOMContentLoaded/importESModule block (Pattern B). This will cause the component to fail at runtime. The customElements.js file structure may have changed upstream — manual intervention required.`, tagName);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Returns whether a tag appears in the correct customElements.js placement.
|
|
72
|
-
* ESM entries may either appear textually inside/after DOMContentLoaded or
|
|
73
|
-
* inside an array declared before DOMContentLoaded and consumed by a for-of
|
|
74
|
-
* loop inside the listener, as Firefox 152 Beta does for acornElements.
|
|
75
|
-
*/
|
|
76
|
-
export function isTagInCorrectCustomElementsPlacement(content, tagName, isESModule) {
|
|
77
|
-
const stripped = stripJsComments(content);
|
|
78
|
-
const tagPattern = new RegExp(`["']${escapeRegex(tagName)}["']`);
|
|
79
|
-
const dclMatch = /document\.addEventListener\(\s*["']DOMContentLoaded["']/.exec(stripped);
|
|
80
|
-
if (!dclMatch) {
|
|
81
|
-
return !isESModule && tagPattern.test(stripped);
|
|
82
|
-
}
|
|
83
|
-
const beforeDcl = stripped.slice(0, dclMatch.index);
|
|
84
|
-
const afterDcl = stripped.slice(dclMatch.index);
|
|
85
|
-
const tagBeforeDcl = tagPattern.test(beforeDcl);
|
|
86
|
-
const tagAfterDcl = tagPattern.test(afterDcl);
|
|
87
|
-
if (!isESModule) {
|
|
88
|
-
return tagBeforeDcl && !tagAfterDcl;
|
|
89
|
-
}
|
|
90
|
-
return (tagAfterDcl || isTagInArrayConsumedInsideDOMContentLoaded(stripped, dclMatch.index, tagName));
|
|
91
|
-
}
|
|
92
|
-
function isTagInArrayConsumedInsideDOMContentLoaded(content, domContentLoadedIdx, tagName) {
|
|
93
|
-
const beforeDcl = content.slice(0, domContentLoadedIdx);
|
|
94
|
-
const afterDcl = content.slice(domContentLoadedIdx);
|
|
95
|
-
const consumedArrays = new Set();
|
|
96
|
-
const forOfPattern = /for\s*\(\s*(?:let|const|var)\s*\[[^)]*\]\s+of\s+([A-Za-z_$][\w$]*)\s*\)/g;
|
|
97
|
-
let match;
|
|
98
|
-
while ((match = forOfPattern.exec(afterDcl)) !== null) {
|
|
99
|
-
if (match[1])
|
|
100
|
-
consumedArrays.add(match[1]);
|
|
101
|
-
}
|
|
102
|
-
for (const arrayName of consumedArrays) {
|
|
103
|
-
const declarationPattern = new RegExp(`(?:const|let|var)\\s+${escapeRegex(arrayName)}\\s*=\\s*\\[([\\s\\S]*?)\\];`);
|
|
104
|
-
const declaration = declarationPattern.exec(beforeDcl);
|
|
105
|
-
if (declaration?.[1] && new RegExp(`["']${escapeRegex(tagName)}["']`).test(declaration[1])) {
|
|
106
|
-
return true;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
return false;
|
|
110
|
-
}
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
export { addCustomElementRegistration, validateCustomElementRegistration, } from './furnace-registration-ast.js';
|
|
2
|
-
export { removeCustomElementRegistration } from './furnace-registration-remove.js';
|
|
3
|
-
export { renameCustomElementRegistration } from './furnace-registration-rename.js';
|
|
4
|
-
/**
|
|
5
|
-
* Adds jar.mn entries that map chrome:// URIs to on-disk paths for a
|
|
6
|
-
* component's files.
|
|
7
|
-
*
|
|
8
|
-
* ## Assumed jar.mn format
|
|
9
|
-
*
|
|
10
|
-
* Firefox's `toolkit/content/jar.mn` uses a stable format that has not
|
|
11
|
-
* changed in the custom-element era (Firefox 90+). The entry format is:
|
|
12
|
-
*
|
|
13
|
-
* ```
|
|
14
|
-
* content/global/elements/{file} (widgets/{tagName}/{file})
|
|
15
|
-
* ```
|
|
16
|
-
*
|
|
17
|
-
* - **Indent**: detected dynamically from the nearest existing
|
|
18
|
-
* `content/global/elements/` line. Falls back to 3 spaces when no
|
|
19
|
-
* reference line exists.
|
|
20
|
-
* - **Insertion point**: identified by existing lines matching the regex
|
|
21
|
-
* `^\s+content\/global\/elements\/([^.]+)\.`. New entries are inserted
|
|
22
|
-
* in alphabetical order relative to these.
|
|
23
|
-
* - **Fallback**: if no `content/global/elements/` line exists (empty
|
|
24
|
-
* project), looks for any `content/global/` line and inserts after it.
|
|
25
|
-
* - **Idempotency**: entries already present anywhere in the file (an exact
|
|
26
|
-
* target match on `content/global/elements/{file}`, or a source match on
|
|
27
|
-
* `(widgets/{tagName}/{file})`) are skipped, including hand-written ones.
|
|
28
|
-
*
|
|
29
|
-
* If Firefox upstream changes the jar.mn section ordering or switches to a
|
|
30
|
-
* different resource registration mechanism, the preflight validation in
|
|
31
|
-
* `validateJarMnInsertionForFiles` will catch the format mismatch before any writes
|
|
32
|
-
* occur.
|
|
33
|
-
*
|
|
34
|
-
* @param engineDir - Path to the Firefox engine source root
|
|
35
|
-
* @param tagName - Custom element tag name
|
|
36
|
-
* @param files - Filenames to register (e.g. ["moz-widget.mjs", "moz-widget.css"])
|
|
37
|
-
*/
|
|
38
|
-
export declare function addJarMnEntries(engineDir: string, tagName: string, files: string[]): Promise<number>;
|
|
39
|
-
/**
|
|
40
|
-
* Adds a locale jar.mn entry mapping `<chromeSubPath>/<tagName>.ftl` to the
|
|
41
|
-
* on-disk `.ftl` that `furnace apply` just copied under the FTL tree. Without
|
|
42
|
-
* this entry the chrome URI passed to `window.MozXULElement.insertFTLIfNeeded`
|
|
43
|
-
* does not resolve at runtime, so the generated `--localized` component
|
|
44
|
-
* silently ships broken l10n.
|
|
45
|
-
*
|
|
46
|
-
* Degrades gracefully: if the locale jar.mn (e.g. `toolkit/locales/jar.mn`)
|
|
47
|
-
* does not exist, returns 0 rather than throwing, so a custom fork without a
|
|
48
|
-
* standard locales package can still apply a localized component.
|
|
49
|
-
*
|
|
50
|
-
* The written entry mirrors the Mozilla convention for toolkit widgets:
|
|
51
|
-
*
|
|
52
|
-
* locale/@AB_CD@/<chromeSubPath>/<tagName>.ftl (%<chromeSubPath>/<tagName>.ftl)
|
|
53
|
-
*
|
|
54
|
-
* @param engineDir - Path to the Firefox engine source root
|
|
55
|
-
* @param jarMnRelPath - Engine-relative path to the locale jar.mn
|
|
56
|
-
* @param tagName - Custom element tag name (base of the `.ftl` file)
|
|
57
|
-
* @param chromeSubPath - Chrome sub-path (e.g. `toolkit/global`)
|
|
58
|
-
* @returns Number of entries inserted (0 when already present, or jar.mn missing)
|
|
59
|
-
*/
|
|
60
|
-
export declare function addLocaleFtlJarMnEntry(engineDir: string, jarMnRelPath: string, tagName: string, chromeSubPath: string): Promise<number>;
|
|
61
|
-
/**
|
|
62
|
-
* True when the locale jar.mn carries a per-widget line for `tagName`.
|
|
63
|
-
* False when the jar.mn is missing. Used by `furnace rename --dry-run` to
|
|
64
|
-
* say whether a rename would re-point a line or leave the jar alone.
|
|
65
|
-
*/
|
|
66
|
-
export declare function hasLocaleFtlJarMnEntry(engineDir: string, jarMnRelPath: string, tagName: string, chromeSubPath: string): Promise<boolean>;
|
|
67
|
-
/**
|
|
68
|
-
* Removes a locale jar.mn entry previously written by `addLocaleFtlJarMnEntry`.
|
|
69
|
-
* Idempotent: if the entry is absent or the file is missing, nothing happens.
|
|
70
|
-
*
|
|
71
|
-
* @returns True when a line was removed, so a rename re-points only an
|
|
72
|
-
* entry that existed instead of inventing one
|
|
73
|
-
*/
|
|
74
|
-
export declare function removeLocaleFtlJarMnEntry(engineDir: string, jarMnRelPath: string, tagName: string, chromeSubPath: string): Promise<boolean>;
|
|
75
|
-
/**
|
|
76
|
-
* Removes all jar.mn entries for a given tag name.
|
|
77
|
-
*
|
|
78
|
-
* This operation is idempotent: if no entries exist or the file is missing,
|
|
79
|
-
* nothing happens.
|
|
80
|
-
*
|
|
81
|
-
* @param engineDir - Path to the Firefox engine source root
|
|
82
|
-
* @param tagName - Custom element tag name whose entries should be removed
|
|
83
|
-
*/
|
|
84
|
-
export declare function removeJarMnEntries(engineDir: string, tagName: string): Promise<void>;
|
|
85
|
-
/** A jar.mn widget registration line whose source file no longer exists. */
|
|
86
|
-
export interface StaleJarMnEntry {
|
|
87
|
-
/** Component tag name from the `(widgets/<tag>/<file>)` source mapping. */
|
|
88
|
-
tagName: string;
|
|
89
|
-
/** File name from the source mapping. */
|
|
90
|
-
fileName: string;
|
|
91
|
-
/** The full (trimmed) jar.mn line. */
|
|
92
|
-
line: string;
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Scans jar.mn for widget registration lines `(widgets/<tag>/<file>)` whose
|
|
96
|
-
* workspace source file no longer exists. A renamed component helper
|
|
97
|
-
* otherwise leaves the old line pointing at a deleted file and every build
|
|
98
|
-
* fails at packaging. Only tags in `managedTags` (furnace-managed custom
|
|
99
|
-
* components) are inspected, so upstream lines are never touched.
|
|
100
|
-
*/
|
|
101
|
-
export declare function findStaleJarMnEntries(engineDir: string, customDir: string, managedTags: readonly string[]): Promise<StaleJarMnEntry[]>;
|
|
102
|
-
/**
|
|
103
|
-
* Removes every stale widget registration line found by
|
|
104
|
-
* {@link findStaleJarMnEntries}. Returns the removed entries. Used by
|
|
105
|
-
* `furnace validate --fix` and `doctor --repair-furnace`.
|
|
106
|
-
*/
|
|
107
|
-
export declare function pruneStaleJarMnEntries(engineDir: string, customDir: string, managedTags: readonly string[]): Promise<StaleJarMnEntry[]>;
|
|
108
|
-
/**
|
|
109
|
-
* Validates that jar.mn entries *could* be added without writing anything.
|
|
110
|
-
* Used by dry-run to surface structural problems early.
|
|
111
|
-
*/
|
|
112
|
-
export declare function validateJarMnInsertionForFiles(engineDir: string, tagName: string, files: string[]): Promise<void>;
|