@atlaspack/core 2.16.2-canary.37 → 2.16.2-canary.371
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 +941 -0
- package/dist/AssetGraph.js +591 -0
- package/dist/Atlaspack.js +666 -0
- package/dist/AtlaspackConfig.js +324 -0
- package/dist/AtlaspackConfig.schema.js +117 -0
- package/dist/BundleGraph.js +1740 -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 +545 -0
- package/dist/ReporterRunner.js +151 -0
- package/dist/RequestTracker.js +1360 -0
- package/dist/SymbolPropagation.js +620 -0
- package/dist/TargetDescriptor.schema.js +143 -0
- package/dist/Transformation.js +514 -0
- package/dist/UncommittedAsset.js +315 -0
- package/dist/Validation.js +196 -0
- package/dist/applyRuntimes.js +383 -0
- package/dist/assetUtils.js +169 -0
- package/dist/atlaspack-v3/AtlaspackV3.js +74 -0
- package/dist/atlaspack-v3/NapiWorkerPool.js +81 -0
- package/dist/atlaspack-v3/fs.js +52 -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 +25 -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-logger.js +26 -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 +381 -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 +439 -0
- package/dist/requests/AssetGraphRequestRust.js +273 -0
- package/dist/requests/AssetRequest.js +130 -0
- package/dist/requests/AtlaspackBuildRequest.js +92 -0
- package/dist/requests/AtlaspackConfigRequest.js +493 -0
- package/dist/requests/BundleGraphRequest.js +447 -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 +72 -0
- package/dist/requests/PathRequest.js +349 -0
- package/dist/requests/TargetRequest.js +1311 -0
- package/dist/requests/ValidationRequest.js +49 -0
- package/dist/requests/WriteBundleRequest.js +254 -0
- package/dist/requests/WriteBundlesRequest.js +184 -0
- package/dist/requests/asset-graph-diff.js +128 -0
- package/dist/requests/asset-graph-dot.js +131 -0
- package/dist/resolveOptions.js +269 -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 +111 -14
- package/lib/Atlaspack.js +94 -41
- package/lib/AtlaspackConfig.js +15 -3
- package/lib/AtlaspackConfig.schema.js +16 -5
- package/lib/BundleGraph.js +197 -32
- package/lib/CommittedAsset.js +7 -1
- package/lib/Dependency.js +8 -2
- package/lib/Environment.js +15 -8
- package/lib/EnvironmentManager.js +143 -0
- package/lib/IdentifierRegistry.js +1 -3
- package/lib/InternalConfig.js +3 -2
- package/lib/PackagerRunner.js +90 -27
- package/lib/ReporterRunner.js +6 -9
- package/lib/RequestTracker.js +266 -156
- package/lib/SymbolPropagation.js +42 -18
- package/lib/TargetDescriptor.schema.js +7 -1
- package/lib/Transformation.js +66 -15
- package/lib/UncommittedAsset.js +33 -12
- package/lib/Validation.js +18 -2
- package/lib/applyRuntimes.js +96 -4
- package/lib/assetUtils.js +15 -5
- package/lib/atlaspack-v3/AtlaspackV3.js +52 -14
- package/lib/atlaspack-v3/NapiWorkerPool.js +28 -1
- package/lib/atlaspack-v3/fs.js +3 -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/mutable-asset.js +15 -10
- package/lib/atlaspack-v3/worker/compat/plugin-config.js +13 -34
- package/lib/atlaspack-v3/worker/compat/plugin-options.js +16 -0
- 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 +215 -0
- package/lib/atlaspack-v3/worker/worker.js +199 -71
- package/lib/constants.js +0 -1
- package/lib/dumpGraphToGraphViz.js +71 -16
- package/lib/index.js +45 -1
- package/lib/loadDotEnv.js +4 -1
- package/lib/projectPath.js +5 -0
- package/lib/public/Asset.js +21 -11
- package/lib/public/Bundle.js +15 -16
- package/lib/public/BundleGraph.js +25 -22
- package/lib/public/BundleGroup.js +4 -5
- package/lib/public/Config.js +118 -17
- package/lib/public/Dependency.js +8 -6
- package/lib/public/Environment.js +12 -7
- package/lib/public/MutableBundleGraph.js +54 -12
- package/lib/public/PluginOptions.js +2 -2
- package/lib/public/Symbols.js +11 -11
- package/lib/public/Target.js +7 -6
- package/lib/registerCoreWithSerializer.js +5 -3
- package/lib/requests/AssetGraphRequest.js +74 -27
- package/lib/requests/AssetGraphRequestRust.js +140 -64
- package/lib/requests/AssetRequest.js +23 -6
- package/lib/requests/AtlaspackBuildRequest.js +43 -4
- package/lib/requests/AtlaspackConfigRequest.js +27 -16
- package/lib/requests/BundleGraphRequest.js +41 -24
- package/lib/requests/ConfigRequest.js +53 -4
- package/lib/requests/DevDepRequest.js +31 -5
- package/lib/requests/EntryRequest.js +2 -0
- package/lib/requests/PackageRequest.js +16 -2
- package/lib/requests/PathRequest.js +24 -3
- package/lib/requests/TargetRequest.js +122 -57
- package/lib/requests/ValidationRequest.js +5 -1
- package/lib/requests/WriteBundleRequest.js +39 -11
- package/lib/requests/WriteBundlesRequest.js +51 -4
- package/lib/requests/asset-graph-diff.js +12 -7
- package/lib/requests/asset-graph-dot.js +1 -7
- package/lib/resolveOptions.js +38 -11
- package/lib/rustWorkerThreadDylibHack.js +0 -1
- package/lib/types/AssetGraph.d.ts +80 -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 +184 -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 +34 -0
- package/lib/types/atlaspack-v3/NapiWorkerPool.d.ts +13 -0
- package/lib/types/atlaspack-v3/fs.d.ts +12 -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 -1
- 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-logger.d.ts +9 -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 +80 -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/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 +28 -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 +495 -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 +17 -2
- package/lib/worker.js +30 -14
- package/package.json +25 -35
- package/src/{AssetGraph.js → AssetGraph.ts} +156 -52
- package/src/{Atlaspack.js → Atlaspack.ts} +134 -67
- package/src/{AtlaspackConfig.schema.js → AtlaspackConfig.schema.ts} +25 -19
- package/src/{AtlaspackConfig.js → AtlaspackConfig.ts} +78 -54
- package/src/{BundleGraph.js → BundleGraph.ts} +383 -140
- 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} +179 -87
- package/src/{ReporterRunner.js → ReporterRunner.ts} +13 -18
- package/src/{RequestTracker.js → RequestTracker.ts} +572 -357
- package/src/{SymbolPropagation.js → SymbolPropagation.ts} +165 -57
- package/src/{TargetDescriptor.schema.js → TargetDescriptor.schema.ts} +7 -1
- package/src/{Transformation.js → Transformation.ts} +110 -65
- package/src/{UncommittedAsset.js → UncommittedAsset.ts} +60 -39
- package/src/{Validation.js → Validation.ts} +32 -17
- package/src/{applyRuntimes.js → applyRuntimes.ts} +133 -26
- package/src/{assetUtils.js → assetUtils.ts} +49 -36
- package/src/atlaspack-v3/AtlaspackV3.ts +143 -0
- package/src/atlaspack-v3/NapiWorkerPool.ts +91 -0
- package/src/atlaspack-v3/{fs.js → fs.ts} +3 -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 +9 -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-logger.js → plugin-logger.ts} +0 -2
- 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 +531 -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} +129 -80
- package/src/requests/AssetGraphRequestRust.ts +364 -0
- package/src/requests/{AssetRequest.js → AssetRequest.ts} +24 -18
- package/src/requests/AtlaspackBuildRequest.ts +163 -0
- package/src/requests/{AtlaspackConfigRequest.js → AtlaspackConfigRequest.ts} +72 -58
- package/src/requests/{BundleGraphRequest.js → BundleGraphRequest.ts} +97 -79
- 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} +34 -22
- package/src/requests/{PathRequest.js → PathRequest.ts} +47 -37
- package/src/requests/{TargetRequest.js → TargetRequest.ts} +260 -179
- package/src/requests/{ValidationRequest.js → ValidationRequest.ts} +18 -17
- package/src/requests/{WriteBundleRequest.js → WriteBundleRequest.ts} +77 -49
- package/src/requests/{WriteBundlesRequest.js → WriteBundlesRequest.ts} +109 -37
- 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} +59 -25
- 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 +650 -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} +37 -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} +314 -59
- package/test/{SymbolPropagation.test.js → SymbolPropagation.test.ts} +124 -74
- package/test/{TargetRequest.test.js → TargetRequest.test.ts} +66 -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/{test-utils.js → test-utils.ts} +4 -11
- 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/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/worker.js +0 -362
- package/src/index.js +0 -13
- package/src/requests/AssetGraphRequestRust.js +0 -263
- package/src/requests/AtlaspackBuildRequest.js +0 -111
- 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
|
@@ -26,11 +26,19 @@ function _logger() {
|
|
|
26
26
|
};
|
|
27
27
|
return data;
|
|
28
28
|
}
|
|
29
|
-
|
|
29
|
+
function _featureFlags() {
|
|
30
|
+
const data = require("@atlaspack/feature-flags");
|
|
31
|
+
_featureFlags = function () {
|
|
32
|
+
return data;
|
|
33
|
+
};
|
|
34
|
+
return data;
|
|
35
|
+
}
|
|
36
|
+
var _AssetGraph = _interopRequireDefault(require("../AssetGraph"));
|
|
30
37
|
var _RequestTracker = require("../RequestTracker");
|
|
31
38
|
var _SymbolPropagation = require("../SymbolPropagation");
|
|
32
|
-
|
|
33
|
-
|
|
39
|
+
var _EnvironmentManager = require("../EnvironmentManager");
|
|
40
|
+
var _Environment = require("../Environment");
|
|
41
|
+
var _dumpGraphToGraphViz = _interopRequireDefault(require("../dumpGraphToGraphViz"));
|
|
34
42
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
35
43
|
function createAssetGraphRequestRust(rustAtlaspack) {
|
|
36
44
|
return input => ({
|
|
@@ -38,12 +46,29 @@ function createAssetGraphRequestRust(rustAtlaspack) {
|
|
|
38
46
|
id: input.name,
|
|
39
47
|
run: async input => {
|
|
40
48
|
let options = input.options;
|
|
41
|
-
let
|
|
42
|
-
|
|
49
|
+
let {
|
|
50
|
+
assetGraphPromise,
|
|
51
|
+
commitPromise
|
|
52
|
+
} = await rustAtlaspack.buildAssetGraph();
|
|
53
|
+
let [serializedAssetGraph, assetGraphError] = await assetGraphPromise;
|
|
54
|
+
if (assetGraphError) {
|
|
55
|
+
throw new (_diagnostic().default)({
|
|
56
|
+
diagnostic: assetGraphError
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// Don't reuse a previous asset graph result if Rust didn't have one too
|
|
61
|
+
let prevResult = null;
|
|
62
|
+
if (serializedAssetGraph.hadPreviousGraph) {
|
|
63
|
+
prevResult = await input.api.getPreviousResult();
|
|
64
|
+
}
|
|
43
65
|
let {
|
|
44
66
|
assetGraph,
|
|
45
67
|
changedAssets
|
|
46
|
-
} = (0, _logger().instrument)('atlaspack_v3_getAssetGraph', () =>
|
|
68
|
+
} = (0, _logger().instrument)('atlaspack_v3_getAssetGraph', () => {
|
|
69
|
+
var _prevResult;
|
|
70
|
+
return getAssetGraph(serializedAssetGraph, (_prevResult = prevResult) === null || _prevResult === void 0 ? void 0 : _prevResult.assetGraph);
|
|
71
|
+
});
|
|
47
72
|
let changedAssetsPropagation = new Set(changedAssets.keys());
|
|
48
73
|
let errors = (0, _SymbolPropagation.propagateSymbols)({
|
|
49
74
|
options,
|
|
@@ -60,7 +85,8 @@ function createAssetGraphRequestRust(rustAtlaspack) {
|
|
|
60
85
|
diagnostic: [...errors.values()][0]
|
|
61
86
|
});
|
|
62
87
|
}
|
|
63
|
-
|
|
88
|
+
await (0, _dumpGraphToGraphViz.default)(assetGraph, 'AssetGraphV3');
|
|
89
|
+
let result = {
|
|
64
90
|
assetGraph,
|
|
65
91
|
assetRequests: [],
|
|
66
92
|
assetGroupsWithRemovedParents: new Set(),
|
|
@@ -68,19 +94,64 @@ function createAssetGraphRequestRust(rustAtlaspack) {
|
|
|
68
94
|
changedAssetsPropagation,
|
|
69
95
|
previousSymbolPropagationErrors: undefined
|
|
70
96
|
};
|
|
97
|
+
let [_commitResult, commitError] = await commitPromise;
|
|
98
|
+
if (commitError) {
|
|
99
|
+
throw new (_diagnostic().default)({
|
|
100
|
+
diagnostic: {
|
|
101
|
+
message: 'Error committing asset graph in Rust: ' + commitError.message
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
await input.api.storeResult(result);
|
|
106
|
+
input.api.invalidateOnBuild();
|
|
107
|
+
return result;
|
|
71
108
|
},
|
|
72
109
|
input
|
|
73
110
|
});
|
|
74
111
|
}
|
|
112
|
+
function getAssetGraph(serializedGraph, prevAssetGraph) {
|
|
113
|
+
let graph;
|
|
114
|
+
let reuseEdges = false;
|
|
115
|
+
if (prevAssetGraph && serializedGraph.safeToSkipBundling) {
|
|
116
|
+
graph = new _AssetGraph.default({
|
|
117
|
+
_contentKeyToNodeId: prevAssetGraph._contentKeyToNodeId,
|
|
118
|
+
_nodeIdToContentKey: prevAssetGraph._nodeIdToContentKey,
|
|
119
|
+
nodes: prevAssetGraph.nodes,
|
|
120
|
+
rootNodeId: prevAssetGraph.rootNodeId,
|
|
121
|
+
adjacencyList: prevAssetGraph.adjacencyList
|
|
122
|
+
});
|
|
123
|
+
reuseEdges = true;
|
|
124
|
+
} else if (prevAssetGraph && (serializedGraph.updates.length > 0 || serializedGraph.nodes.length > 0)) {
|
|
125
|
+
graph = new _AssetGraph.default({
|
|
126
|
+
_contentKeyToNodeId: prevAssetGraph._contentKeyToNodeId,
|
|
127
|
+
_nodeIdToContentKey: prevAssetGraph._nodeIdToContentKey,
|
|
128
|
+
nodes: prevAssetGraph.nodes,
|
|
129
|
+
initialCapacity: serializedGraph.edges.length,
|
|
130
|
+
// Accomodate the root node
|
|
131
|
+
initialNodeCapacity: prevAssetGraph.nodes.length + 1,
|
|
132
|
+
rootNodeId: prevAssetGraph.rootNodeId
|
|
133
|
+
});
|
|
134
|
+
graph.safeToIncrementallyBundle = false;
|
|
135
|
+
} else {
|
|
136
|
+
graph = new _AssetGraph.default({
|
|
137
|
+
_contentKeyToNodeId: new Map(),
|
|
138
|
+
_nodeIdToContentKey: new Map(),
|
|
139
|
+
initialCapacity: serializedGraph.edges.length,
|
|
140
|
+
// Accomodate the root node
|
|
141
|
+
initialNodeCapacity: serializedGraph.nodes.length + 1
|
|
142
|
+
});
|
|
143
|
+
let rootNodeId = graph.addNodeByContentKey('@@root', {
|
|
144
|
+
id: '@@root',
|
|
145
|
+
type: 'root',
|
|
146
|
+
value: null
|
|
147
|
+
});
|
|
148
|
+
graph.setRootNodeId(rootNodeId);
|
|
149
|
+
graph.safeToIncrementallyBundle = false;
|
|
150
|
+
}
|
|
151
|
+
(0, _assert().default)(graph, 'Asset graph not initialized');
|
|
152
|
+
(0, _assert().default)(graph.rootNodeId != null, 'Asset graph has no root node');
|
|
75
153
|
|
|
76
|
-
//
|
|
77
|
-
function getAssetGraph(serializedGraph) {
|
|
78
|
-
let graph = new _AssetGraph.default({
|
|
79
|
-
_contentKeyToNodeId: new Map(),
|
|
80
|
-
_nodeIdToContentKey: new Map(),
|
|
81
|
-
initialCapacity: serializedGraph.edges.length
|
|
82
|
-
});
|
|
83
|
-
graph.safeToIncrementallyBundle = false;
|
|
154
|
+
// @ts-expect-error TS7031
|
|
84
155
|
function mapSymbols({
|
|
85
156
|
exported,
|
|
86
157
|
...symbol
|
|
@@ -88,19 +159,16 @@ function getAssetGraph(serializedGraph) {
|
|
|
88
159
|
let jsSymbol = {
|
|
89
160
|
local: symbol.local ?? undefined,
|
|
90
161
|
loc: symbol.loc ?? undefined,
|
|
91
|
-
|
|
92
|
-
|
|
162
|
+
isWeak: symbol.isWeak,
|
|
163
|
+
meta: {
|
|
164
|
+
isEsm: symbol.isEsmExport,
|
|
165
|
+
isStaticBindingSafe: symbol.isStaticBindingSafe
|
|
166
|
+
}
|
|
93
167
|
};
|
|
94
168
|
if (symbol.exported) {
|
|
95
|
-
//
|
|
169
|
+
// @ts-expect-error TS2339
|
|
96
170
|
jsSymbol.exported = symbol.exported;
|
|
97
171
|
}
|
|
98
|
-
if (symbol.isEsmExport) {
|
|
99
|
-
// $FlowFixMe
|
|
100
|
-
jsSymbol.meta = {
|
|
101
|
-
isEsm: true
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
172
|
return [exported, jsSymbol];
|
|
105
173
|
}
|
|
106
174
|
|
|
@@ -112,20 +180,27 @@ function getAssetGraph(serializedGraph) {
|
|
|
112
180
|
let envKey = [env.context, env.engines.atlaspack, env.engines.browsers, env.engines.electron, env.engines.node, env.includeNodeModules, env.isLibrary, env.outputFormat, env.shouldScopeHoist, env.shouldOptimize, env.sourceType].join(':');
|
|
113
181
|
let envId = envs.get(envKey);
|
|
114
182
|
if (envId == null) {
|
|
115
|
-
envId =
|
|
183
|
+
envId = (0, _Environment.getEnvironmentHash)(env);
|
|
116
184
|
envs.set(envKey, envId);
|
|
117
185
|
}
|
|
118
186
|
return envId;
|
|
119
187
|
};
|
|
120
|
-
|
|
121
|
-
if (
|
|
122
|
-
let
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
188
|
+
function updateNode(newNode, isUpdateNode) {
|
|
189
|
+
if (isUpdateNode) {
|
|
190
|
+
let existingNode = graph.getNodeByContentKey(newNode.id);
|
|
191
|
+
(0, _assert().default)(existingNode && existingNode.type === newNode.type);
|
|
192
|
+
Object.assign(existingNode, newNode);
|
|
193
|
+
} else {
|
|
194
|
+
graph.addNodeByContentKey(newNode.id, newNode);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
let nodeTypeSwitchoverIndex = serializedGraph.nodes.length;
|
|
198
|
+
let nodesCount = serializedGraph.nodes.length + serializedGraph.updates.length;
|
|
199
|
+
for (let index = 0; index < nodesCount; index++) {
|
|
200
|
+
let isUpdateNode = index >= nodeTypeSwitchoverIndex;
|
|
201
|
+
let node = isUpdateNode ? serializedGraph.updates[index - nodeTypeSwitchoverIndex] : serializedGraph.nodes[index];
|
|
202
|
+
node = JSON.parse(node);
|
|
203
|
+
if (node.type === 'entry') {
|
|
129
204
|
let id = 'entry:' + ++entry;
|
|
130
205
|
graph.addNodeByContentKey(id, {
|
|
131
206
|
id: id,
|
|
@@ -137,8 +212,11 @@ function getAssetGraph(serializedGraph) {
|
|
|
137
212
|
let id = asset.id;
|
|
138
213
|
asset.committed = true;
|
|
139
214
|
asset.contentKey = id;
|
|
140
|
-
asset.env.id =
|
|
215
|
+
asset.env.id = (0, _featureFlags().getFeatureFlag)('environmentDeduplication') ?
|
|
216
|
+
// TODO: Rust can do this and avoid copying a significant amount of data over
|
|
217
|
+
(0, _Environment.getEnvironmentHash)(asset.env) : getEnvId(asset.env);
|
|
141
218
|
asset.mapKey = `map:${asset.id}`;
|
|
219
|
+
asset.env = (0, _EnvironmentManager.toEnvironmentRef)(asset.env);
|
|
142
220
|
|
|
143
221
|
// This is populated later when we map the edges between assets and dependencies
|
|
144
222
|
asset.dependencies = new Map();
|
|
@@ -150,19 +228,25 @@ function getAssetGraph(serializedGraph) {
|
|
|
150
228
|
asset.symbols = new Map(asset.symbols.map(mapSymbols));
|
|
151
229
|
}
|
|
152
230
|
changedAssets.set(id, asset);
|
|
153
|
-
|
|
231
|
+
let assetNode = {
|
|
154
232
|
id,
|
|
155
233
|
type: 'asset',
|
|
156
234
|
usedSymbols: new Set(),
|
|
157
235
|
usedSymbolsDownDirty: true,
|
|
158
236
|
usedSymbolsUpDirty: true,
|
|
159
237
|
value: asset
|
|
160
|
-
}
|
|
238
|
+
};
|
|
239
|
+
updateNode(assetNode, isUpdateNode);
|
|
161
240
|
} else if (node.type === 'dependency') {
|
|
162
|
-
let
|
|
163
|
-
|
|
241
|
+
let {
|
|
242
|
+
dependency,
|
|
243
|
+
id
|
|
244
|
+
} = node.value;
|
|
164
245
|
dependency.id = id;
|
|
165
|
-
dependency.env.id =
|
|
246
|
+
dependency.env.id = (0, _featureFlags().getFeatureFlag)('environmentDeduplication') ?
|
|
247
|
+
// TODO: Rust can do this and avoid copying a significant amount of data over
|
|
248
|
+
(0, _Environment.getEnvironmentHash)(dependency.env) : getEnvId(dependency.env);
|
|
249
|
+
dependency.env = (0, _EnvironmentManager.toEnvironmentRef)(dependency.env);
|
|
166
250
|
if (dependency.symbols != null) {
|
|
167
251
|
var _dependency$symbols;
|
|
168
252
|
dependency.symbols = new Map((_dependency$symbols = dependency.symbols) === null || _dependency$symbols === void 0 ? void 0 : _dependency$symbols.map(mapSymbols));
|
|
@@ -173,43 +257,35 @@ function getAssetGraph(serializedGraph) {
|
|
|
173
257
|
usedSymbolsDown.add('*');
|
|
174
258
|
usedSymbolsUp.set('*', undefined);
|
|
175
259
|
}
|
|
176
|
-
|
|
260
|
+
let depNode = {
|
|
177
261
|
id,
|
|
178
262
|
type: 'dependency',
|
|
179
263
|
deferred: false,
|
|
180
264
|
excluded: false,
|
|
181
265
|
hasDeferred: node.has_deferred,
|
|
266
|
+
// @ts-expect-error TS2322
|
|
182
267
|
usedSymbolsDown,
|
|
183
268
|
usedSymbolsDownDirty: true,
|
|
184
269
|
usedSymbolsUp,
|
|
185
270
|
usedSymbolsUpDirtyDown: true,
|
|
186
271
|
usedSymbolsUpDirtyUp: true,
|
|
187
272
|
value: dependency
|
|
188
|
-
}
|
|
273
|
+
};
|
|
274
|
+
updateNode(depNode, isUpdateNode);
|
|
189
275
|
}
|
|
190
276
|
}
|
|
191
|
-
|
|
192
|
-
let
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
pipeline: toNode.value.pipeline,
|
|
204
|
-
sideEffects: Boolean(toNode.value.sideEffects)
|
|
205
|
-
});
|
|
206
|
-
let index = graph.addNodeByContentKeyIfNeeded(assetGroupNode.id, assetGroupNode);
|
|
207
|
-
graph.addEdge(from, index);
|
|
208
|
-
graph.addEdge(index, to);
|
|
209
|
-
} else if ((fromNode === null || fromNode === void 0 ? void 0 : fromNode.type) === 'asset' && (toNode === null || toNode === void 0 ? void 0 : toNode.type) === 'dependency') {
|
|
210
|
-
fromNode.value.dependencies.set(toNode.value.id, toNode.value);
|
|
211
|
-
graph.addEdge(from, to);
|
|
212
|
-
} else {
|
|
277
|
+
if (!reuseEdges) {
|
|
278
|
+
for (let i = 0; i < serializedGraph.edges.length; i += 2) {
|
|
279
|
+
let from = serializedGraph.edges[i];
|
|
280
|
+
let to = serializedGraph.edges[i + 1];
|
|
281
|
+
let fromNode = graph.getNode(from);
|
|
282
|
+
let toNode = graph.getNode(to);
|
|
283
|
+
if ((fromNode === null || fromNode === void 0 ? void 0 : fromNode.type) === 'dependency') {
|
|
284
|
+
(0, _assert().default)((toNode === null || toNode === void 0 ? void 0 : toNode.type) === 'asset');
|
|
285
|
+
}
|
|
286
|
+
if ((fromNode === null || fromNode === void 0 ? void 0 : fromNode.type) === 'asset' && (toNode === null || toNode === void 0 ? void 0 : toNode.type) === 'dependency') {
|
|
287
|
+
fromNode.value.dependencies.set(toNode.value.id, toNode.value);
|
|
288
|
+
}
|
|
213
289
|
graph.addEdge(from, to);
|
|
214
290
|
}
|
|
215
291
|
}
|
|
@@ -31,6 +31,7 @@ var _ConfigRequest = require("./ConfigRequest");
|
|
|
31
31
|
var _projectPath = require("../projectPath");
|
|
32
32
|
var _ReporterRunner = require("../ReporterRunner");
|
|
33
33
|
var _RequestTracker = require("../RequestTracker");
|
|
34
|
+
var _EnvironmentManager = require("../EnvironmentManager");
|
|
34
35
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
35
36
|
function createAssetRequest(input) {
|
|
36
37
|
return {
|
|
@@ -42,8 +43,10 @@ function createAssetRequest(input) {
|
|
|
42
43
|
}
|
|
43
44
|
const type = 'asset_request';
|
|
44
45
|
function getId(input) {
|
|
45
|
-
return (0, _rust().hashString)(type + (0, _projectPath.fromProjectPathRelative)(input.filePath) + input.env
|
|
46
|
+
return (0, _rust().hashString)(type + (0, _projectPath.fromProjectPathRelative)(input.filePath) + (0, _EnvironmentManager.toEnvironmentId)(input.env) + String(input.isSource) + String(input.sideEffects) + (input.code ?? '') + ':' + (input.pipeline ?? '') + ':' + (input.query ?? ''));
|
|
46
47
|
}
|
|
48
|
+
|
|
49
|
+
// @ts-expect-error TS7031
|
|
47
50
|
async function run({
|
|
48
51
|
input,
|
|
49
52
|
api,
|
|
@@ -64,17 +67,31 @@ async function run({
|
|
|
64
67
|
} = input;
|
|
65
68
|
let {
|
|
66
69
|
cachePath
|
|
67
|
-
} = (0, _nullthrows().default)(
|
|
68
|
-
|
|
70
|
+
} = (0, _nullthrows().default)(
|
|
71
|
+
// @ts-expect-error TS2347
|
|
72
|
+
await api.runRequest((0, _AtlaspackConfigRequest.default)()));
|
|
73
|
+
let previousDevDepRequests = new Map(await Promise.all(api.getSubRequests()
|
|
74
|
+
// @ts-expect-error TS7006
|
|
75
|
+
.filter(req => req.requestType === _RequestTracker.requestTypes.dev_dep_request)
|
|
76
|
+
// @ts-expect-error TS7006
|
|
77
|
+
.map(async req => [req.id,
|
|
78
|
+
// @ts-expect-error TS2347
|
|
79
|
+
(0, _nullthrows().default)(await api.getRequestResult(req.id))])));
|
|
69
80
|
let request = {
|
|
70
81
|
...rest,
|
|
71
82
|
invalidateReason,
|
|
72
|
-
devDeps: new Map([...previousDevDepRequests.entries()]
|
|
73
|
-
|
|
83
|
+
devDeps: new Map([...previousDevDepRequests.entries()]
|
|
84
|
+
// @ts-expect-error TS2769
|
|
85
|
+
.filter(([id]) => api.canSkipSubrequest(id)).map(([, req]) => [`${req.specifier}:${(0, _projectPath.fromProjectPathRelative)(req.resolveFrom)}`, req.hash])),
|
|
86
|
+
invalidDevDeps: await Promise.all([...previousDevDepRequests.entries()]
|
|
87
|
+
// @ts-expect-error TS2769
|
|
88
|
+
.filter(([id]) => !api.canSkipSubrequest(id)).flatMap(([, req]) => {
|
|
74
89
|
return [{
|
|
75
90
|
specifier: req.specifier,
|
|
76
91
|
resolveFrom: req.resolveFrom
|
|
77
|
-
},
|
|
92
|
+
},
|
|
93
|
+
// @ts-expect-error TS7006
|
|
94
|
+
...(req.additionalInvalidations ?? []).map(i => ({
|
|
78
95
|
specifier: i.specifier,
|
|
79
96
|
resolveFrom: i.resolveFrom
|
|
80
97
|
}))];
|
|
@@ -21,6 +21,14 @@ function _profiler() {
|
|
|
21
21
|
return data;
|
|
22
22
|
}
|
|
23
23
|
var _RequestTracker = require("../RequestTracker");
|
|
24
|
+
function _featureFlags() {
|
|
25
|
+
const data = require("@atlaspack/feature-flags");
|
|
26
|
+
_featureFlags = function () {
|
|
27
|
+
return data;
|
|
28
|
+
};
|
|
29
|
+
return data;
|
|
30
|
+
}
|
|
31
|
+
var _EnvironmentManager = require("../EnvironmentManager");
|
|
24
32
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
33
|
function createAtlaspackBuildRequest(input) {
|
|
26
34
|
return {
|
|
@@ -53,13 +61,40 @@ async function run({
|
|
|
53
61
|
} = await api.runRequest(bundleGraphRequest, {
|
|
54
62
|
force: Boolean(rustAtlaspack) || options.shouldBuildLazily && requestedAssetIds.size > 0
|
|
55
63
|
});
|
|
64
|
+
if ((0, _featureFlags().getFeatureFlag)('nativePackager') && (0, _featureFlags().getFeatureFlag)('nativePackagerSSRDev') && rustAtlaspack) {
|
|
65
|
+
let hasSupportedTarget = false;
|
|
66
|
+
bundleGraph.traverseBundles((bundle, ctx, actions) => {
|
|
67
|
+
if ((0, _EnvironmentManager.fromEnvironmentId)(bundle.env).context === 'tesseract' && bundle.type === 'js') {
|
|
68
|
+
hasSupportedTarget = true;
|
|
69
|
+
actions.stop();
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
if (hasSupportedTarget) {
|
|
73
|
+
// In theory this could be a (somehow) null[] - but we know if we've gotten this far it probably isn't..
|
|
74
|
+
let nodes = bundleGraph._graph.nodes;
|
|
75
|
+
let rawEdges = [];
|
|
76
|
+
const gen = bundleGraph._graph.getAllEdges();
|
|
77
|
+
let next = gen.next();
|
|
78
|
+
while (!next.done) {
|
|
79
|
+
let edge = next.value;
|
|
80
|
+
rawEdges.push([edge.from, edge.to, edge.type]);
|
|
81
|
+
next = gen.next();
|
|
82
|
+
}
|
|
83
|
+
await rustAtlaspack.loadBundleGraph({
|
|
84
|
+
nodes,
|
|
85
|
+
edges: rawEdges
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
}
|
|
56
89
|
|
|
57
|
-
//
|
|
90
|
+
// @ts-expect-error TS2345
|
|
58
91
|
(0, _dumpGraphToGraphViz.default)(bundleGraph._graph, 'BundleGraph', _BundleGraph.bundleGraphEdgeTypes);
|
|
59
92
|
await (0, _ReporterRunner.report)({
|
|
60
93
|
type: 'buildProgress',
|
|
61
94
|
phase: 'bundled',
|
|
62
|
-
bundleGraph: new _BundleGraph2.default(bundleGraph,
|
|
95
|
+
bundleGraph: new _BundleGraph2.default(bundleGraph,
|
|
96
|
+
// @ts-expect-error TS2304
|
|
97
|
+
(bundle, bundleGraph, options) => _Bundle.NamedBundle.get(bundle, bundleGraph, options), options),
|
|
63
98
|
changedAssets: new Map(Array.from(changedAssets).map(([id, asset]) => [id, (0, _Asset.assetFromValue)(asset, options)]))
|
|
64
99
|
});
|
|
65
100
|
let packagingMeasurement = _profiler().tracer.createMeasurement('packaging');
|
|
@@ -67,13 +102,17 @@ async function run({
|
|
|
67
102
|
bundleGraph,
|
|
68
103
|
optionsRef
|
|
69
104
|
});
|
|
70
|
-
let
|
|
105
|
+
let {
|
|
106
|
+
bundleInfo,
|
|
107
|
+
scopeHoistingStats
|
|
108
|
+
} = await api.runRequest(writeBundlesRequest);
|
|
71
109
|
packagingMeasurement && packagingMeasurement.end();
|
|
72
110
|
(0, _utils.assertSignalNotAborted)(signal);
|
|
73
111
|
return {
|
|
74
112
|
bundleGraph,
|
|
75
113
|
bundleInfo,
|
|
76
114
|
changedAssets,
|
|
77
|
-
assetRequests
|
|
115
|
+
assetRequests,
|
|
116
|
+
scopeHoistingStats
|
|
78
117
|
};
|
|
79
118
|
}
|
|
@@ -68,6 +68,8 @@ var _utils2 = require("../utils");
|
|
|
68
68
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
69
69
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
70
70
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
71
|
+
// @ts-expect-error TS2344
|
|
72
|
+
|
|
71
73
|
const type = 'atlaspack_config_request';
|
|
72
74
|
function createAtlaspackConfigRequest() {
|
|
73
75
|
return {
|
|
@@ -117,10 +119,12 @@ function getCachedAtlaspackConfig(result, options) {
|
|
|
117
119
|
} = result;
|
|
118
120
|
let config = atlaspackConfigCache.get(cachePath);
|
|
119
121
|
if (config) {
|
|
122
|
+
// @ts-expect-error TS2740
|
|
120
123
|
return config;
|
|
121
124
|
}
|
|
122
125
|
config = new _AtlaspackConfig.AtlaspackConfig(processedConfig, options);
|
|
123
126
|
atlaspackConfigCache.set(cachePath, config);
|
|
127
|
+
// @ts-expect-error TS2322
|
|
124
128
|
return config;
|
|
125
129
|
}
|
|
126
130
|
async function loadAtlaspackConfig(options) {
|
|
@@ -157,13 +161,23 @@ async function resolveAtlaspackConfig(options) {
|
|
|
157
161
|
extendedFiles
|
|
158
162
|
} = await parseAndProcessConfig(configPath, contents, options);
|
|
159
163
|
if (options.additionalReporters.length > 0) {
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
}) => ({
|
|
164
|
+
var _config$reporters;
|
|
165
|
+
const reporterMap = new Map();
|
|
166
|
+
options.additionalReporters.forEach(({
|
|
164
167
|
packageName,
|
|
165
168
|
resolveFrom
|
|
166
|
-
})
|
|
169
|
+
}) => {
|
|
170
|
+
reporterMap.set(packageName, {
|
|
171
|
+
packageName,
|
|
172
|
+
resolveFrom
|
|
173
|
+
});
|
|
174
|
+
});
|
|
175
|
+
(_config$reporters = config.reporters) === null || _config$reporters === void 0 || _config$reporters.forEach(reporter => {
|
|
176
|
+
if (!reporterMap.has(reporter.packageName)) {
|
|
177
|
+
reporterMap.set(reporter.packageName, reporter);
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
config.reporters = Array.from(reporterMap.values());
|
|
167
181
|
}
|
|
168
182
|
return {
|
|
169
183
|
config,
|
|
@@ -207,7 +221,6 @@ async function parseAndProcessConfig(configPath, contents, options) {
|
|
|
207
221
|
function processPipeline(options, pipeline, keyPath, filePath) {
|
|
208
222
|
if (pipeline) {
|
|
209
223
|
return pipeline.map((pkg, i) => {
|
|
210
|
-
// $FlowFixMe
|
|
211
224
|
if (pkg === '...') return pkg;
|
|
212
225
|
return {
|
|
213
226
|
packageName: pkg,
|
|
@@ -218,14 +231,8 @@ function processPipeline(options, pipeline, keyPath, filePath) {
|
|
|
218
231
|
}
|
|
219
232
|
}
|
|
220
233
|
const RESERVED_PIPELINES = new Set(['node:', 'npm:', 'http:', 'https:', 'data:', 'tel:', 'mailto:']);
|
|
221
|
-
async function processMap(
|
|
222
|
-
// $FlowFixMe
|
|
223
|
-
map, keyPath, filePath, options
|
|
224
|
-
// $FlowFixMe
|
|
225
|
-
) {
|
|
234
|
+
async function processMap(map, keyPath, filePath, options) {
|
|
226
235
|
if (!map) return undefined;
|
|
227
|
-
|
|
228
|
-
// $FlowFixMe
|
|
229
236
|
let res = {};
|
|
230
237
|
for (let k in map) {
|
|
231
238
|
let i = k.indexOf(':');
|
|
@@ -268,6 +275,7 @@ async function processConfig(configFile, options) {
|
|
|
268
275
|
} : {
|
|
269
276
|
/*::...null*/
|
|
270
277
|
}),
|
|
278
|
+
// @ts-expect-error TS2322
|
|
271
279
|
resolvers: processPipeline(options, configFile.resolvers, '/resolvers', configFile.filePath),
|
|
272
280
|
transformers: await processMap(configFile.transformers, '/transformers', configFile.filePath, options),
|
|
273
281
|
bundler: configFile.bundler != null ? {
|
|
@@ -275,11 +283,14 @@ async function processConfig(configFile, options) {
|
|
|
275
283
|
resolveFrom: (0, _projectPath.toProjectPath)(options.projectRoot, configFile.filePath),
|
|
276
284
|
keyPath: '/bundler'
|
|
277
285
|
} : undefined,
|
|
286
|
+
// @ts-expect-error TS2322
|
|
278
287
|
namers: processPipeline(options, configFile.namers, '/namers', configFile.filePath),
|
|
288
|
+
// @ts-expect-error TS2322
|
|
279
289
|
runtimes: processPipeline(options, configFile.runtimes, '/runtimes', configFile.filePath),
|
|
280
290
|
packagers: await processMap(configFile.packagers, '/packagers', configFile.filePath, options),
|
|
281
291
|
optimizers: await processMap(configFile.optimizers, '/optimizers', configFile.filePath, options),
|
|
282
292
|
compressors: await processMap(configFile.compressors, '/compressors', configFile.filePath, options),
|
|
293
|
+
// @ts-expect-error TS2322
|
|
283
294
|
reporters: processPipeline(options, configFile.reporters, '/reporters', configFile.filePath),
|
|
284
295
|
validators: await processMap(configFile.validators, '/validators', configFile.filePath, options)
|
|
285
296
|
};
|
|
@@ -462,14 +473,14 @@ function mergeMaps(base, ext, merger) {
|
|
|
462
473
|
let res = {};
|
|
463
474
|
// Add the extension options first so they have higher precedence in the output glob map
|
|
464
475
|
for (let k in ext) {
|
|
465
|
-
//$FlowFixMe Flow doesn't correctly infer the type. See https://github.com/facebook/flow/issues/1736.
|
|
466
476
|
let key = k;
|
|
467
|
-
res[key] =
|
|
477
|
+
res[key] =
|
|
478
|
+
// @ts-expect-error TS2345
|
|
479
|
+
merger && base[key] != null ? merger(base[key], ext[key]) : ext[key];
|
|
468
480
|
}
|
|
469
481
|
|
|
470
482
|
// Add base options that aren't defined in the extension
|
|
471
483
|
for (let k in base) {
|
|
472
|
-
// $FlowFixMe
|
|
473
484
|
let key = k;
|
|
474
485
|
if (res[key] == null) {
|
|
475
486
|
res[key] = base[key];
|