@atlaspack/core 2.16.2-canary.48 → 2.16.2-canary.481
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 +1324 -0
- package/dist/AssetGraph.js +523 -0
- package/dist/Atlaspack.js +701 -0
- package/dist/AtlaspackConfig.js +324 -0
- package/dist/AtlaspackConfig.schema.js +117 -0
- package/dist/BundleGraph.js +1906 -0
- package/dist/CommittedAsset.js +142 -0
- package/dist/Dependency.js +125 -0
- package/dist/Environment.js +132 -0
- package/dist/EnvironmentManager.js +108 -0
- package/dist/IdentifierRegistry.js +38 -0
- package/dist/InternalConfig.js +37 -0
- package/dist/PackagerRunner.js +470 -0
- package/dist/ReporterRunner.js +151 -0
- package/dist/RequestTracker.js +1297 -0
- package/dist/SymbolPropagation.js +624 -0
- package/dist/TargetDescriptor.schema.js +146 -0
- package/dist/Transformation.js +514 -0
- package/dist/UncommittedAsset.js +310 -0
- package/dist/Validation.js +196 -0
- package/dist/applyRuntimes.js +384 -0
- package/dist/assetUtils.js +169 -0
- package/dist/atlaspack-v3/AtlaspackV3.js +83 -0
- package/dist/atlaspack-v3/NapiWorkerPool.js +114 -0
- package/dist/atlaspack-v3/fs.js +53 -0
- package/dist/atlaspack-v3/index.js +25 -0
- package/dist/atlaspack-v3/jsCallable.js +16 -0
- package/dist/atlaspack-v3/worker/compat/asset-symbols.js +190 -0
- package/dist/atlaspack-v3/worker/compat/bitflags.js +98 -0
- package/dist/atlaspack-v3/worker/compat/dependency.js +43 -0
- package/dist/atlaspack-v3/worker/compat/environment.js +57 -0
- package/dist/atlaspack-v3/worker/compat/index.js +24 -0
- package/dist/atlaspack-v3/worker/compat/mutable-asset.js +152 -0
- package/dist/atlaspack-v3/worker/compat/plugin-config.js +64 -0
- package/dist/atlaspack-v3/worker/compat/plugin-options.js +137 -0
- package/dist/atlaspack-v3/worker/compat/plugin-tracer.js +10 -0
- package/dist/atlaspack-v3/worker/compat/target.js +14 -0
- package/dist/atlaspack-v3/worker/side-effect-detector.js +243 -0
- package/dist/atlaspack-v3/worker/worker.js +398 -0
- package/dist/constants.js +17 -0
- package/dist/dumpGraphToGraphViz.js +281 -0
- package/dist/index.js +62 -0
- package/dist/loadAtlaspackPlugin.js +128 -0
- package/dist/loadDotEnv.js +41 -0
- package/dist/projectPath.js +83 -0
- package/dist/public/Asset.js +279 -0
- package/dist/public/Bundle.js +224 -0
- package/dist/public/BundleGraph.js +371 -0
- package/dist/public/BundleGroup.js +53 -0
- package/dist/public/Config.js +286 -0
- package/dist/public/Dependency.js +138 -0
- package/dist/public/Environment.js +278 -0
- package/dist/public/MutableBundleGraph.js +277 -0
- package/dist/public/PluginOptions.js +80 -0
- package/dist/public/Symbols.js +248 -0
- package/dist/public/Target.js +69 -0
- package/dist/registerCoreWithSerializer.js +38 -0
- package/dist/requests/AssetGraphRequest.js +430 -0
- package/dist/requests/AssetGraphRequestRust.js +471 -0
- package/dist/requests/AssetRequest.js +130 -0
- package/dist/requests/AtlaspackBuildRequest.js +98 -0
- package/dist/requests/AtlaspackConfigRequest.js +493 -0
- package/dist/requests/BundleGraphRequest.js +381 -0
- package/dist/requests/BundleGraphRequestRust.js +324 -0
- package/dist/requests/BundleGraphRequestUtils.js +262 -0
- package/dist/requests/ConfigRequest.js +246 -0
- package/dist/requests/DevDepRequest.js +204 -0
- package/dist/requests/EntryRequest.js +314 -0
- package/dist/requests/PackageRequest.js +89 -0
- package/dist/requests/PathRequest.js +349 -0
- package/dist/requests/TargetRequest.js +1316 -0
- package/dist/requests/ValidationRequest.js +49 -0
- package/dist/requests/WriteBundleRequest.js +522 -0
- package/dist/requests/WriteBundlesRequest.js +190 -0
- package/dist/requests/asset-graph-diff.js +128 -0
- package/dist/requests/asset-graph-dot.js +131 -0
- package/dist/resolveOptions.js +267 -0
- package/dist/rustWorkerThreadDylibHack.js +19 -0
- package/dist/serializerCore.browser.js +43 -0
- package/dist/summarizeRequest.js +39 -0
- package/dist/types.js +31 -0
- package/dist/utils.js +172 -0
- package/dist/worker.js +123 -0
- package/lib/AssetGraph.js +53 -15
- package/lib/Atlaspack.js +140 -56
- package/lib/AtlaspackConfig.js +17 -6
- package/lib/AtlaspackConfig.schema.js +16 -5
- package/lib/BundleGraph.js +390 -43
- package/lib/CommittedAsset.js +8 -2
- package/lib/Dependency.js +9 -3
- package/lib/Environment.js +16 -10
- package/lib/EnvironmentManager.js +143 -0
- package/lib/IdentifierRegistry.js +2 -4
- package/lib/InternalConfig.js +3 -2
- package/lib/PackagerRunner.js +46 -82
- package/lib/ReporterRunner.js +8 -12
- package/lib/RequestTracker.js +191 -152
- package/lib/SymbolPropagation.js +52 -29
- package/lib/TargetDescriptor.schema.js +10 -1
- package/lib/Transformation.js +68 -19
- package/lib/UncommittedAsset.js +17 -24
- package/lib/Validation.js +20 -5
- package/lib/applyRuntimes.js +98 -7
- package/lib/assetUtils.js +16 -6
- package/lib/atlaspack-v3/AtlaspackV3.js +58 -15
- package/lib/atlaspack-v3/NapiWorkerPool.js +63 -2
- package/lib/atlaspack-v3/fs.js +4 -1
- package/lib/atlaspack-v3/index.js +28 -1
- package/lib/atlaspack-v3/jsCallable.js +0 -2
- package/lib/atlaspack-v3/worker/compat/asset-symbols.js +7 -4
- package/lib/atlaspack-v3/worker/compat/bitflags.js +31 -25
- package/lib/atlaspack-v3/worker/compat/dependency.js +4 -1
- package/lib/atlaspack-v3/worker/compat/environment.js +10 -7
- package/lib/atlaspack-v3/worker/compat/index.js +0 -11
- package/lib/atlaspack-v3/worker/compat/mutable-asset.js +16 -11
- package/lib/atlaspack-v3/worker/compat/plugin-config.js +14 -35
- package/lib/atlaspack-v3/worker/compat/plugin-options.js +16 -2
- package/lib/atlaspack-v3/worker/compat/plugin-tracer.js +3 -0
- package/lib/atlaspack-v3/worker/compat/target.js +2 -0
- package/lib/atlaspack-v3/worker/index.js +3 -0
- package/lib/atlaspack-v3/worker/side-effect-detector.js +214 -0
- package/lib/atlaspack-v3/worker/worker.js +231 -79
- package/lib/constants.js +0 -1
- package/lib/dumpGraphToGraphViz.js +72 -17
- package/lib/index.js +46 -3
- package/lib/loadAtlaspackPlugin.js +2 -3
- package/lib/loadDotEnv.js +5 -2
- package/lib/projectPath.js +6 -1
- package/lib/public/Asset.js +22 -12
- package/lib/public/Bundle.js +16 -18
- package/lib/public/BundleGraph.js +27 -25
- package/lib/public/BundleGroup.js +5 -6
- package/lib/public/Config.js +118 -18
- package/lib/public/Dependency.js +9 -7
- package/lib/public/Environment.js +13 -8
- package/lib/public/MutableBundleGraph.js +56 -15
- package/lib/public/PluginOptions.js +2 -2
- package/lib/public/Symbols.js +12 -12
- package/lib/public/Target.js +8 -7
- package/lib/registerCoreWithSerializer.js +7 -4
- package/lib/requests/AssetGraphRequest.js +61 -40
- package/lib/requests/AssetGraphRequestRust.js +314 -82
- package/lib/requests/AssetRequest.js +24 -7
- package/lib/requests/AtlaspackBuildRequest.js +53 -7
- package/lib/requests/AtlaspackConfigRequest.js +29 -19
- package/lib/requests/BundleGraphRequest.js +61 -130
- package/lib/requests/BundleGraphRequestRust.js +381 -0
- package/lib/requests/BundleGraphRequestUtils.js +280 -0
- package/lib/requests/ConfigRequest.js +55 -7
- package/lib/requests/DevDepRequest.js +32 -6
- package/lib/requests/EntryRequest.js +4 -3
- package/lib/requests/PackageRequest.js +56 -12
- package/lib/requests/PathRequest.js +26 -6
- package/lib/requests/TargetRequest.js +129 -60
- package/lib/requests/ValidationRequest.js +6 -2
- package/lib/requests/WriteBundleRequest.js +329 -20
- package/lib/requests/WriteBundlesRequest.js +64 -10
- package/lib/requests/asset-graph-diff.js +13 -8
- package/lib/requests/asset-graph-dot.js +2 -8
- package/lib/resolveOptions.js +37 -14
- package/lib/rustWorkerThreadDylibHack.js +0 -1
- package/lib/serializerCore.browser.js +1 -2
- package/lib/summarizeRequest.js +1 -1
- package/lib/types/AssetGraph.d.ts +55 -0
- package/lib/types/Atlaspack.d.ts +52 -0
- package/lib/types/AtlaspackConfig.d.ts +65 -0
- package/lib/types/AtlaspackConfig.schema.d.ts +53 -0
- package/lib/types/BundleGraph.d.ts +232 -0
- package/lib/types/CommittedAsset.d.ts +23 -0
- package/lib/types/Dependency.d.ts +44 -0
- package/lib/types/Environment.d.ts +11 -0
- package/lib/types/EnvironmentManager.d.ts +37 -0
- package/lib/types/IdentifierRegistry.d.ts +6 -0
- package/lib/types/InternalConfig.d.ts +23 -0
- package/lib/types/PackagerRunner.d.ts +85 -0
- package/lib/types/ReporterRunner.d.ts +25 -0
- package/lib/types/RequestTracker.d.ts +385 -0
- package/lib/types/SymbolPropagation.d.ts +11 -0
- package/lib/types/TargetDescriptor.schema.d.ts +5 -0
- package/lib/types/Transformation.d.ts +72 -0
- package/lib/types/UncommittedAsset.d.ts +61 -0
- package/lib/types/Validation.d.ts +37 -0
- package/lib/types/applyRuntimes.d.ts +25 -0
- package/lib/types/assetUtils.d.ts +42 -0
- package/lib/types/atlaspack-v3/AtlaspackV3.d.ts +35 -0
- package/lib/types/atlaspack-v3/NapiWorkerPool.d.ts +13 -0
- package/lib/types/atlaspack-v3/fs.d.ts +13 -0
- package/lib/types/atlaspack-v3/index.d.ts +6 -0
- package/lib/types/atlaspack-v3/jsCallable.d.ts +1 -0
- package/lib/types/atlaspack-v3/worker/compat/asset-symbols.d.ts +51 -0
- package/lib/types/atlaspack-v3/worker/compat/bitflags.d.ts +14 -0
- package/lib/types/atlaspack-v3/worker/compat/dependency.d.ts +25 -0
- package/lib/types/atlaspack-v3/worker/compat/environment.d.ts +27 -0
- package/{src/atlaspack-v3/worker/compat/index.js → lib/types/atlaspack-v3/worker/compat/index.d.ts} +0 -2
- package/lib/types/atlaspack-v3/worker/compat/mutable-asset.d.ts +49 -0
- package/lib/types/atlaspack-v3/worker/compat/plugin-config.d.ts +29 -0
- package/lib/types/atlaspack-v3/worker/compat/plugin-options.d.ts +23 -0
- package/lib/types/atlaspack-v3/worker/compat/plugin-tracer.d.ts +5 -0
- package/lib/types/atlaspack-v3/worker/compat/target.d.ts +11 -0
- package/lib/types/atlaspack-v3/worker/side-effect-detector.d.ts +76 -0
- package/lib/types/atlaspack-v3/worker/worker.d.ts +81 -0
- package/lib/types/constants.d.ts +13 -0
- package/lib/types/dumpGraphToGraphViz.d.ts +10 -0
- package/lib/types/index.d.ts +8 -0
- package/lib/types/loadAtlaspackPlugin.d.ts +8 -0
- package/lib/types/loadDotEnv.d.ts +3 -0
- package/lib/types/projectPath.d.ts +19 -0
- package/lib/types/public/Asset.d.ts +74 -0
- package/lib/types/public/Bundle.d.ts +45 -0
- package/lib/types/public/BundleGraph.d.ts +72 -0
- package/lib/types/public/BundleGroup.d.ts +12 -0
- package/lib/types/public/Config.d.ts +75 -0
- package/lib/types/public/Dependency.d.ts +32 -0
- package/lib/types/public/Environment.d.ts +34 -0
- package/lib/types/public/MutableBundleGraph.d.ts +26 -0
- package/lib/types/public/PluginOptions.d.ts +25 -0
- package/lib/types/public/Symbols.d.ts +81 -0
- package/lib/types/public/Target.d.ts +16 -0
- package/lib/types/registerCoreWithSerializer.d.ts +2 -0
- package/lib/types/requests/AssetGraphRequest.d.ts +76 -0
- package/lib/types/requests/AssetGraphRequestRust.d.ts +21 -0
- package/lib/types/requests/AssetRequest.d.ts +16 -0
- package/lib/types/requests/AtlaspackBuildRequest.d.ts +33 -0
- package/lib/types/requests/AtlaspackConfigRequest.d.ts +45 -0
- package/lib/types/requests/BundleGraphRequest.d.ts +28 -0
- package/lib/types/requests/BundleGraphRequestRust.d.ts +34 -0
- package/lib/types/requests/BundleGraphRequestUtils.d.ts +38 -0
- package/lib/types/requests/ConfigRequest.d.ts +67 -0
- package/lib/types/requests/DevDepRequest.d.ts +30 -0
- package/lib/types/requests/EntryRequest.d.ts +36 -0
- package/lib/types/requests/PackageRequest.d.ts +27 -0
- package/lib/types/requests/PathRequest.d.ts +48 -0
- package/lib/types/requests/TargetRequest.d.ts +48 -0
- package/lib/types/requests/ValidationRequest.d.ts +20 -0
- package/lib/types/requests/WriteBundleRequest.d.ts +80 -0
- package/lib/types/requests/WriteBundlesRequest.d.ts +32 -0
- package/lib/types/requests/asset-graph-diff.d.ts +1 -0
- package/lib/types/requests/asset-graph-dot.d.ts +9 -0
- package/lib/types/resolveOptions.d.ts +3 -0
- package/lib/types/rustWorkerThreadDylibHack.d.ts +9 -0
- package/lib/types/serializerCore.browser.d.ts +3 -0
- package/lib/types/summarizeRequest.d.ts +10 -0
- package/lib/types/types.d.ts +496 -0
- package/lib/types/utils.d.ts +23 -0
- package/lib/types/worker.d.ts +44 -0
- package/lib/types.js +8 -1
- package/lib/utils.js +18 -3
- package/lib/worker.js +32 -15
- package/package.json +26 -36
- package/src/{AssetGraph.js → AssetGraph.ts} +87 -51
- package/src/{Atlaspack.js → Atlaspack.ts} +181 -72
- package/src/{AtlaspackConfig.schema.js → AtlaspackConfig.schema.ts} +25 -19
- package/src/{AtlaspackConfig.js → AtlaspackConfig.ts} +78 -54
- package/src/{BundleGraph.js → BundleGraph.ts} +575 -145
- package/src/{CommittedAsset.js → CommittedAsset.ts} +15 -13
- package/src/{Dependency.js → Dependency.ts} +59 -42
- package/src/{Environment.js → Environment.ts} +24 -15
- package/src/EnvironmentManager.ts +154 -0
- package/src/{IdentifierRegistry.js → IdentifierRegistry.ts} +1 -4
- package/src/{InternalConfig.js → InternalConfig.ts} +22 -23
- package/src/{PackagerRunner.js → PackagerRunner.ts} +114 -159
- package/src/{ReporterRunner.js → ReporterRunner.ts} +13 -18
- package/src/{RequestTracker.js → RequestTracker.ts} +444 -355
- package/src/{SymbolPropagation.js → SymbolPropagation.ts} +178 -61
- package/src/{TargetDescriptor.schema.js → TargetDescriptor.schema.ts} +10 -1
- package/src/{Transformation.js → Transformation.ts} +110 -65
- package/src/{UncommittedAsset.js → UncommittedAsset.ts} +45 -49
- package/src/{Validation.js → Validation.ts} +32 -17
- package/src/{applyRuntimes.js → applyRuntimes.ts} +135 -26
- package/src/{assetUtils.js → assetUtils.ts} +49 -36
- package/src/atlaspack-v3/AtlaspackV3.ts +183 -0
- package/src/atlaspack-v3/NapiWorkerPool.ts +129 -0
- package/src/atlaspack-v3/{fs.js → fs.ts} +8 -4
- package/src/atlaspack-v3/{index.js → index.ts} +3 -4
- package/src/atlaspack-v3/jsCallable.ts +14 -0
- package/src/atlaspack-v3/worker/compat/{asset-symbols.js → asset-symbols.ts} +40 -30
- package/src/atlaspack-v3/worker/compat/bitflags.ts +102 -0
- package/src/atlaspack-v3/worker/compat/{dependency.js → dependency.ts} +13 -13
- package/src/atlaspack-v3/worker/compat/{environment.js → environment.ts} +13 -9
- package/src/atlaspack-v3/worker/compat/index.ts +8 -0
- package/src/atlaspack-v3/worker/compat/{mutable-asset.js → mutable-asset.ts} +21 -20
- package/src/atlaspack-v3/worker/compat/{plugin-config.js → plugin-config.ts} +25 -56
- package/src/atlaspack-v3/worker/compat/{plugin-options.js → plugin-options.ts} +19 -5
- package/src/atlaspack-v3/worker/compat/{plugin-tracer.js → plugin-tracer.ts} +2 -2
- package/src/atlaspack-v3/worker/compat/{target.js → target.ts} +3 -4
- package/src/atlaspack-v3/worker/index.js +2 -1
- package/src/atlaspack-v3/worker/side-effect-detector.ts +298 -0
- package/src/atlaspack-v3/worker/worker.ts +548 -0
- package/src/{constants.js → constants.ts} +0 -3
- package/src/{dumpGraphToGraphViz.js → dumpGraphToGraphViz.ts} +73 -28
- package/src/index.ts +18 -0
- package/src/{loadAtlaspackPlugin.js → loadAtlaspackPlugin.ts} +8 -9
- package/src/{loadDotEnv.js → loadDotEnv.ts} +2 -2
- package/src/{projectPath.js → projectPath.ts} +20 -9
- package/src/public/{Asset.js → Asset.ts} +41 -28
- package/src/public/{Bundle.js → Bundle.ts} +28 -29
- package/src/public/{BundleGraph.js → BundleGraph.ts} +103 -68
- package/src/public/{BundleGroup.js → BundleGroup.ts} +7 -10
- package/src/public/{Config.js → Config.ts} +171 -33
- package/src/public/{Dependency.js → Dependency.ts} +20 -17
- package/src/public/{Environment.js → Environment.ts} +28 -17
- package/src/public/{MutableBundleGraph.js → MutableBundleGraph.ts} +55 -24
- package/src/public/{PluginOptions.js → PluginOptions.ts} +6 -6
- package/src/public/{Symbols.js → Symbols.ts} +75 -36
- package/src/public/{Target.js → Target.ts} +10 -8
- package/src/{registerCoreWithSerializer.js → registerCoreWithSerializer.ts} +9 -7
- package/src/requests/{AssetGraphRequest.js → AssetGraphRequest.ts} +117 -90
- package/src/requests/AssetGraphRequestRust.ts +557 -0
- package/src/requests/{AssetRequest.js → AssetRequest.ts} +24 -18
- package/src/requests/AtlaspackBuildRequest.ts +168 -0
- package/src/requests/{AtlaspackConfigRequest.js → AtlaspackConfigRequest.ts} +72 -58
- package/src/requests/{BundleGraphRequest.js → BundleGraphRequest.ts} +119 -199
- package/src/requests/BundleGraphRequestRust.ts +470 -0
- package/src/requests/BundleGraphRequestUtils.ts +323 -0
- package/src/requests/{ConfigRequest.js → ConfigRequest.ts} +110 -50
- package/src/requests/{DevDepRequest.js → DevDepRequest.ts} +60 -35
- package/src/requests/{EntryRequest.js → EntryRequest.ts} +36 -31
- package/src/requests/{PackageRequest.js → PackageRequest.ts} +52 -25
- package/src/requests/{PathRequest.js → PathRequest.ts} +47 -37
- package/src/requests/{TargetRequest.js → TargetRequest.ts} +265 -179
- package/src/requests/{ValidationRequest.js → ValidationRequest.ts} +18 -17
- package/src/requests/WriteBundleRequest.ts +734 -0
- package/src/requests/{WriteBundlesRequest.js → WriteBundlesRequest.ts} +134 -50
- package/src/requests/{asset-graph-diff.js → asset-graph-diff.ts} +25 -21
- package/src/requests/{asset-graph-dot.js → asset-graph-dot.ts} +8 -12
- package/src/{resolveOptions.js → resolveOptions.ts} +57 -27
- package/src/{rustWorkerThreadDylibHack.js → rustWorkerThreadDylibHack.ts} +1 -4
- package/src/{serializerCore.browser.js → serializerCore.browser.ts} +2 -3
- package/src/{summarizeRequest.js → summarizeRequest.ts} +17 -5
- package/src/types.ts +651 -0
- package/src/{utils.js → utils.ts} +52 -21
- package/src/{worker.js → worker.ts} +50 -42
- package/test/{AssetGraph.test.js → AssetGraph.test.ts} +5 -8
- package/test/{Atlaspack.test.js → Atlaspack.test.ts} +5 -10
- package/test/{AtlaspackConfig.test.js → AtlaspackConfig.test.ts} +0 -5
- package/test/{AtlaspackConfigRequest.test.js → AtlaspackConfigRequest.test.ts} +76 -16
- package/test/{BundleGraph.test.js → BundleGraph.test.ts} +8 -13
- package/test/{Dependency.test.js → Dependency.test.ts} +2 -3
- package/test/{EntryRequest.test.js → EntryRequest.test.ts} +1 -6
- package/test/Environment.test.ts +153 -0
- package/test/EnvironmentManager.test.ts +188 -0
- package/test/{IdentifierRegistry.test.js → IdentifierRegistry.test.ts} +2 -4
- package/test/{InternalAsset.test.js → InternalAsset.test.ts} +2 -7
- package/test/PackagerRunner.test.ts +0 -0
- package/test/{PublicAsset.test.js → PublicAsset.test.ts} +2 -7
- package/test/{PublicBundle.test.js → PublicBundle.test.ts} +1 -2
- package/test/{PublicDependency.test.js → PublicDependency.test.ts} +0 -2
- package/test/PublicEnvironment.test.ts +49 -0
- package/test/{PublicMutableBundleGraph.test.js → PublicMutableBundleGraph.test.ts} +6 -11
- package/test/{RequestTracker.test.js → RequestTracker.test.ts} +136 -58
- package/test/{SymbolPropagation.test.js → SymbolPropagation.test.ts} +124 -74
- package/test/{TargetRequest.test.js → TargetRequest.test.ts} +91 -92
- package/test/fixtures/config-with-reporters/.parcelrc +7 -0
- package/test/fixtures/custom-targets/package.json +6 -0
- package/test/public/Config.test.ts +104 -0
- package/test/requests/AssetGraphRequestRust.test.ts +443 -0
- package/test/requests/{ConfigRequest.test.js → ConfigRequest.test.ts} +202 -13
- package/test/requests/{DevDepRequest.test.js → DevDepRequest.test.ts} +0 -2
- package/test/requests/WriteBundleRequest.test.ts +602 -0
- package/test/{test-utils.js → test-utils.ts} +3 -4
- package/test/{utils.test.js → utils.test.ts} +1 -3
- package/tsconfig.json +60 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/index.d.ts +0 -30
- package/lib/atlaspack-v3/worker/compat/plugin-logger.js +0 -29
- package/src/atlaspack-v3/AtlaspackV3.js +0 -87
- package/src/atlaspack-v3/NapiWorkerPool.js +0 -53
- package/src/atlaspack-v3/jsCallable.js +0 -18
- package/src/atlaspack-v3/worker/compat/bitflags.js +0 -100
- package/src/atlaspack-v3/worker/compat/plugin-logger.js +0 -47
- package/src/atlaspack-v3/worker/worker.js +0 -369
- package/src/index.js +0 -13
- package/src/requests/AssetGraphRequestRust.js +0 -263
- package/src/requests/AtlaspackBuildRequest.js +0 -111
- package/src/requests/WriteBundleRequest.js +0 -369
- package/src/types.js +0 -600
- package/test/Environment.test.js +0 -119
- package/test/PackagerRunner.test.js +0 -27
- package/test/PublicEnvironment.test.js +0 -27
- package/test/requests/AssetGraphRequestRust.test.js +0 -411
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import type {Async, Bundle as IBundle, Namer} from '@atlaspack/types';
|
|
1
|
+
import type {Async} from '@atlaspack/types';
|
|
4
2
|
import type {SharedReference} from '@atlaspack/workers';
|
|
5
3
|
import type {AtlaspackConfig, LoadedPlugin} from '../AtlaspackConfig';
|
|
6
4
|
import type {StaticRunOpts, RunAPI} from '../RequestTracker';
|
|
7
5
|
import type {
|
|
8
6
|
Asset,
|
|
9
7
|
AssetGroup,
|
|
10
|
-
Bundle as InternalBundle,
|
|
11
8
|
Config,
|
|
12
9
|
DevDepRequest,
|
|
13
10
|
AtlaspackOptions,
|
|
@@ -17,19 +14,15 @@ import type {ConfigAndCachePath} from './AtlaspackConfigRequest';
|
|
|
17
14
|
|
|
18
15
|
import fs from 'fs';
|
|
19
16
|
import invariant from 'assert';
|
|
20
|
-
import assert from 'assert';
|
|
21
17
|
import nullthrows from 'nullthrows';
|
|
22
|
-
import {PluginLogger} from '@atlaspack/logger';
|
|
18
|
+
import {instrumentAsync, PluginLogger} from '@atlaspack/logger';
|
|
23
19
|
import {getFeatureFlag} from '@atlaspack/feature-flags';
|
|
24
20
|
import ThrowableDiagnostic, {errorToDiagnostic} from '@atlaspack/diagnostic';
|
|
25
21
|
import AssetGraph from '../AssetGraph';
|
|
26
|
-
import BundleGraph from '../public/BundleGraph';
|
|
27
22
|
import InternalBundleGraph, {bundleGraphEdgeTypes} from '../BundleGraph';
|
|
28
23
|
import MutableBundleGraph from '../public/MutableBundleGraph';
|
|
29
|
-
import {Bundle, NamedBundle} from '../public/Bundle';
|
|
30
24
|
import {report} from '../ReporterRunner';
|
|
31
25
|
import dumpGraphToGraphViz from '../dumpGraphToGraphViz';
|
|
32
|
-
import {unique, setSymmetricDifference} from '@atlaspack/utils';
|
|
33
26
|
import {hashString} from '@atlaspack/rust';
|
|
34
27
|
import PluginOptions from '../public/PluginOptions';
|
|
35
28
|
import applyRuntimes from '../applyRuntimes';
|
|
@@ -42,19 +35,16 @@ import {
|
|
|
42
35
|
createDevDependency,
|
|
43
36
|
getDevDepRequests,
|
|
44
37
|
invalidateDevDeps,
|
|
45
|
-
runDevDepRequest,
|
|
46
38
|
} from './DevDepRequest';
|
|
47
|
-
import {
|
|
48
|
-
import {
|
|
49
|
-
loadPluginConfig,
|
|
50
|
-
runConfigRequest,
|
|
51
|
-
type PluginWithLoadConfig,
|
|
52
|
-
} from './ConfigRequest';
|
|
39
|
+
import {PluginWithLoadConfig} from './ConfigRequest';
|
|
40
|
+
import {fromProjectPathRelative} from '../projectPath';
|
|
53
41
|
import {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
42
|
+
validateBundles,
|
|
43
|
+
nameBundle,
|
|
44
|
+
loadPluginConfigWithDevDeps,
|
|
45
|
+
runDevDepRequest as runDevDepRequestShared,
|
|
46
|
+
dumpBundleGraphSnapshot,
|
|
47
|
+
} from './BundleGraphRequestUtils';
|
|
58
48
|
import createAssetGraphRequestJS from './AssetGraphRequest';
|
|
59
49
|
import {createAssetGraphRequestRust} from './AssetGraphRequestRust';
|
|
60
50
|
import {tracer, PluginTracer} from '@atlaspack/profiler';
|
|
@@ -66,34 +56,30 @@ import {
|
|
|
66
56
|
} from './asset-graph-dot';
|
|
67
57
|
import {Priority} from '../types';
|
|
68
58
|
|
|
69
|
-
type BundleGraphRequestInput = {
|
|
70
|
-
requestedAssetIds: Set<string
|
|
71
|
-
signal?: AbortSignal
|
|
72
|
-
optionsRef: SharedReference
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
type BundleGraphRequestResult = {|
|
|
76
|
-
bundleGraph: InternalBundleGraph,
|
|
77
|
-
|};
|
|
59
|
+
type BundleGraphRequestInput = {
|
|
60
|
+
requestedAssetIds: Set<string>;
|
|
61
|
+
signal?: AbortSignal;
|
|
62
|
+
optionsRef: SharedReference;
|
|
63
|
+
};
|
|
78
64
|
|
|
79
|
-
type RunInput = {
|
|
80
|
-
input: BundleGraphRequestInput
|
|
81
|
-
|
|
82
|
-
|};
|
|
65
|
+
type RunInput = {
|
|
66
|
+
input: BundleGraphRequestInput;
|
|
67
|
+
} & StaticRunOpts<BundleGraphResult>;
|
|
83
68
|
|
|
84
69
|
// TODO: Rename to BundleGraphRequestResult
|
|
85
|
-
export type BundleGraphResult = {
|
|
86
|
-
bundleGraph: InternalBundleGraph
|
|
87
|
-
changedAssets: Map<string, Asset
|
|
88
|
-
assetRequests: Array<AssetGroup
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
70
|
+
export type BundleGraphResult = {
|
|
71
|
+
bundleGraph: InternalBundleGraph;
|
|
72
|
+
changedAssets: Map<string, Asset>;
|
|
73
|
+
assetRequests: Array<AssetGroup>;
|
|
74
|
+
didIncrementallyBundle: boolean;
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
type BundleGraphRequest = {
|
|
78
|
+
id: string;
|
|
79
|
+
readonly type: typeof requestTypes.bundle_graph_request;
|
|
80
|
+
run: (arg1: RunInput) => Async<BundleGraphResult>;
|
|
81
|
+
input: BundleGraphRequestInput;
|
|
82
|
+
};
|
|
97
83
|
|
|
98
84
|
function applySideEffectsForLoadableImports(assetGraph: AssetGraph) {
|
|
99
85
|
// Avoid revisiting nodes
|
|
@@ -147,9 +133,10 @@ export default function createBundleGraphRequest(
|
|
|
147
133
|
let {optionsRef, requestedAssetIds, signal} = input.input;
|
|
148
134
|
let measurement = tracer.createMeasurement('building');
|
|
149
135
|
|
|
150
|
-
let createAssetGraphRequest =
|
|
151
|
-
|
|
152
|
-
|
|
136
|
+
let createAssetGraphRequest =
|
|
137
|
+
getFeatureFlag('atlaspackV3') && input.rustAtlaspack
|
|
138
|
+
? createAssetGraphRequestRust(input.rustAtlaspack)
|
|
139
|
+
: createAssetGraphRequestJS;
|
|
153
140
|
|
|
154
141
|
let request = createAssetGraphRequest({
|
|
155
142
|
name: 'Main',
|
|
@@ -159,14 +146,17 @@ export default function createBundleGraphRequest(
|
|
|
159
146
|
lazyIncludes: options.lazyIncludes,
|
|
160
147
|
lazyExcludes: options.lazyExcludes,
|
|
161
148
|
requestedAssetIds,
|
|
149
|
+
skipSymbolProp: getFeatureFlag('rustSymbolTracker'),
|
|
162
150
|
});
|
|
163
151
|
|
|
164
|
-
let {assetGraph, changedAssets, assetRequests} = await
|
|
165
|
-
request,
|
|
166
|
-
{
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
152
|
+
let {assetGraph, changedAssets, assetRequests} = await instrumentAsync(
|
|
153
|
+
'asset-graph-request',
|
|
154
|
+
() => {
|
|
155
|
+
return api.runRequest(request, {
|
|
156
|
+
force:
|
|
157
|
+
Boolean(input.rustAtlaspack) ||
|
|
158
|
+
(options.shouldBuildLazily && requestedAssetIds.size > 0),
|
|
159
|
+
});
|
|
170
160
|
},
|
|
171
161
|
);
|
|
172
162
|
|
|
@@ -198,7 +188,11 @@ export default function createBundleGraphRequest(
|
|
|
198
188
|
// force: true,
|
|
199
189
|
// },
|
|
200
190
|
// );
|
|
201
|
-
// require('./asset-graph-diff.
|
|
191
|
+
// require('./asset-graph-diff.ts')(
|
|
192
|
+
// jsAssetGraph,
|
|
193
|
+
// assetGraph,
|
|
194
|
+
// options.projectRoot,
|
|
195
|
+
// );
|
|
202
196
|
// }
|
|
203
197
|
|
|
204
198
|
measurement && measurement.end();
|
|
@@ -245,7 +239,7 @@ export default function createBundleGraphRequest(
|
|
|
245
239
|
}
|
|
246
240
|
|
|
247
241
|
await dumpGraphToGraphViz(
|
|
248
|
-
//
|
|
242
|
+
// @ts-expect-error TS2345
|
|
249
243
|
res.bundleGraph._graph,
|
|
250
244
|
'BundleGraph',
|
|
251
245
|
bundleGraphEdgeTypes,
|
|
@@ -283,21 +277,12 @@ class BundlerRunner {
|
|
|
283
277
|
this.pluginOptions = new PluginOptions(
|
|
284
278
|
optionsProxy(this.options, api.invalidateOnOptionChange),
|
|
285
279
|
);
|
|
286
|
-
|
|
287
|
-
|
|
280
|
+
this.cacheKey =
|
|
281
|
+
hashString(
|
|
288
282
|
`${ATLASPACK_VERSION}:BundleGraph:${
|
|
289
283
|
JSON.stringify(options.entries) ?? ''
|
|
290
284
|
}${options.mode}${options.shouldBuildLazily ? 'lazy' : 'eager'}`,
|
|
291
|
-
);
|
|
292
|
-
this.cacheKey = `BundleGraph/${ATLASPACK_VERSION}/${options.mode}/${key}`;
|
|
293
|
-
} else {
|
|
294
|
-
this.cacheKey =
|
|
295
|
-
hashString(
|
|
296
|
-
`${ATLASPACK_VERSION}:BundleGraph:${
|
|
297
|
-
JSON.stringify(options.entries) ?? ''
|
|
298
|
-
}${options.mode}${options.shouldBuildLazily ? 'lazy' : 'eager'}`,
|
|
299
|
-
) + '-BundleGraph';
|
|
300
|
-
}
|
|
285
|
+
) + '-BundleGraph';
|
|
301
286
|
}
|
|
302
287
|
|
|
303
288
|
async loadConfigs() {
|
|
@@ -316,62 +301,47 @@ class BundlerRunner {
|
|
|
316
301
|
}
|
|
317
302
|
}
|
|
318
303
|
|
|
319
|
-
async loadConfig<T
|
|
320
|
-
|
|
321
|
-
plugin
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
let devDepRequest = await createDevDependency(
|
|
329
|
-
devDep,
|
|
330
|
-
this.previousDevDeps,
|
|
331
|
-
this.options,
|
|
332
|
-
);
|
|
333
|
-
await this.runDevDepRequest(devDepRequest);
|
|
334
|
-
}
|
|
335
|
-
|
|
336
|
-
this.configs.set(plugin.name, config);
|
|
304
|
+
async loadConfig<T extends PluginWithLoadConfig>(plugin: LoadedPlugin<T>) {
|
|
305
|
+
await loadPluginConfigWithDevDeps(
|
|
306
|
+
plugin,
|
|
307
|
+
this.options,
|
|
308
|
+
this.api,
|
|
309
|
+
this.previousDevDeps,
|
|
310
|
+
this.devDepRequests,
|
|
311
|
+
this.configs,
|
|
312
|
+
);
|
|
337
313
|
}
|
|
338
314
|
|
|
339
315
|
async runDevDepRequest(devDepRequest: DevDepRequest | DevDepRequestRef) {
|
|
340
|
-
|
|
341
|
-
let key = `${specifier}:${fromProjectPathRelative(resolveFrom)}`;
|
|
342
|
-
this.devDepRequests.set(key, devDepRequest);
|
|
343
|
-
await runDevDepRequest(this.api, devDepRequest);
|
|
316
|
+
await runDevDepRequestShared(this.api, devDepRequest, this.devDepRequests);
|
|
344
317
|
}
|
|
345
318
|
|
|
346
319
|
async bundle({
|
|
347
320
|
graph,
|
|
348
321
|
changedAssets,
|
|
349
322
|
assetRequests,
|
|
350
|
-
}: {
|
|
351
|
-
graph: AssetGraph
|
|
352
|
-
changedAssets: Map<string, Asset
|
|
353
|
-
assetRequests: Array<AssetGroup
|
|
354
|
-
|
|
323
|
+
}: {
|
|
324
|
+
graph: AssetGraph;
|
|
325
|
+
changedAssets: Map<string, Asset>;
|
|
326
|
+
assetRequests: Array<AssetGroup>;
|
|
327
|
+
}): Promise<BundleGraphResult> {
|
|
355
328
|
report({
|
|
356
329
|
type: 'buildProgress',
|
|
357
330
|
phase: 'bundling',
|
|
358
331
|
});
|
|
359
|
-
|
|
332
|
+
let didIncrementallyBundle = false;
|
|
360
333
|
await this.loadConfigs();
|
|
361
334
|
|
|
362
335
|
let plugin = await this.config.getBundler();
|
|
363
336
|
let {plugin: bundler, name, resolveFrom} = plugin;
|
|
364
337
|
|
|
365
338
|
// if a previous asset graph hash is passed in, check if the bundle graph is also available
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
}
|
|
373
|
-
}
|
|
374
|
-
if (previousBundleGraphResult == null) {
|
|
339
|
+
const previousBundleGraphResult: BundleGraphResult | null | undefined =
|
|
340
|
+
await this.api.getPreviousResult();
|
|
341
|
+
const canIncrementallyBundle =
|
|
342
|
+
previousBundleGraphResult != null && graph.canIncrementallyBundle();
|
|
343
|
+
|
|
344
|
+
if (graph.safeToIncrementallyBundle && previousBundleGraphResult == null) {
|
|
375
345
|
graph.safeToIncrementallyBundle = false;
|
|
376
346
|
}
|
|
377
347
|
|
|
@@ -383,7 +353,7 @@ class BundlerRunner {
|
|
|
383
353
|
category: 'bundle',
|
|
384
354
|
});
|
|
385
355
|
try {
|
|
386
|
-
if (previousBundleGraphResult) {
|
|
356
|
+
if (canIncrementallyBundle && previousBundleGraphResult) {
|
|
387
357
|
internalBundleGraph = previousBundleGraphResult.bundleGraph;
|
|
388
358
|
for (let changedAssetId of changedAssets.keys()) {
|
|
389
359
|
// Copy over the whole node to also have correct symbol data
|
|
@@ -393,6 +363,7 @@ class BundlerRunner {
|
|
|
393
363
|
invariant(changedAssetNode.type === 'asset');
|
|
394
364
|
internalBundleGraph.updateAsset(changedAssetNode);
|
|
395
365
|
}
|
|
366
|
+
didIncrementallyBundle = true;
|
|
396
367
|
} else {
|
|
397
368
|
internalBundleGraph = InternalBundleGraph.fromAssetGraph(
|
|
398
369
|
graph,
|
|
@@ -401,7 +372,7 @@ class BundlerRunner {
|
|
|
401
372
|
invariant(internalBundleGraph != null); // ensures the graph was created
|
|
402
373
|
|
|
403
374
|
await dumpGraphToGraphViz(
|
|
404
|
-
//
|
|
375
|
+
// @ts-expect-error TS2345
|
|
405
376
|
internalBundleGraph._graph,
|
|
406
377
|
'before_bundle',
|
|
407
378
|
bundleGraphEdgeTypes,
|
|
@@ -426,16 +397,20 @@ class BundlerRunner {
|
|
|
426
397
|
}
|
|
427
398
|
|
|
428
399
|
// this the normal bundle workflow (bundle, optimizing, run-times, naming)
|
|
429
|
-
await
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
400
|
+
await instrumentAsync('bundle (V2)', async () => {
|
|
401
|
+
await bundler.bundle({
|
|
402
|
+
bundleGraph: mutableBundleGraph,
|
|
403
|
+
config: this.configs.get(plugin.name)?.result,
|
|
404
|
+
options: this.pluginOptions,
|
|
405
|
+
logger,
|
|
406
|
+
tracer,
|
|
407
|
+
});
|
|
435
408
|
});
|
|
436
409
|
|
|
437
410
|
measurement && measurement.end();
|
|
438
411
|
|
|
412
|
+
dumpBundleGraphSnapshot(internalBundleGraph, 'js');
|
|
413
|
+
|
|
439
414
|
if (this.pluginOptions.mode === 'production') {
|
|
440
415
|
let optimizeMeasurement;
|
|
441
416
|
try {
|
|
@@ -452,7 +427,7 @@ class BundlerRunner {
|
|
|
452
427
|
options: this.pluginOptions,
|
|
453
428
|
logger,
|
|
454
429
|
});
|
|
455
|
-
} catch (e) {
|
|
430
|
+
} catch (e: any) {
|
|
456
431
|
throw new ThrowableDiagnostic({
|
|
457
432
|
diagnostic: errorToDiagnostic(e, {
|
|
458
433
|
origin: plugin.name,
|
|
@@ -461,7 +436,7 @@ class BundlerRunner {
|
|
|
461
436
|
} finally {
|
|
462
437
|
optimizeMeasurement && optimizeMeasurement.end();
|
|
463
438
|
await dumpGraphToGraphViz(
|
|
464
|
-
//
|
|
439
|
+
// @ts-expect-error TS2345
|
|
465
440
|
internalBundleGraph._graph,
|
|
466
441
|
'after_optimize',
|
|
467
442
|
);
|
|
@@ -480,13 +455,14 @@ class BundlerRunner {
|
|
|
480
455
|
);
|
|
481
456
|
await this.runDevDepRequest(devDepRequest);
|
|
482
457
|
}
|
|
483
|
-
} catch (e) {
|
|
458
|
+
} catch (e: any) {
|
|
484
459
|
if (internalBundleGraph != null) {
|
|
485
460
|
this.api.storeResult(
|
|
486
461
|
{
|
|
487
462
|
bundleGraph: internalBundleGraph,
|
|
488
463
|
changedAssets: new Map(),
|
|
489
464
|
assetRequests: [],
|
|
465
|
+
didIncrementallyBundle,
|
|
490
466
|
},
|
|
491
467
|
this.cacheKey,
|
|
492
468
|
);
|
|
@@ -500,7 +476,7 @@ class BundlerRunner {
|
|
|
500
476
|
} finally {
|
|
501
477
|
if (internalBundleGraph != null) {
|
|
502
478
|
await dumpGraphToGraphViz(
|
|
503
|
-
//
|
|
479
|
+
// @ts-expect-error TS2345
|
|
504
480
|
internalBundleGraph._graph,
|
|
505
481
|
'after_bundle',
|
|
506
482
|
bundleGraphEdgeTypes,
|
|
@@ -509,28 +485,37 @@ class BundlerRunner {
|
|
|
509
485
|
}
|
|
510
486
|
|
|
511
487
|
let changedRuntimes = new Map();
|
|
512
|
-
if (!previousBundleGraphResult) {
|
|
488
|
+
if (!previousBundleGraphResult || !canIncrementallyBundle) {
|
|
513
489
|
let namers = await this.config.getNamers();
|
|
514
490
|
// inline bundles must still be named so the PackagerRunner
|
|
515
491
|
// can match them to the correct packager/optimizer plugins.
|
|
516
492
|
let bundles = internalBundleGraph.getBundles({includeInline: true});
|
|
517
493
|
await Promise.all(
|
|
518
494
|
bundles.map((bundle) =>
|
|
519
|
-
|
|
495
|
+
nameBundle(
|
|
496
|
+
namers,
|
|
497
|
+
bundle,
|
|
498
|
+
internalBundleGraph,
|
|
499
|
+
this.options,
|
|
500
|
+
this.pluginOptions,
|
|
501
|
+
this.configs,
|
|
502
|
+
),
|
|
520
503
|
),
|
|
521
504
|
);
|
|
522
505
|
|
|
523
|
-
changedRuntimes = await applyRuntimes(
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
506
|
+
changedRuntimes = await instrumentAsync('applyRuntimes', () =>
|
|
507
|
+
applyRuntimes({
|
|
508
|
+
bundleGraph: internalBundleGraph,
|
|
509
|
+
api: this.api,
|
|
510
|
+
config: this.config,
|
|
511
|
+
options: this.options,
|
|
512
|
+
optionsRef: this.optionsRef,
|
|
513
|
+
pluginOptions: this.pluginOptions,
|
|
514
|
+
previousDevDeps: this.previousDevDeps,
|
|
515
|
+
devDepRequests: this.devDepRequests,
|
|
516
|
+
configs: this.configs,
|
|
517
|
+
}),
|
|
518
|
+
);
|
|
534
519
|
|
|
535
520
|
// Add dev deps for namers, AFTER running them to account for lazy require().
|
|
536
521
|
for (let namer of namers) {
|
|
@@ -545,14 +530,14 @@ class BundlerRunner {
|
|
|
545
530
|
await this.runDevDepRequest(devDepRequest);
|
|
546
531
|
}
|
|
547
532
|
|
|
548
|
-
|
|
533
|
+
validateBundles(internalBundleGraph);
|
|
549
534
|
|
|
550
535
|
// Pre-compute the hashes for each bundle so they are only computed once and shared between workers.
|
|
551
536
|
internalBundleGraph.getBundleGraphHash();
|
|
552
537
|
}
|
|
553
538
|
|
|
554
539
|
await dumpGraphToGraphViz(
|
|
555
|
-
//
|
|
540
|
+
// @ts-expect-error TS2345
|
|
556
541
|
internalBundleGraph._graph,
|
|
557
542
|
'after_runtimes',
|
|
558
543
|
bundleGraphEdgeTypes,
|
|
@@ -563,6 +548,7 @@ class BundlerRunner {
|
|
|
563
548
|
bundleGraph: internalBundleGraph,
|
|
564
549
|
changedAssets: new Map(),
|
|
565
550
|
assetRequests: [],
|
|
551
|
+
didIncrementallyBundle,
|
|
566
552
|
},
|
|
567
553
|
this.cacheKey,
|
|
568
554
|
);
|
|
@@ -571,73 +557,7 @@ class BundlerRunner {
|
|
|
571
557
|
bundleGraph: internalBundleGraph,
|
|
572
558
|
changedAssets: changedRuntimes,
|
|
573
559
|
assetRequests,
|
|
560
|
+
didIncrementallyBundle,
|
|
574
561
|
};
|
|
575
562
|
}
|
|
576
|
-
|
|
577
|
-
validateBundles(bundleGraph: InternalBundleGraph): void {
|
|
578
|
-
let bundles = bundleGraph.getBundles();
|
|
579
|
-
|
|
580
|
-
let bundleNames = bundles.map((b) =>
|
|
581
|
-
joinProjectPath(b.target.distDir, nullthrows(b.name)),
|
|
582
|
-
);
|
|
583
|
-
assert.deepEqual(
|
|
584
|
-
bundleNames,
|
|
585
|
-
unique(bundleNames),
|
|
586
|
-
'Bundles must have unique name. Conflicting names: ' +
|
|
587
|
-
[
|
|
588
|
-
...setSymmetricDifference(
|
|
589
|
-
new Set(bundleNames),
|
|
590
|
-
new Set(unique(bundleNames)),
|
|
591
|
-
),
|
|
592
|
-
].join(),
|
|
593
|
-
);
|
|
594
|
-
}
|
|
595
|
-
|
|
596
|
-
async nameBundle(
|
|
597
|
-
namers: Array<LoadedPlugin<Namer<mixed>>>,
|
|
598
|
-
internalBundle: InternalBundle,
|
|
599
|
-
internalBundleGraph: InternalBundleGraph,
|
|
600
|
-
): Promise<void> {
|
|
601
|
-
let bundle = Bundle.get(internalBundle, internalBundleGraph, this.options);
|
|
602
|
-
let bundleGraph = new BundleGraph<IBundle>(
|
|
603
|
-
internalBundleGraph,
|
|
604
|
-
NamedBundle.get.bind(NamedBundle),
|
|
605
|
-
this.options,
|
|
606
|
-
);
|
|
607
|
-
|
|
608
|
-
for (let namer of namers) {
|
|
609
|
-
let measurement;
|
|
610
|
-
try {
|
|
611
|
-
measurement = tracer.createMeasurement(namer.name, 'namer', bundle.id);
|
|
612
|
-
let name = await namer.plugin.name({
|
|
613
|
-
bundle,
|
|
614
|
-
bundleGraph,
|
|
615
|
-
config: this.configs.get(namer.name)?.result,
|
|
616
|
-
options: this.pluginOptions,
|
|
617
|
-
logger: new PluginLogger({origin: namer.name}),
|
|
618
|
-
tracer: new PluginTracer({origin: namer.name, category: 'namer'}),
|
|
619
|
-
});
|
|
620
|
-
|
|
621
|
-
if (name != null) {
|
|
622
|
-
internalBundle.name = name;
|
|
623
|
-
let {hashReference} = internalBundle;
|
|
624
|
-
internalBundle.displayName = name.includes(hashReference)
|
|
625
|
-
? name.replace(hashReference, '[hash]')
|
|
626
|
-
: name;
|
|
627
|
-
|
|
628
|
-
return;
|
|
629
|
-
}
|
|
630
|
-
} catch (e) {
|
|
631
|
-
throw new ThrowableDiagnostic({
|
|
632
|
-
diagnostic: errorToDiagnostic(e, {
|
|
633
|
-
origin: namer.name,
|
|
634
|
-
}),
|
|
635
|
-
});
|
|
636
|
-
} finally {
|
|
637
|
-
measurement && measurement.end();
|
|
638
|
-
}
|
|
639
|
-
}
|
|
640
|
-
|
|
641
|
-
throw new Error('Unable to name bundle');
|
|
642
|
-
}
|
|
643
563
|
}
|