@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
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.fromEnvironmentId = fromEnvironmentId;
|
|
7
|
+
exports.loadEnvironmentsFromCache = loadEnvironmentsFromCache;
|
|
8
|
+
exports.toEnvironmentId = toEnvironmentId;
|
|
9
|
+
exports.toEnvironmentRef = toEnvironmentRef;
|
|
10
|
+
exports.writeEnvironmentsToCache = writeEnvironmentsToCache;
|
|
11
|
+
function _rust() {
|
|
12
|
+
const data = require("@atlaspack/rust");
|
|
13
|
+
_rust = function () {
|
|
14
|
+
return data;
|
|
15
|
+
};
|
|
16
|
+
return data;
|
|
17
|
+
}
|
|
18
|
+
function _featureFlags() {
|
|
19
|
+
const data = require("@atlaspack/feature-flags");
|
|
20
|
+
_featureFlags = function () {
|
|
21
|
+
return data;
|
|
22
|
+
};
|
|
23
|
+
return data;
|
|
24
|
+
}
|
|
25
|
+
function _logger() {
|
|
26
|
+
const data = require("@atlaspack/logger");
|
|
27
|
+
_logger = function () {
|
|
28
|
+
return data;
|
|
29
|
+
};
|
|
30
|
+
return data;
|
|
31
|
+
}
|
|
32
|
+
var _constants = require("./constants");
|
|
33
|
+
/*!
|
|
34
|
+
* At the moment we're doing this change for `CoreEnvironment`,
|
|
35
|
+
* but the same change must be made for `TypesEnvironment` in @atlaspack/types.
|
|
36
|
+
*/
|
|
37
|
+
|
|
38
|
+
const localEnvironmentCache = new Map();
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* When deduplication is cleaned-up this will always be a string.
|
|
42
|
+
*/
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Convert environment to a ref.
|
|
46
|
+
* This is what we should be using to store environments.
|
|
47
|
+
*/
|
|
48
|
+
function toEnvironmentRef(env) {
|
|
49
|
+
if (!(0, _featureFlags().getFeatureFlag)('environmentDeduplication')) {
|
|
50
|
+
return env;
|
|
51
|
+
}
|
|
52
|
+
const id = toEnvironmentId(env);
|
|
53
|
+
return id;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Convert environment to a string ID
|
|
58
|
+
*/
|
|
59
|
+
function toEnvironmentId(
|
|
60
|
+
/**
|
|
61
|
+
* Redundant type during roll-out
|
|
62
|
+
*/
|
|
63
|
+
env) {
|
|
64
|
+
if (!(0, _featureFlags().getFeatureFlag)('environmentDeduplication')) {
|
|
65
|
+
return typeof env === 'string' ? env : env.id;
|
|
66
|
+
}
|
|
67
|
+
if (typeof env === 'string') {
|
|
68
|
+
return env;
|
|
69
|
+
}
|
|
70
|
+
(0, _rust().addEnvironment)(env);
|
|
71
|
+
return env.id;
|
|
72
|
+
}
|
|
73
|
+
function fromEnvironmentId(id) {
|
|
74
|
+
if (!(0, _featureFlags().getFeatureFlag)('environmentDeduplication')) {
|
|
75
|
+
if (typeof id === 'string') {
|
|
76
|
+
throw new Error('This should never happen when environmentDeduplication feature-flag is off');
|
|
77
|
+
} else {
|
|
78
|
+
return id;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
if (typeof id !== 'string') {
|
|
82
|
+
return id;
|
|
83
|
+
}
|
|
84
|
+
const localEnv = localEnvironmentCache.get(id);
|
|
85
|
+
if (localEnv) {
|
|
86
|
+
return localEnv;
|
|
87
|
+
}
|
|
88
|
+
const env = Object.freeze((0, _rust().getEnvironment)(id));
|
|
89
|
+
// @ts-expect-error TS2345
|
|
90
|
+
localEnvironmentCache.set(id, env);
|
|
91
|
+
// @ts-expect-error TS2322
|
|
92
|
+
return env;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Writes all environments and their IDs to the cache
|
|
97
|
+
* @param {Cache} cache
|
|
98
|
+
* @returns {Promise<void>}
|
|
99
|
+
*/
|
|
100
|
+
async function writeEnvironmentsToCache(cache) {
|
|
101
|
+
const environments = (0, _rust().getAllEnvironments)();
|
|
102
|
+
const environmentIds = new Set();
|
|
103
|
+
|
|
104
|
+
// Store each environment individually
|
|
105
|
+
for (const env of environments) {
|
|
106
|
+
// @ts-expect-error TS18046
|
|
107
|
+
environmentIds.add(env.id);
|
|
108
|
+
// @ts-expect-error TS18046
|
|
109
|
+
const envKey = `Environment/${_constants.ATLASPACK_VERSION}/${env.id}`;
|
|
110
|
+
await (0, _logger().instrument)(`RequestTracker::writeToCache::cache.put(${envKey})`, async () => {
|
|
111
|
+
await cache.set(envKey, env);
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
// Store the list of environment IDs
|
|
116
|
+
await (0, _logger().instrument)(`RequestTracker::writeToCache::cache.put(${`EnvironmentManager/${_constants.ATLASPACK_VERSION}`})`, async () => {
|
|
117
|
+
await cache.set(`EnvironmentManager/${_constants.ATLASPACK_VERSION}`, Array.from(environmentIds));
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Loads all environments and their IDs from the cache
|
|
123
|
+
* @param {Cache} cache
|
|
124
|
+
* @returns {Promise<void>}
|
|
125
|
+
*/
|
|
126
|
+
async function loadEnvironmentsFromCache(cache) {
|
|
127
|
+
const cachedEnvIds = await cache.get(`EnvironmentManager/${_constants.ATLASPACK_VERSION}`);
|
|
128
|
+
if (cachedEnvIds == null) {
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
const environments = [];
|
|
132
|
+
// @ts-expect-error TS2488
|
|
133
|
+
for (const envId of cachedEnvIds) {
|
|
134
|
+
const envKey = `Environment/${_constants.ATLASPACK_VERSION}/${envId}`;
|
|
135
|
+
const cachedEnv = await cache.get(envKey);
|
|
136
|
+
if (cachedEnv != null) {
|
|
137
|
+
environments.push(cachedEnv);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
if (environments.length > 0) {
|
|
141
|
+
(0, _rust().setAllEnvironments)(environments);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
@@ -26,9 +26,7 @@ class IdentifierRegistry {
|
|
|
26
26
|
});
|
|
27
27
|
this.#createdDirectory = true;
|
|
28
28
|
}
|
|
29
|
-
_fs().default.appendFile('./.atlaspack/atlaspack-identifiers.txt',
|
|
30
|
-
// $FlowFixMe
|
|
31
|
-
`${type} ${identifier} ${JSON.stringify(data)}\n`, () => {});
|
|
29
|
+
_fs().default.appendFile('./.atlaspack/atlaspack-identifiers.txt', `${type} ${identifier} ${JSON.stringify(data)}\n`, () => {});
|
|
32
30
|
}
|
|
33
31
|
}
|
|
34
32
|
}
|
package/lib/InternalConfig.js
CHANGED
|
@@ -14,6 +14,7 @@ function _rust() {
|
|
|
14
14
|
return data;
|
|
15
15
|
}
|
|
16
16
|
var _IdentifierRegistry = require("./IdentifierRegistry");
|
|
17
|
+
var _EnvironmentManager = require("./EnvironmentManager");
|
|
17
18
|
function createConfig({
|
|
18
19
|
plugin,
|
|
19
20
|
isSource,
|
|
@@ -30,11 +31,11 @@ function createConfig({
|
|
|
30
31
|
invalidateOnBuild
|
|
31
32
|
}) {
|
|
32
33
|
let environment = env ?? (0, _Environment.createEnvironment)();
|
|
33
|
-
const configId = (0, _rust().hashString)(plugin + (0, _projectPath.fromProjectPathRelative)(searchPath) + environment
|
|
34
|
+
const configId = (0, _rust().hashString)(plugin + (0, _projectPath.fromProjectPathRelative)(searchPath) + (0, _EnvironmentManager.toEnvironmentId)(environment) + String(isSource));
|
|
34
35
|
_IdentifierRegistry.identifierRegistry.addIdentifier('config_request', configId, {
|
|
35
36
|
plugin,
|
|
36
37
|
searchPath,
|
|
37
|
-
environmentId: environment
|
|
38
|
+
environmentId: (0, _EnvironmentManager.toEnvironmentId)(environment),
|
|
38
39
|
isSource
|
|
39
40
|
});
|
|
40
41
|
return {
|
package/lib/PackagerRunner.js
CHANGED
|
@@ -92,6 +92,14 @@ function _profiler() {
|
|
|
92
92
|
};
|
|
93
93
|
return data;
|
|
94
94
|
}
|
|
95
|
+
var _EnvironmentManager = require("./EnvironmentManager");
|
|
96
|
+
function _featureFlags() {
|
|
97
|
+
const data = require("@atlaspack/feature-flags");
|
|
98
|
+
_featureFlags = function () {
|
|
99
|
+
return data;
|
|
100
|
+
};
|
|
101
|
+
return data;
|
|
102
|
+
}
|
|
95
103
|
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); }
|
|
96
104
|
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; }
|
|
97
105
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -101,6 +109,10 @@ const BOUNDARY_LENGTH = _constants.HASH_REF_PREFIX.length + 32 - 1;
|
|
|
101
109
|
// load them once per build.
|
|
102
110
|
const pluginConfigs = (0, _buildCache().createBuildCache)();
|
|
103
111
|
class PackagerRunner {
|
|
112
|
+
// @ts-expect-error TS2564
|
|
113
|
+
|
|
114
|
+
// @ts-expect-error TS2564
|
|
115
|
+
|
|
104
116
|
constructor({
|
|
105
117
|
config,
|
|
106
118
|
options,
|
|
@@ -165,6 +177,7 @@ class PackagerRunner {
|
|
|
165
177
|
// Only load config for a plugin once per build.
|
|
166
178
|
let existing = pluginConfigs.get(plugin.name);
|
|
167
179
|
if (existing != null) {
|
|
180
|
+
// @ts-expect-error TS2345
|
|
168
181
|
configs.set(plugin.name, existing);
|
|
169
182
|
} else {
|
|
170
183
|
if (plugin.plugin.loadConfig != null) {
|
|
@@ -217,7 +230,8 @@ class PackagerRunner {
|
|
|
217
230
|
let {
|
|
218
231
|
type,
|
|
219
232
|
contents,
|
|
220
|
-
map
|
|
233
|
+
map,
|
|
234
|
+
scopeHoistingStats
|
|
221
235
|
} = await this.getBundleResult(bundle, bundleGraph, configs, bundleConfigs);
|
|
222
236
|
|
|
223
237
|
// Recompute cache keys as they may have changed due to dev dependencies.
|
|
@@ -227,7 +241,14 @@ class PackagerRunner {
|
|
|
227
241
|
map: PackagerRunner.getMapKey(cacheKey),
|
|
228
242
|
info: PackagerRunner.getInfoKey(cacheKey)
|
|
229
243
|
};
|
|
230
|
-
|
|
244
|
+
let cachedResult = await this.writeToCache(cacheKeys, type, contents, map);
|
|
245
|
+
if (_utils().debugTools['scope-hoisting-stats']) {
|
|
246
|
+
return {
|
|
247
|
+
...cachedResult,
|
|
248
|
+
scopeHoistingStats
|
|
249
|
+
};
|
|
250
|
+
}
|
|
251
|
+
return cachedResult;
|
|
231
252
|
}
|
|
232
253
|
async getBundleResult(bundle, bundleGraph, configs, bundleConfigs) {
|
|
233
254
|
let packaged = await this.package(bundle, bundleGraph, configs, bundleConfigs);
|
|
@@ -237,11 +258,12 @@ class PackagerRunner {
|
|
|
237
258
|
return {
|
|
238
259
|
type: res.type ?? type,
|
|
239
260
|
contents: res.contents,
|
|
240
|
-
map
|
|
261
|
+
map,
|
|
262
|
+
scopeHoistingStats: packaged.scopeHoistingStats
|
|
241
263
|
};
|
|
242
264
|
}
|
|
243
265
|
getSourceMapReference(bundle, map) {
|
|
244
|
-
if (map && bundle.env.sourceMap && bundle.bundleBehavior !== 'inline') {
|
|
266
|
+
if (map && bundle.env.sourceMap && bundle.bundleBehavior !== 'inline' && bundle.bundleBehavior !== 'inlineIsolated') {
|
|
245
267
|
if (bundle.env.sourceMap && bundle.env.sourceMap.inline) {
|
|
246
268
|
return this.generateSourceMap((0, _Bundle.bundleToInternalBundle)(bundle), map);
|
|
247
269
|
} else {
|
|
@@ -287,14 +309,14 @@ class PackagerRunner {
|
|
|
287
309
|
category: 'package'
|
|
288
310
|
}),
|
|
289
311
|
getInlineBundleContents: async (bundle, bundleGraph) => {
|
|
290
|
-
if (bundle.bundleBehavior !== 'inline') {
|
|
312
|
+
if (bundle.bundleBehavior !== 'inline' && bundle.bundleBehavior !== 'inlineIsolated') {
|
|
291
313
|
throw new Error('Bundle is not inline and unable to retrieve contents');
|
|
292
314
|
}
|
|
293
|
-
let
|
|
294
|
-
|
|
295
|
-
(0, _BundleGraph.bundleGraphToInternalBundleGraph)(bundleGraph), configs, bundleConfigs);
|
|
315
|
+
let {
|
|
316
|
+
contents
|
|
317
|
+
} = await this.getBundleResult((0, _Bundle.bundleToInternalBundle)(bundle), (0, _BundleGraph.bundleGraphToInternalBundleGraph)(bundleGraph), configs, bundleConfigs);
|
|
296
318
|
return {
|
|
297
|
-
contents
|
|
319
|
+
contents
|
|
298
320
|
};
|
|
299
321
|
}
|
|
300
322
|
});
|
|
@@ -390,23 +412,34 @@ class PackagerRunner {
|
|
|
390
412
|
let fullPath = (0, _projectPath.fromProjectPath)(this.options.projectRoot, filePath);
|
|
391
413
|
let sourceRoot = _path().default.relative(_path().default.dirname(fullPath), this.options.projectRoot);
|
|
392
414
|
let inlineSources = false;
|
|
415
|
+
const bundleEnv = (0, _EnvironmentManager.fromEnvironmentId)(bundle.env);
|
|
393
416
|
if (bundle.target) {
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
417
|
+
const bundleTargetEnv = (0, _EnvironmentManager.fromEnvironmentId)(bundle.target.env);
|
|
418
|
+
if (bundleEnv.sourceMap && bundleEnv.sourceMap.sourceRoot !== undefined) {
|
|
419
|
+
sourceRoot = bundleEnv.sourceMap.sourceRoot;
|
|
420
|
+
} else if (this.options.serveOptions && bundleTargetEnv.context === 'browser') {
|
|
397
421
|
sourceRoot = '/__parcel_source_root';
|
|
398
422
|
}
|
|
399
|
-
if (
|
|
400
|
-
inlineSources =
|
|
401
|
-
} else if (
|
|
423
|
+
if (bundleEnv.sourceMap && bundleEnv.sourceMap.inlineSources !== undefined) {
|
|
424
|
+
inlineSources = bundleEnv.sourceMap.inlineSources;
|
|
425
|
+
} else if (bundleTargetEnv.context !== 'node') {
|
|
402
426
|
// inlining should only happen in production for browser targets by default
|
|
403
427
|
inlineSources = this.options.mode === 'production';
|
|
404
428
|
}
|
|
405
429
|
}
|
|
406
|
-
let
|
|
430
|
+
let mapFilename = fullPath + '.map';
|
|
431
|
+
let isInlineMap = bundleEnv.sourceMap && bundleEnv.sourceMap.inline;
|
|
432
|
+
if ((0, _featureFlags().getFeatureFlag)('omitSourcesContentInMemory') && !isInlineMap) {
|
|
433
|
+
if (!(bundleEnv.sourceMap && bundleEnv.sourceMap.inlineSources === false)) {
|
|
434
|
+
/*
|
|
435
|
+
We're omitting sourcesContent during transformation to allow GC to run.
|
|
436
|
+
Ensure sources are still inlined into the final source maps written to disk. UNLESS the user explicitly disabled inlineSources.
|
|
437
|
+
*/
|
|
438
|
+
inlineSources = true;
|
|
439
|
+
}
|
|
440
|
+
}
|
|
407
441
|
let stringified = await map.stringify({
|
|
408
|
-
file: _path().default.basename(
|
|
409
|
-
// $FlowFixMe
|
|
442
|
+
file: _path().default.basename(mapFilename),
|
|
410
443
|
fs: this.options.inputFS,
|
|
411
444
|
rootDir: this.options.projectRoot,
|
|
412
445
|
sourceRoot: !inlineSources ? _url().default.format(_url().default.parse(sourceRoot + '/')) : undefined,
|
|
@@ -434,6 +467,10 @@ class PackagerRunner {
|
|
|
434
467
|
devDepHashes += await this.getDevDepHashes(inlineBundle);
|
|
435
468
|
}
|
|
436
469
|
let invalidationHash = await (0, _assetUtils.getInvalidationHash)(invalidations, this.options);
|
|
470
|
+
if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
|
|
471
|
+
const hash = (0, _rust().hashString)(_constants.ATLASPACK_VERSION + devDepHashes + invalidationHash + bundle.target.publicUrl + bundleGraph.getHash(bundle) + JSON.stringify(configResults) + JSON.stringify(globalInfoResults) + this.options.mode + (this.options.shouldBuildLazily ? 'lazy' : 'eager'));
|
|
472
|
+
return _path().default.join(bundle.displayName ?? bundle.name ?? bundle.id, hash);
|
|
473
|
+
}
|
|
437
474
|
return (0, _rust().hashString)(_constants.ATLASPACK_VERSION + devDepHashes + invalidationHash + bundle.target.publicUrl + bundleGraph.getHash(bundle) + JSON.stringify(configResults) + JSON.stringify(globalInfoResults) + this.options.mode + (this.options.shouldBuildLazily ? 'lazy' : 'eager'));
|
|
438
475
|
}
|
|
439
476
|
async getDevDepHashes(bundle) {
|
|
@@ -457,28 +494,33 @@ class PackagerRunner {
|
|
|
457
494
|
let contentKey = PackagerRunner.getContentKey(cacheKey);
|
|
458
495
|
let mapKey = PackagerRunner.getMapKey(cacheKey);
|
|
459
496
|
let isLargeBlob = await this.options.cache.hasLargeBlob(contentKey);
|
|
460
|
-
let contentExists = isLargeBlob || (await this.options.cache.has(contentKey));
|
|
497
|
+
let contentExists = (0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements') ? isLargeBlob : isLargeBlob || (await this.options.cache.has(contentKey));
|
|
461
498
|
if (!contentExists) {
|
|
462
499
|
return null;
|
|
463
500
|
}
|
|
464
|
-
let mapExists = await this.options.cache.has(mapKey);
|
|
501
|
+
let mapExists = (0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements') ? await this.options.cache.hasLargeBlob(mapKey) : await this.options.cache.has(mapKey);
|
|
465
502
|
return {
|
|
466
503
|
contents: isLargeBlob ? this.options.cache.getStream(contentKey) : (0, _utils().blobToStream)(await this.options.cache.getBlob(contentKey)),
|
|
467
|
-
map: mapExists ? (0, _utils().blobToStream)(await this.options.cache.getBlob(mapKey)) : null
|
|
504
|
+
map: mapExists ? (0, _utils().blobToStream)((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements') ? await this.options.cache.getLargeBlob(mapKey) : await this.options.cache.getBlob(mapKey)) : null
|
|
468
505
|
};
|
|
469
506
|
}
|
|
470
507
|
async writeToCache(cacheKeys, type, contents, map) {
|
|
471
508
|
let size = 0;
|
|
472
509
|
let hash;
|
|
510
|
+
// @ts-expect-error TS2702
|
|
473
511
|
let hashReferences = [];
|
|
474
|
-
let isLargeBlob =
|
|
512
|
+
let isLargeBlob = (0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements');
|
|
475
513
|
|
|
476
514
|
// TODO: don't replace hash references in binary files??
|
|
477
515
|
if (contents instanceof _stream().Readable) {
|
|
478
|
-
|
|
516
|
+
if (!(0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
|
|
517
|
+
isLargeBlob = true;
|
|
518
|
+
}
|
|
479
519
|
let boundaryStr = '';
|
|
480
520
|
let h = new (_rust().Hash)();
|
|
481
|
-
await this.options.cache.setStream(cacheKeys.content, (0, _utils().blobToStream)(contents).pipe(
|
|
521
|
+
await this.options.cache.setStream(cacheKeys.content, (0, _utils().blobToStream)(contents).pipe(
|
|
522
|
+
// @ts-expect-error TS2554
|
|
523
|
+
new (_utils().TapStream)(buf => {
|
|
482
524
|
let str = boundaryStr + buf.toString();
|
|
483
525
|
hashReferences = hashReferences.concat(str.match(_constants.HASH_REF_REGEX) ?? []);
|
|
484
526
|
size += buf.length;
|
|
@@ -491,15 +533,27 @@ class PackagerRunner {
|
|
|
491
533
|
size = buffer.byteLength;
|
|
492
534
|
hash = (0, _rust().hashBuffer)(buffer);
|
|
493
535
|
hashReferences = contents.match(_constants.HASH_REF_REGEX) ?? [];
|
|
494
|
-
|
|
536
|
+
if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
|
|
537
|
+
await this.options.cache.setLargeBlob(cacheKeys.content, buffer);
|
|
538
|
+
} else {
|
|
539
|
+
await this.options.cache.setBlob(cacheKeys.content, buffer);
|
|
540
|
+
}
|
|
495
541
|
} else {
|
|
496
542
|
size = contents.length;
|
|
497
543
|
hash = (0, _rust().hashBuffer)(contents);
|
|
498
544
|
hashReferences = contents.toString().match(_constants.HASH_REF_REGEX) ?? [];
|
|
499
|
-
|
|
545
|
+
if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
|
|
546
|
+
await this.options.cache.setLargeBlob(cacheKeys.content, contents);
|
|
547
|
+
} else {
|
|
548
|
+
await this.options.cache.setBlob(cacheKeys.content, contents);
|
|
549
|
+
}
|
|
500
550
|
}
|
|
501
551
|
if (map != null) {
|
|
502
|
-
|
|
552
|
+
if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
|
|
553
|
+
await this.options.cache.setLargeBlob(cacheKeys.map, map);
|
|
554
|
+
} else {
|
|
555
|
+
await this.options.cache.setBlob(cacheKeys.map, map);
|
|
556
|
+
}
|
|
503
557
|
}
|
|
504
558
|
let info = {
|
|
505
559
|
type,
|
|
@@ -513,12 +567,21 @@ class PackagerRunner {
|
|
|
513
567
|
return info;
|
|
514
568
|
}
|
|
515
569
|
static getContentKey(cacheKey) {
|
|
570
|
+
if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
|
|
571
|
+
return `PackagerRunner/${_constants.ATLASPACK_VERSION}/${cacheKey}/content`;
|
|
572
|
+
}
|
|
516
573
|
return (0, _rust().hashString)(`${cacheKey}:content`);
|
|
517
574
|
}
|
|
518
575
|
static getMapKey(cacheKey) {
|
|
576
|
+
if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
|
|
577
|
+
return `PackagerRunner/${_constants.ATLASPACK_VERSION}/${cacheKey}/map`;
|
|
578
|
+
}
|
|
519
579
|
return (0, _rust().hashString)(`${cacheKey}:map`);
|
|
520
580
|
}
|
|
521
581
|
static getInfoKey(cacheKey) {
|
|
582
|
+
if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
|
|
583
|
+
return `PackagerRunner/${_constants.ATLASPACK_VERSION}/${cacheKey}/info`;
|
|
584
|
+
}
|
|
522
585
|
return (0, _rust().hashString)(`${cacheKey}:info`);
|
|
523
586
|
}
|
|
524
587
|
}
|
package/lib/ReporterRunner.js
CHANGED
|
@@ -15,7 +15,7 @@ function _assert() {
|
|
|
15
15
|
}
|
|
16
16
|
var _Bundle = require("./public/Bundle");
|
|
17
17
|
function _workers() {
|
|
18
|
-
const data =
|
|
18
|
+
const data = require("@atlaspack/workers");
|
|
19
19
|
_workers = function () {
|
|
20
20
|
return data;
|
|
21
21
|
};
|
|
@@ -67,17 +67,14 @@ class ReporterRunner {
|
|
|
67
67
|
}
|
|
68
68
|
eventHandler = event => {
|
|
69
69
|
if (event.type === 'buildProgress' && (event.phase === 'optimizing' || event.phase === 'packaging') && !(event.bundle instanceof _Bundle.NamedBundle)) {
|
|
70
|
-
//
|
|
70
|
+
// @ts-expect-error TS2339
|
|
71
71
|
let bundleGraphRef = event.bundleGraphRef;
|
|
72
|
-
//
|
|
72
|
+
// @ts-expect-error TS2739
|
|
73
73
|
let bundle = event.bundle;
|
|
74
74
|
// Convert any internal bundles back to their public equivalents as reporting
|
|
75
75
|
// is public api
|
|
76
|
-
let bundleGraph = this.workerFarm.workerApi.getSharedReference(
|
|
77
|
-
// $FlowFixMe
|
|
78
|
-
bundleGraphRef);
|
|
76
|
+
let bundleGraph = this.workerFarm.workerApi.getSharedReference(bundleGraphRef);
|
|
79
77
|
(0, _assert().default)(bundleGraph instanceof _BundleGraph.default);
|
|
80
|
-
// $FlowFixMe[incompatible-call]
|
|
81
78
|
this.report({
|
|
82
79
|
...event,
|
|
83
80
|
bundle: _Bundle.NamedBundle.get(bundle, bundleGraph, this.options)
|
|
@@ -88,11 +85,12 @@ class ReporterRunner {
|
|
|
88
85
|
};
|
|
89
86
|
async report(unsanitisedEvent) {
|
|
90
87
|
let event = unsanitisedEvent;
|
|
88
|
+
// @ts-expect-error TS2339
|
|
91
89
|
if (event.diagnostics) {
|
|
92
90
|
// Sanitise input before passing to reporters
|
|
93
|
-
// $FlowFixMe too complex to narrow down by type
|
|
94
91
|
event = {
|
|
95
92
|
...event,
|
|
93
|
+
// @ts-expect-error TS2322
|
|
96
94
|
diagnostics: (0, _diagnostic().anyToDiagnostic)(event.diagnostics)
|
|
97
95
|
};
|
|
98
96
|
}
|
|
@@ -105,7 +103,6 @@ class ReporterRunner {
|
|
|
105
103
|
measurement = _profiler().tracer.createMeasurement(reporter.name, 'reporter');
|
|
106
104
|
}
|
|
107
105
|
await reporter.plugin.report({
|
|
108
|
-
// $FlowFixMe
|
|
109
106
|
event,
|
|
110
107
|
options: this.pluginOptions,
|
|
111
108
|
logger: new (_logger().PluginLogger)({
|