@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,371 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
import { join } from 'node:path';
|
|
3
|
-
import { FireForgeError } from '../errors/base.js';
|
|
4
|
-
import { ExitCode } from '../errors/codes.js';
|
|
5
|
-
import { copyDir, pathExists, readText, writeTextIfChanged } from '../utils/fs.js';
|
|
6
|
-
import { warn } from '../utils/logger.js';
|
|
7
|
-
import { normalizePathSlashes } from '../utils/paths.js';
|
|
8
|
-
import { DEFAULT_LICENSE, getLicenseHeader } from './license-headers.js';
|
|
9
|
-
/**
|
|
10
|
-
* Error thrown when branding operations fail.
|
|
11
|
-
*/
|
|
12
|
-
class BrandingError extends FireForgeError {
|
|
13
|
-
code = ExitCode.PATCH_ERROR;
|
|
14
|
-
get userMessage() {
|
|
15
|
-
return `Branding Error: ${this.message}\n\nBranding is required to set MOZ_APP_VENDOR, MOZ_MACBUNDLE_ID, and other Firefox identity values.`;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Error thrown when the generated `mozconfig` references a `--with-branding`
|
|
20
|
-
* directory that does not match the branding tree FireForge set up. The
|
|
21
|
-
* mismatch is a silent-corruption hazard: `mach configure` picks the value
|
|
22
|
-
* from mozconfig but the scaffolded branding lives elsewhere, so the build
|
|
23
|
-
* fails deep inside moz.build resolution with a confusing "path does not
|
|
24
|
-
* exist" message. Surface it as an actionable preflight instead.
|
|
25
|
-
*
|
|
26
|
-
* Setup renders templates under `configs/` with `${binaryName}` baked in. A
|
|
27
|
-
* later edit to `fireforge.json`'s `binaryName` (or a re-setup without
|
|
28
|
-
* re-templating) leaves those names stale while `setupBranding` keeps using
|
|
29
|
-
* the current value. Both directions produce the same class of build break.
|
|
30
|
-
*/
|
|
31
|
-
export class BrandingMozconfigMismatchError extends FireForgeError {
|
|
32
|
-
expectedBrandingDir;
|
|
33
|
-
mozconfigBrandingDir;
|
|
34
|
-
reason;
|
|
35
|
-
code = ExitCode.PATCH_ERROR;
|
|
36
|
-
constructor(expectedBrandingDir, mozconfigBrandingDir, reason) {
|
|
37
|
-
super(`Generated mozconfig references "${mozconfigBrandingDir}" but the active branding directory is "${expectedBrandingDir}".`);
|
|
38
|
-
this.expectedBrandingDir = expectedBrandingDir;
|
|
39
|
-
this.mozconfigBrandingDir = mozconfigBrandingDir;
|
|
40
|
-
this.reason = reason;
|
|
41
|
-
}
|
|
42
|
-
get userMessage() {
|
|
43
|
-
const diagnosis = this.reason === 'mozconfig-missing-branding'
|
|
44
|
-
? `The generated mozconfig does not contain a --with-branding directive (found "${this.mozconfigBrandingDir}"). FireForge expected to write one for binaryName "${this.expectedBrandingDir}".`
|
|
45
|
-
: this.reason === 'name-mismatch'
|
|
46
|
-
? `The generated mozconfig sets --with-branding="${this.mozconfigBrandingDir}" but FireForge set up branding under "${this.expectedBrandingDir}".`
|
|
47
|
-
: `The generated mozconfig sets --with-branding="${this.mozconfigBrandingDir}" but no moz.build exists under engine/${this.mozconfigBrandingDir}/.`;
|
|
48
|
-
return (`Branding Error: ${diagnosis}\n\n` +
|
|
49
|
-
'This usually means the rendered configs/ templates drifted from fireforge.json. Fix one of:\n' +
|
|
50
|
-
' 1. Edit configs/common.mozconfig so --with-branding uses ${binaryName} (or the current binaryName), then re-run "fireforge build".\n' +
|
|
51
|
-
' 2. Update fireforge.json so binaryName matches the --with-branding value baked into configs/.\n\n' +
|
|
52
|
-
'The mismatch is caught before mach builds because resolving the build against the wrong branding tree fails deep in moz.build with a confusing "path does not exist" message.');
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Splits the reverse-domain `appId` for macOS bundle identity. Upstream
|
|
57
|
-
* `toolkit/moz.configure` composes `CFBundleIdentifier` as
|
|
58
|
-
* `<--with-distribution-id>.<MOZ_MACBUNDLE_ID>` (the distribution id
|
|
59
|
-
* defaults to `org.mozilla`), so branding `configure.sh` must carry only the
|
|
60
|
-
* leaf segment while the generated mozconfig carries the remainder as
|
|
61
|
-
* `--with-distribution-id`. Writing the full appId into `MOZ_MACBUNDLE_ID`
|
|
62
|
-
* double-prefixes the shipped bundle id. Config validation guarantees a
|
|
63
|
-
* reverse-domain id, so the split always has both halves.
|
|
64
|
-
*/
|
|
65
|
-
export function splitAppId(appId) {
|
|
66
|
-
const lastDot = appId.lastIndexOf('.');
|
|
67
|
-
return { distributionId: appId.slice(0, lastDot), leaf: appId.slice(lastDot + 1) };
|
|
68
|
-
}
|
|
69
|
-
const MOZ_APP_VENDOR_IMPLY_REGEX = /imply_option\("MOZ_APP_VENDOR",\s*"[^"]*"\)/;
|
|
70
|
-
const BRANDING_CONFIGURE_MANAGED_KEYS = new Set([
|
|
71
|
-
'MOZ_APP_DISPLAYNAME',
|
|
72
|
-
'MOZ_APP_VENDOR',
|
|
73
|
-
'MOZ_MACBUNDLE_ID',
|
|
74
|
-
]);
|
|
75
|
-
/**
|
|
76
|
-
* Sets up the custom branding directory for the browser.
|
|
77
|
-
*
|
|
78
|
-
* This creates a branding directory based on Firefox's unofficial branding,
|
|
79
|
-
* with customized values for:
|
|
80
|
-
* - configure.sh: MOZ_APP_DISPLAYNAME, MOZ_MACBUNDLE_ID
|
|
81
|
-
* - brand.properties: brandShorterName, brandShortName, brandFullName
|
|
82
|
-
* - brand.ftl: -brand-shorter-name, -brand-short-name, etc.
|
|
83
|
-
*
|
|
84
|
-
* @param engineDir - Path to the engine directory
|
|
85
|
-
* @param config - Branding configuration
|
|
86
|
-
*/
|
|
87
|
-
export async function setupBranding(engineDir, config) {
|
|
88
|
-
const brandingDir = join(engineDir, 'browser', 'branding', config.binaryName);
|
|
89
|
-
const unofficialDir = join(engineDir, 'browser', 'branding', 'unofficial');
|
|
90
|
-
// Check if unofficial branding exists as our base
|
|
91
|
-
if (!(await pathExists(unofficialDir))) {
|
|
92
|
-
throw new BrandingError(`Unofficial branding directory not found at ${unofficialDir}`);
|
|
93
|
-
}
|
|
94
|
-
// Copy unofficial branding as base (if our branding doesn't exist yet)
|
|
95
|
-
if (!(await pathExists(brandingDir))) {
|
|
96
|
-
await copyDir(unofficialDir, brandingDir);
|
|
97
|
-
}
|
|
98
|
-
const vendorPlacement = await resolveVendorPlacement(engineDir);
|
|
99
|
-
// Create/update configure.sh with custom values
|
|
100
|
-
await createConfigureScript(brandingDir, config, vendorPlacement);
|
|
101
|
-
// Update localization files
|
|
102
|
-
await updateBrandProperties(brandingDir, config);
|
|
103
|
-
await updateBrandFtl(brandingDir, config);
|
|
104
|
-
// Patch moz.configure for MOZ_APP_VENDOR
|
|
105
|
-
await patchMozConfigure(engineDir, config, vendorPlacement);
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Creates the branding configure.sh script.
|
|
109
|
-
*/
|
|
110
|
-
async function createConfigureScript(brandingDir, config, vendorPlacement) {
|
|
111
|
-
const configureShPath = join(brandingDir, 'configure.sh');
|
|
112
|
-
const existing = (await pathExists(configureShPath))
|
|
113
|
-
? await readText(configureShPath)
|
|
114
|
-
: undefined;
|
|
115
|
-
await writeTextIfChanged(configureShPath, buildConfigureScriptContent(config, vendorPlacement, existing));
|
|
116
|
-
}
|
|
117
|
-
function buildConfigureScriptContent(config, vendorPlacement, existingContent) {
|
|
118
|
-
const header = getLicenseHeader(config.license ?? DEFAULT_LICENSE, 'hash');
|
|
119
|
-
const managedLines = [`MOZ_APP_DISPLAYNAME="${escapeShellValue(config.name)}"`];
|
|
120
|
-
if (vendorPlacement === 'branding-configure') {
|
|
121
|
-
managedLines.push(`MOZ_APP_VENDOR="${escapeShellValue(config.vendor)}"`);
|
|
122
|
-
}
|
|
123
|
-
managedLines.push(`MOZ_MACBUNDLE_ID="${escapeShellValue(splitAppId(config.appId).leaf)}"`);
|
|
124
|
-
const preservedLines = existingContent ? extractPreservedConfigureLines(existingContent) : [];
|
|
125
|
-
const body = [...managedLines, ...preservedLines].join('\n');
|
|
126
|
-
return `${header}\n\n${body}\n`;
|
|
127
|
-
}
|
|
128
|
-
function extractPreservedConfigureLines(content) {
|
|
129
|
-
return content.split(/\r?\n/).filter((line) => {
|
|
130
|
-
const trimmed = line.trim();
|
|
131
|
-
if (trimmed.length === 0)
|
|
132
|
-
return false;
|
|
133
|
-
if (/^#\s*SPDX-License-Identifier:/i.test(trimmed))
|
|
134
|
-
return false;
|
|
135
|
-
const keyMatch = /^([A-Za-z_][A-Za-z0-9_]*)=/.exec(trimmed);
|
|
136
|
-
if (keyMatch && BRANDING_CONFIGURE_MANAGED_KEYS.has(keyMatch[1] ?? ''))
|
|
137
|
-
return false;
|
|
138
|
-
return true;
|
|
139
|
-
});
|
|
140
|
-
}
|
|
141
|
-
function parseConfigureAssignments(content) {
|
|
142
|
-
const assignments = new Map();
|
|
143
|
-
for (const line of content.split(/\r?\n/)) {
|
|
144
|
-
const match = /^([A-Za-z_][A-Za-z0-9_]*)=(.*)$/.exec(line.trim());
|
|
145
|
-
if (match?.[1] && match[2] !== undefined) {
|
|
146
|
-
assignments.set(match[1], match[2]);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
return assignments;
|
|
150
|
-
}
|
|
151
|
-
function isConfigureScriptCurrent(content, config, vendorPlacement) {
|
|
152
|
-
const assignments = parseConfigureAssignments(content);
|
|
153
|
-
if (assignments.get('MOZ_APP_DISPLAYNAME') !== `"${escapeShellValue(config.name)}"`) {
|
|
154
|
-
return false;
|
|
155
|
-
}
|
|
156
|
-
if (assignments.get('MOZ_MACBUNDLE_ID') !== `"${escapeShellValue(splitAppId(config.appId).leaf)}"`) {
|
|
157
|
-
return false;
|
|
158
|
-
}
|
|
159
|
-
const vendorValue = assignments.get('MOZ_APP_VENDOR');
|
|
160
|
-
if (vendorPlacement === 'branding-configure') {
|
|
161
|
-
return vendorValue === `"${escapeShellValue(config.vendor)}"`;
|
|
162
|
-
}
|
|
163
|
-
return vendorValue === undefined;
|
|
164
|
-
}
|
|
165
|
-
/**
|
|
166
|
-
* Updates the brand.properties localization file.
|
|
167
|
-
*/
|
|
168
|
-
async function updateBrandProperties(brandingDir, config) {
|
|
169
|
-
const propsPath = join(brandingDir, 'locales', 'en-US', 'brand.properties');
|
|
170
|
-
if (!(await pathExists(propsPath))) {
|
|
171
|
-
warn('brand.properties not found in branding directory — browser will use default strings');
|
|
172
|
-
return;
|
|
173
|
-
}
|
|
174
|
-
await writeTextIfChanged(propsPath, buildBrandPropertiesContent(config));
|
|
175
|
-
}
|
|
176
|
-
function buildBrandPropertiesContent(config) {
|
|
177
|
-
const header = getLicenseHeader(config.license ?? DEFAULT_LICENSE, 'hash');
|
|
178
|
-
return `${header}
|
|
179
|
-
|
|
180
|
-
brandShorterName=${escapePropertiesValue(config.name)}
|
|
181
|
-
brandShortName=${escapePropertiesValue(config.name)}
|
|
182
|
-
brandFullName=${escapePropertiesValue(config.name)}
|
|
183
|
-
`;
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* Updates the brand.ftl localization file.
|
|
187
|
-
*/
|
|
188
|
-
async function updateBrandFtl(brandingDir, config) {
|
|
189
|
-
const ftlPath = join(brandingDir, 'locales', 'en-US', 'brand.ftl');
|
|
190
|
-
if (!(await pathExists(ftlPath))) {
|
|
191
|
-
warn('brand.ftl not found in branding directory — browser will use default strings');
|
|
192
|
-
return;
|
|
193
|
-
}
|
|
194
|
-
await writeTextIfChanged(ftlPath, buildBrandFtlContent(config));
|
|
195
|
-
}
|
|
196
|
-
function buildBrandFtlContent(config) {
|
|
197
|
-
const header = getLicenseHeader(config.license ?? DEFAULT_LICENSE, 'hash');
|
|
198
|
-
return `${header}
|
|
199
|
-
|
|
200
|
-
## Brand names
|
|
201
|
-
##
|
|
202
|
-
## These brand names can be used in messages.
|
|
203
|
-
|
|
204
|
-
-brand-shorter-name = ${escapeFtlValue(config.name)}
|
|
205
|
-
-brand-short-name = ${escapeFtlValue(config.name)}
|
|
206
|
-
-brand-shortcut-name = ${escapeFtlValue(config.name)}
|
|
207
|
-
-brand-full-name = ${escapeFtlValue(config.name)}
|
|
208
|
-
-brand-product-name = ${escapeFtlValue(config.name)}
|
|
209
|
-
-vendor-short-name = ${escapeFtlValue(config.vendor)}
|
|
210
|
-
trademarkInfo = { " " }
|
|
211
|
-
`;
|
|
212
|
-
}
|
|
213
|
-
/**
|
|
214
|
-
* Patches browser/moz.configure to set custom vendor when the upstream
|
|
215
|
-
* configure surface owns MOZ_APP_VENDOR as a project flag. ESR 140 rejects
|
|
216
|
-
* branding configure.sh / confvars origins for that flag, so the value must
|
|
217
|
-
* come from imply_option.
|
|
218
|
-
*/
|
|
219
|
-
async function patchMozConfigure(engineDir, config, vendorPlacement) {
|
|
220
|
-
if (vendorPlacement !== 'moz-configure') {
|
|
221
|
-
return;
|
|
222
|
-
}
|
|
223
|
-
const mozConfigurePath = join(engineDir, 'browser', 'moz.configure');
|
|
224
|
-
if (!(await pathExists(mozConfigurePath))) {
|
|
225
|
-
return;
|
|
226
|
-
}
|
|
227
|
-
let content = await readText(mozConfigurePath);
|
|
228
|
-
if (MOZ_APP_VENDOR_IMPLY_REGEX.test(content)) {
|
|
229
|
-
content = content.replace(MOZ_APP_VENDOR_IMPLY_REGEX, buildMozConfigureVendorLine(config));
|
|
230
|
-
}
|
|
231
|
-
else {
|
|
232
|
-
content = insertMozConfigureVendorLine(content, buildMozConfigureVendorLine(config));
|
|
233
|
-
}
|
|
234
|
-
await writeTextIfChanged(mozConfigurePath, content);
|
|
235
|
-
}
|
|
236
|
-
function buildMozConfigureVendorLine(config) {
|
|
237
|
-
return `imply_option("MOZ_APP_VENDOR", "${escapeString(config.vendor)}")`;
|
|
238
|
-
}
|
|
239
|
-
async function resolveVendorPlacement(engineDir) {
|
|
240
|
-
const mozConfigurePath = join(engineDir, 'browser', 'moz.configure');
|
|
241
|
-
const toolkitMozConfigurePath = join(engineDir, 'toolkit', 'moz.configure');
|
|
242
|
-
const browserMozConfigureExists = await pathExists(mozConfigurePath);
|
|
243
|
-
const browserMozConfigureContent = browserMozConfigureExists
|
|
244
|
-
? await readText(mozConfigurePath)
|
|
245
|
-
: undefined;
|
|
246
|
-
if (browserMozConfigureContent !== undefined &&
|
|
247
|
-
MOZ_APP_VENDOR_IMPLY_REGEX.test(browserMozConfigureContent)) {
|
|
248
|
-
return 'moz-configure';
|
|
249
|
-
}
|
|
250
|
-
if (await toolkitMozConfigureUsesVendorProjectFlag(toolkitMozConfigurePath)) {
|
|
251
|
-
if (!browserMozConfigureExists) {
|
|
252
|
-
throw new BrandingError('Firefox toolkit configure declares MOZ_APP_VENDOR as a project_flag, but browser/moz.configure is missing, so FireForge cannot safely set the vendor identity.');
|
|
253
|
-
}
|
|
254
|
-
return 'moz-configure';
|
|
255
|
-
}
|
|
256
|
-
return 'branding-configure';
|
|
257
|
-
}
|
|
258
|
-
async function toolkitMozConfigureUsesVendorProjectFlag(filePath) {
|
|
259
|
-
if (!(await pathExists(filePath))) {
|
|
260
|
-
return false;
|
|
261
|
-
}
|
|
262
|
-
const content = await readText(filePath);
|
|
263
|
-
return /project_flag\(\s*(?:(?!\)\s*\n)[\s\S])*env\s*=\s*"MOZ_APP_VENDOR"/m.test(content);
|
|
264
|
-
}
|
|
265
|
-
function insertMozConfigureVendorLine(content, line) {
|
|
266
|
-
const includeRegex = /^include\((["'])\.\.\/toolkit\/moz\.configure\1\)\s*$/m;
|
|
267
|
-
const match = includeRegex.exec(content);
|
|
268
|
-
if (!match) {
|
|
269
|
-
return `${content.replace(/\s*$/, '')}\n\n${line}\n`;
|
|
270
|
-
}
|
|
271
|
-
const prefix = content.slice(0, match.index).replace(/\s*$/, '');
|
|
272
|
-
const suffix = content.slice(match.index);
|
|
273
|
-
return `${prefix}\n\n${line}\n${suffix}`;
|
|
274
|
-
}
|
|
275
|
-
/**
|
|
276
|
-
* Escapes a string for use in Python/configure file.
|
|
277
|
-
*/
|
|
278
|
-
function escapeString(value) {
|
|
279
|
-
return value
|
|
280
|
-
.replace(/\\/g, '\\\\')
|
|
281
|
-
.replace(/"/g, '\\"')
|
|
282
|
-
.replace(/\n/g, '\\n')
|
|
283
|
-
.replace(/\r/g, '\\r')
|
|
284
|
-
.replace(/\t/g, '\\t');
|
|
285
|
-
}
|
|
286
|
-
/**
|
|
287
|
-
* Escapes a string for use inside a shell double-quoted context.
|
|
288
|
-
* Prevents command injection via $, backticks, !, and escape sequences.
|
|
289
|
-
*/
|
|
290
|
-
function escapeShellValue(value) {
|
|
291
|
-
return value
|
|
292
|
-
.replace(/\\/g, '\\\\')
|
|
293
|
-
.replace(/"/g, '\\"')
|
|
294
|
-
.replace(/\$/g, '\\$')
|
|
295
|
-
.replace(/`/g, '\\`')
|
|
296
|
-
.replace(/!/g, '\\!');
|
|
297
|
-
}
|
|
298
|
-
/**
|
|
299
|
-
* Escapes a string for use in .properties file values.
|
|
300
|
-
* Prevents key/value injection via = and : delimiters.
|
|
301
|
-
*/
|
|
302
|
-
function escapePropertiesValue(value) {
|
|
303
|
-
return value
|
|
304
|
-
.replace(/\\/g, '\\\\')
|
|
305
|
-
.replace(/\n/g, '\\n')
|
|
306
|
-
.replace(/\r/g, '\\r')
|
|
307
|
-
.replace(/\t/g, '\\t');
|
|
308
|
-
}
|
|
309
|
-
/**
|
|
310
|
-
* Escapes a string for use in Fluent (.ftl) file values.
|
|
311
|
-
* Prevents placeables injection via { and }.
|
|
312
|
-
*/
|
|
313
|
-
function escapeFtlValue(value) {
|
|
314
|
-
return value.replace(/\\/g, '\\\\').replace(/\{/g, '\\{').replace(/\}/g, '\\}');
|
|
315
|
-
}
|
|
316
|
-
/**
|
|
317
|
-
* Checks if branding has been set up for the given configuration.
|
|
318
|
-
*
|
|
319
|
-
* @param engineDir - Path to the engine directory
|
|
320
|
-
* @param config - Branding configuration to check for
|
|
321
|
-
* @returns true if branding is already set up
|
|
322
|
-
*/
|
|
323
|
-
export async function isBrandingSetup(engineDir, config) {
|
|
324
|
-
const brandingDir = join(engineDir, 'browser', 'branding', config.binaryName);
|
|
325
|
-
const configureShPath = join(brandingDir, 'configure.sh');
|
|
326
|
-
const propsPath = join(brandingDir, 'locales', 'en-US', 'brand.properties');
|
|
327
|
-
const ftlPath = join(brandingDir, 'locales', 'en-US', 'brand.ftl');
|
|
328
|
-
if (!(await pathExists(configureShPath))) {
|
|
329
|
-
return false;
|
|
330
|
-
}
|
|
331
|
-
const vendorPlacement = await resolveVendorPlacement(engineDir);
|
|
332
|
-
const configureContent = await readText(configureShPath);
|
|
333
|
-
if (!isConfigureScriptCurrent(configureContent, config, vendorPlacement)) {
|
|
334
|
-
return false;
|
|
335
|
-
}
|
|
336
|
-
if (await pathExists(propsPath)) {
|
|
337
|
-
const propsContent = await readText(propsPath);
|
|
338
|
-
if (propsContent !== buildBrandPropertiesContent(config)) {
|
|
339
|
-
return false;
|
|
340
|
-
}
|
|
341
|
-
}
|
|
342
|
-
if (await pathExists(ftlPath)) {
|
|
343
|
-
const ftlContent = await readText(ftlPath);
|
|
344
|
-
if (ftlContent !== buildBrandFtlContent(config)) {
|
|
345
|
-
return false;
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
if (vendorPlacement === 'branding-configure') {
|
|
349
|
-
return configureContent.includes(`MOZ_APP_VENDOR="${escapeShellValue(config.vendor)}"`);
|
|
350
|
-
}
|
|
351
|
-
const mozConfigurePath = join(engineDir, 'browser', 'moz.configure');
|
|
352
|
-
if (!(await pathExists(mozConfigurePath))) {
|
|
353
|
-
return false;
|
|
354
|
-
}
|
|
355
|
-
const mozConfigureContent = await readText(mozConfigurePath);
|
|
356
|
-
return mozConfigureContent.includes(buildMozConfigureVendorLine(config));
|
|
357
|
-
}
|
|
358
|
-
/**
|
|
359
|
-
* Checks whether a file path belongs to the tool-managed branding directory.
|
|
360
|
-
* @param file - File path (relative to engine root)
|
|
361
|
-
* @param binaryName - The configured binary name (used as branding directory name)
|
|
362
|
-
* @returns true if the path is managed by branding tooling
|
|
363
|
-
*/
|
|
364
|
-
export function isBrandingManagedPath(file, binaryName) {
|
|
365
|
-
const normalized = normalizePathSlashes(file);
|
|
366
|
-
const brandingRoot = `browser/branding/${binaryName}`;
|
|
367
|
-
return (normalized === 'browser/moz.configure' ||
|
|
368
|
-
normalized === brandingRoot ||
|
|
369
|
-
normalized === `${brandingRoot}/` ||
|
|
370
|
-
normalized.startsWith(`${brandingRoot}/`));
|
|
371
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import type { RegisterResult } from './moz-manifest-register.js';
|
|
2
|
-
export declare const DEFAULT_BROWSER_SUBSCRIPT_DIR = "browser/base/content";
|
|
3
|
-
/**
|
|
4
|
-
* Result of a wire operation.
|
|
5
|
-
*/
|
|
6
|
-
export interface WireResult {
|
|
7
|
-
/** Whether the subscript was added to browser-main.js */
|
|
8
|
-
subscriptAdded: boolean;
|
|
9
|
-
/** Whether the init expression was added to browser-init.js */
|
|
10
|
-
initAdded: boolean;
|
|
11
|
-
/** Whether the destroy expression was added to browser-init.js */
|
|
12
|
-
destroyAdded: boolean;
|
|
13
|
-
/** Whether the DOM fragment was inserted into browser.xhtml */
|
|
14
|
-
domInserted: boolean;
|
|
15
|
-
/** Result of jar.mn registration */
|
|
16
|
-
jarMnResult: RegisterResult;
|
|
17
|
-
}
|
|
18
|
-
export interface WireOptions {
|
|
19
|
-
/** Init expression to add to browser-init.js onLoad() */
|
|
20
|
-
init?: string | undefined;
|
|
21
|
-
/** Destroy expression to add to browser-init.js onUnload() */
|
|
22
|
-
destroy?: string | undefined;
|
|
23
|
-
/** Path to `.inc.xhtml` file relative to engine root */
|
|
24
|
-
domFilePath?: string | undefined;
|
|
25
|
-
/**
|
|
26
|
-
* Top-level chrome document the DOM fragment's `#include` directive is
|
|
27
|
-
* inserted into, relative to engine/. Defaults to
|
|
28
|
-
* `browser/base/content/browser.xhtml`. Forks that replace browser.xhtml
|
|
29
|
-
* with a custom chrome document (e.g. `mybrowser.xhtml`) pass the
|
|
30
|
-
* replacement path here.
|
|
31
|
-
*/
|
|
32
|
-
domTargetPath?: string | undefined;
|
|
33
|
-
/** Dry run: don't write any files */
|
|
34
|
-
dryRun?: boolean | undefined;
|
|
35
|
-
/** Insert init block after the block containing this name */
|
|
36
|
-
after?: string | undefined;
|
|
37
|
-
/** Subscript directory relative to engine/ (default: "browser/base/content") */
|
|
38
|
-
subscriptDir?: string | undefined;
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Wires a chrome subscript into the browser.
|
|
42
|
-
*
|
|
43
|
-
* @param root - Project root directory
|
|
44
|
-
* @param name - Subscript name (without .js extension)
|
|
45
|
-
* @param options - Wire options
|
|
46
|
-
* @returns Wire result
|
|
47
|
-
*/
|
|
48
|
-
export declare function wireSubscript(root: string, name: string, options?: WireOptions): Promise<WireResult>;
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: EUPL-1.2
|
|
2
|
-
import { join, relative } from 'node:path';
|
|
3
|
-
import { GeneralError } from '../errors/base.js';
|
|
4
|
-
import { toError } from '../utils/errors.js';
|
|
5
|
-
import { verbose } from '../utils/logger.js';
|
|
6
|
-
import { toRootRelativePath } from '../utils/paths.js';
|
|
7
|
-
import { normalizePathSlashes } from '../utils/paths.js';
|
|
8
|
-
import { getProjectPaths, loadConfig } from './config.js';
|
|
9
|
-
import { assertSnapshotted, createRollbackJournal, restoreRollbackJournal, snapshotFile, } from './furnace-rollback.js';
|
|
10
|
-
import { registerBrowserContent } from './moz-manifest-register.js';
|
|
11
|
-
import { addDestroyToBrowserInit } from './wire-destroy.js';
|
|
12
|
-
import { addDomFragment, DEFAULT_DOM_TARGET } from './wire-dom-fragment.js';
|
|
13
|
-
import { addInitToBrowserInit } from './wire-init.js';
|
|
14
|
-
import { addSubscriptToBrowserMain } from './wire-subscript.js';
|
|
15
|
-
export const DEFAULT_BROWSER_SUBSCRIPT_DIR = 'browser/base/content';
|
|
16
|
-
const BROWSER_BASE_DIR = 'browser/base';
|
|
17
|
-
/**
|
|
18
|
-
* Wires a chrome subscript into the browser.
|
|
19
|
-
*
|
|
20
|
-
* @param root - Project root directory
|
|
21
|
-
* @param name - Subscript name (without .js extension)
|
|
22
|
-
* @param options - Wire options
|
|
23
|
-
* @returns Wire result
|
|
24
|
-
*/
|
|
25
|
-
export async function wireSubscript(root, name, options = {}) {
|
|
26
|
-
const { engine: engineDir } = getProjectPaths(root);
|
|
27
|
-
const subscriptDir = toRootRelativePath(engineDir, options.subscriptDir ?? DEFAULT_BROWSER_SUBSCRIPT_DIR);
|
|
28
|
-
// Compute jar.mn source path relative to browser/base/
|
|
29
|
-
let jarMnSourcePath;
|
|
30
|
-
if (subscriptDir !== DEFAULT_BROWSER_SUBSCRIPT_DIR) {
|
|
31
|
-
const relPath = normalizePathSlashes(relative(join(engineDir, BROWSER_BASE_DIR), join(engineDir, subscriptDir)));
|
|
32
|
-
jarMnSourcePath = `${relPath}/${name}.js`;
|
|
33
|
-
}
|
|
34
|
-
if (options.dryRun) {
|
|
35
|
-
return {
|
|
36
|
-
subscriptAdded: true,
|
|
37
|
-
initAdded: !!options.init,
|
|
38
|
-
destroyAdded: !!options.destroy,
|
|
39
|
-
domInserted: !!options.domFilePath,
|
|
40
|
-
jarMnResult: {
|
|
41
|
-
manifest: 'browser/base/jar.mn',
|
|
42
|
-
entry: `[dry-run] Would register content/browser/${name}.js`,
|
|
43
|
-
skipped: false,
|
|
44
|
-
},
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
// Snapshot every file the five mutation steps might touch so a
|
|
48
|
-
// mid-sequence failure (most commonly the chrome-document insertion not
|
|
49
|
-
// finding an anchor) does not leave a half-wired browser behind: new
|
|
50
|
-
// `loadSubScript` calls in browser-main.js, new init/destroy expressions
|
|
51
|
-
// in browser-init.js, and a new entry in browser/base/jar.mn, with no way
|
|
52
|
-
// back but a hand-revert or a re-download. Init/destroy/DOM are
|
|
53
|
-
// conditional, so those targets are snapshotted only when the
|
|
54
|
-
// corresponding option would fire a write.
|
|
55
|
-
const journal = createRollbackJournal();
|
|
56
|
-
const effectiveDomTargetPath = options.domFilePath
|
|
57
|
-
? toRootRelativePath(engineDir, options.domTargetPath ?? DEFAULT_DOM_TARGET)
|
|
58
|
-
: undefined;
|
|
59
|
-
await snapshotFile(journal, join(engineDir, 'browser/base/content/browser-main.js'));
|
|
60
|
-
if (options.init !== undefined || options.destroy !== undefined) {
|
|
61
|
-
await snapshotFile(journal, join(engineDir, 'browser/base/content/browser-init.js'));
|
|
62
|
-
}
|
|
63
|
-
if (effectiveDomTargetPath) {
|
|
64
|
-
await snapshotFile(journal, join(engineDir, effectiveDomTargetPath));
|
|
65
|
-
}
|
|
66
|
-
await snapshotFile(journal, join(engineDir, 'browser/base/jar.mn'));
|
|
67
|
-
// Compute the project-scoped patch-lint marker (`// <BINARY>:`) so every
|
|
68
|
-
// wire mutator can stamp it into the emitted comment block. Without it,
|
|
69
|
-
// `lintModificationComments` trips `missing-modification-comment` on
|
|
70
|
-
// wire-generated edits the next time the operator exports. A broken config
|
|
71
|
-
// should not block the wire, so the fallback marker keeps the
|
|
72
|
-
// lint-friendly default when the config cannot be loaded.
|
|
73
|
-
let marker = 'FIREFORGE:';
|
|
74
|
-
try {
|
|
75
|
-
const config = await loadConfig(root);
|
|
76
|
-
marker = `${config.binaryName.toUpperCase()}:`;
|
|
77
|
-
}
|
|
78
|
-
catch (error) {
|
|
79
|
-
verbose(`Using default wire marker because fireforge.json could not be loaded: ${toError(error).message}`);
|
|
80
|
-
}
|
|
81
|
-
try {
|
|
82
|
-
// 1. Add subscript to browser-main.js
|
|
83
|
-
assertSnapshotted(journal, join(engineDir, 'browser/base/content/browser-main.js'), 'browser wire');
|
|
84
|
-
const subscriptAdded = await addSubscriptToBrowserMain(engineDir, name, marker);
|
|
85
|
-
// 2. Add init expression to browser-init.js (if provided)
|
|
86
|
-
let initAdded = false;
|
|
87
|
-
if (options.init) {
|
|
88
|
-
// The snapshot above is taken when init or destroy is `!== undefined`
|
|
89
|
-
// while these writes fire on truthiness. Close, but two separate
|
|
90
|
-
// conditions over the same file, and that kind of pairing drifts when
|
|
91
|
-
// a third writer is added later.
|
|
92
|
-
assertSnapshotted(journal, join(engineDir, 'browser/base/content/browser-init.js'), 'browser wire init');
|
|
93
|
-
initAdded = await addInitToBrowserInit(engineDir, options.init, options.after, marker);
|
|
94
|
-
}
|
|
95
|
-
// 3. Add destroy expression to browser-init.js onUnload() (if provided)
|
|
96
|
-
let destroyAdded = false;
|
|
97
|
-
if (options.destroy) {
|
|
98
|
-
assertSnapshotted(journal, join(engineDir, 'browser/base/content/browser-init.js'), 'browser wire destroy');
|
|
99
|
-
destroyAdded = await addDestroyToBrowserInit(engineDir, options.destroy, marker);
|
|
100
|
-
}
|
|
101
|
-
// 4. Add #include directive to the top-level chrome document (if provided)
|
|
102
|
-
let domInserted = false;
|
|
103
|
-
if (options.domFilePath) {
|
|
104
|
-
domInserted = await addDomFragment(engineDir, toRootRelativePath(engineDir, options.domFilePath), options.domTargetPath);
|
|
105
|
-
}
|
|
106
|
-
// 5. Register in jar.mn
|
|
107
|
-
assertSnapshotted(journal, join(engineDir, 'browser/base/jar.mn'), 'browser wire jar.mn');
|
|
108
|
-
const jarMnResult = await registerBrowserContent(engineDir, `${name}.js`, undefined, jarMnSourcePath);
|
|
109
|
-
return {
|
|
110
|
-
subscriptAdded,
|
|
111
|
-
initAdded,
|
|
112
|
-
destroyAdded,
|
|
113
|
-
domInserted,
|
|
114
|
-
jarMnResult,
|
|
115
|
-
};
|
|
116
|
-
}
|
|
117
|
-
catch (error) {
|
|
118
|
-
// Best-effort rollback: if the restore itself fails, surface both the
|
|
119
|
-
// original wire failure and the rollback failure so the operator knows
|
|
120
|
-
// the engine may be in a partially-wired state that needs manual
|
|
121
|
-
// attention. The original error's message is preserved so the user sees
|
|
122
|
-
// why the wire failed (e.g. "Could not find insertion point in chrome
|
|
123
|
-
// document") alongside any rollback diagnosis.
|
|
124
|
-
const originalMessage = toError(error).message;
|
|
125
|
-
try {
|
|
126
|
-
await restoreRollbackJournal(journal);
|
|
127
|
-
}
|
|
128
|
-
catch (rollbackError) {
|
|
129
|
-
throw new GeneralError(`Wire failed: ${originalMessage}. Automatic rollback also failed: ${toError(rollbackError).message}. The engine may contain partially-applied wire mutations; review "git status" under engine/ and revert manually.`);
|
|
130
|
-
}
|
|
131
|
-
throw error;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
/** Outcome of a moz.build platform-gate lookup for a single source file. */
|
|
2
|
-
export interface PlatformGateResult {
|
|
3
|
-
/** True when the file is gated off on the current host. */
|
|
4
|
-
gatedOff: boolean;
|
|
5
|
-
/**
|
|
6
|
-
* The gate expression that excluded the file, if any. Surfaced in
|
|
7
|
-
* verbose output so an operator can confirm the audit's reasoning.
|
|
8
|
-
*/
|
|
9
|
-
gateExpression?: string;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Scans a moz.build file for a basename match inside a conditional
|
|
13
|
-
* block, returning the gate expression when one encloses the match.
|
|
14
|
-
*
|
|
15
|
-
* The scanner uses indentation to track block scope (Python-style):
|
|
16
|
-
* an `if CONFIG[…]:` line opens a scope at indent N+1, and dedenting
|
|
17
|
-
* back to indent N closes it. A basename match inside that scope
|
|
18
|
-
* inherits the gate expression.
|
|
19
|
-
*
|
|
20
|
-
* @param content moz.build file content
|
|
21
|
-
* @param basename Basename of the source file we are auditing
|
|
22
|
-
* @returns The enclosing gate expression, or undefined if none
|
|
23
|
-
*/
|
|
24
|
-
export declare function findEnclosingGate(content: string, basename: string): string | undefined;
|
|
25
|
-
/**
|
|
26
|
-
* Determines whether the given source file is gated off on the current
|
|
27
|
-
* host by an enclosing `if CONFIG[...]:` block in its owning moz.build,
|
|
28
|
-
* or by a path-convention rule for installer-tree subdirectories that
|
|
29
|
-
* are packaged via Makefile.in recipes the audit does not parse.
|
|
30
|
-
* Returns `gatedOff: false` and no expression when no gate is found. The
|
|
31
|
-
* file is not platform-restricted, so the caller should audit it
|
|
32
|
-
* normally.
|
|
33
|
-
*
|
|
34
|
-
* @param engineDir Absolute path to the engine root
|
|
35
|
-
* @param sourcePath Engine-relative POSIX path of the source file
|
|
36
|
-
* @returns Detection result
|
|
37
|
-
*/
|
|
38
|
-
export declare function detectPlatformGate(engineDir: string, sourcePath: string): Promise<PlatformGateResult>;
|
|
39
|
-
/**
|
|
40
|
-
* Result of an ancestor `DIRS +=` gate lookup.
|
|
41
|
-
*/
|
|
42
|
-
export interface AncestorDirsGateResult {
|
|
43
|
-
/** True when an ancestor's `DIRS` entry is gated off on this host. */
|
|
44
|
-
gatedOff: boolean;
|
|
45
|
-
/** The gate expression that excluded the directory. */
|
|
46
|
-
gateExpression?: string;
|
|
47
|
-
/** Engine-relative path of the `moz.build` carrying the gate. */
|
|
48
|
-
gateFile?: string;
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Determines whether the source file's directory is excluded from this
|
|
52
|
-
* build by a gate in an ancestor `moz.build`.
|
|
53
|
-
*
|
|
54
|
-
* `detectPlatformGate` reads only the file's own nearest `moz.build`, which
|
|
55
|
-
* misses the common Firefox shape where the whole subtree is reached
|
|
56
|
-
* through a conditional `DIRS +=` one or more levels up: nothing in
|
|
57
|
-
* `toolkit/mozapps/defaultagent/moz.build` says "Windows only", yet none of
|
|
58
|
-
* it is built on macOS.
|
|
59
|
-
*
|
|
60
|
-
* Errs toward not skipping, like the rest of this module: an unreadable or
|
|
61
|
-
* oversized ancestor, or a directory no `DIRS` entry names, yields
|
|
62
|
-
* `gatedOff: false`.
|
|
63
|
-
*
|
|
64
|
-
* @param engineDir - Absolute path to the engine root
|
|
65
|
-
* @param sourcePath - Engine-relative POSIX path of the source file
|
|
66
|
-
*/
|
|
67
|
-
export declare function detectAncestorDirsGate(engineDir: string, sourcePath: string): Promise<AncestorDirsGateResult>;
|