@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,5 +1,3 @@
|
|
|
1
|
-
// @flow strict-local
|
|
2
|
-
|
|
3
1
|
import type {
|
|
4
2
|
Blob,
|
|
5
3
|
FilePath,
|
|
@@ -9,7 +7,7 @@ import type {
|
|
|
9
7
|
NamedBundle as NamedBundleType,
|
|
10
8
|
Async,
|
|
11
9
|
} from '@atlaspack/types';
|
|
12
|
-
import type SourceMap from '@
|
|
10
|
+
import type SourceMap from '@atlaspack/source-map';
|
|
13
11
|
import type {
|
|
14
12
|
Bundle as InternalBundle,
|
|
15
13
|
Config,
|
|
@@ -26,13 +24,12 @@ import type {DevDepSpecifier} from './requests/DevDepRequest';
|
|
|
26
24
|
|
|
27
25
|
import invariant from 'assert';
|
|
28
26
|
import {createBuildCache} from '@atlaspack/build-cache';
|
|
29
|
-
import {blobToStream, TapStream} from '@atlaspack/utils';
|
|
27
|
+
import {blobToStream, debugTools, TapStream} from '@atlaspack/utils';
|
|
30
28
|
import {PluginLogger} from '@atlaspack/logger';
|
|
31
29
|
import ThrowableDiagnostic, {errorToDiagnostic} from '@atlaspack/diagnostic';
|
|
32
30
|
import {Readable} from 'stream';
|
|
33
31
|
import nullthrows from 'nullthrows';
|
|
34
32
|
import path from 'path';
|
|
35
|
-
import url from 'url';
|
|
36
33
|
import {hashString, hashBuffer, Hash} from '@atlaspack/rust';
|
|
37
34
|
|
|
38
35
|
import {NamedBundle, bundleToInternalBundle} from './public/Bundle';
|
|
@@ -53,7 +50,7 @@ import {
|
|
|
53
50
|
loadPluginConfig,
|
|
54
51
|
getConfigHash,
|
|
55
52
|
getConfigRequests,
|
|
56
|
-
|
|
53
|
+
PluginWithBundleConfig,
|
|
57
54
|
} from './requests/ConfigRequest';
|
|
58
55
|
import {
|
|
59
56
|
createDevDependency,
|
|
@@ -62,39 +59,44 @@ import {
|
|
|
62
59
|
import {getInvalidationId, getInvalidationHash} from './assetUtils';
|
|
63
60
|
import {optionsProxy} from './utils';
|
|
64
61
|
import {invalidateDevDeps} from './requests/DevDepRequest';
|
|
62
|
+
import {computeSourceMapRoot} from './requests/WriteBundleRequest';
|
|
65
63
|
import {tracer, PluginTracer} from '@atlaspack/profiler';
|
|
66
|
-
import {
|
|
67
|
-
|
|
68
|
-
type Opts = {
|
|
69
|
-
config: AtlaspackConfig
|
|
70
|
-
options: AtlaspackOptions
|
|
71
|
-
report: ReportFn
|
|
72
|
-
previousDevDeps: Map<string, string
|
|
73
|
-
previousInvalidations: Array<RequestInvalidation
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
export type RunPackagerRunnerResult = {
|
|
77
|
-
bundleInfo: BundleInfo
|
|
78
|
-
configRequests: Array<ConfigRequest
|
|
79
|
-
devDepRequests: Array<DevDepRequest | DevDepRequestRef
|
|
80
|
-
invalidations: Array<RequestInvalidation
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
export type BundleInfo = {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
64
|
+
import {fromEnvironmentId} from './EnvironmentManager';
|
|
65
|
+
|
|
66
|
+
type Opts = {
|
|
67
|
+
config: AtlaspackConfig;
|
|
68
|
+
options: AtlaspackOptions;
|
|
69
|
+
report: ReportFn;
|
|
70
|
+
previousDevDeps: Map<string, string>;
|
|
71
|
+
previousInvalidations: Array<RequestInvalidation>;
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
export type RunPackagerRunnerResult = {
|
|
75
|
+
bundleInfo: BundleInfo;
|
|
76
|
+
configRequests: Array<ConfigRequest>;
|
|
77
|
+
devDepRequests: Array<DevDepRequest | DevDepRequestRef>;
|
|
78
|
+
invalidations: Array<RequestInvalidation>;
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
export type BundleInfo = {
|
|
82
|
+
readonly type: string;
|
|
83
|
+
readonly size: number;
|
|
84
|
+
readonly hash: string;
|
|
85
|
+
readonly hashReferences: Array<string>;
|
|
86
|
+
readonly time?: number;
|
|
87
|
+
readonly cacheKeys: CacheKeyMap;
|
|
88
|
+
readonly isLargeBlob: boolean;
|
|
89
|
+
readonly scopeHoistingStats?: {
|
|
90
|
+
totalAssets: number;
|
|
91
|
+
wrappedAssets: number;
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
type CacheKeyMap = {
|
|
96
|
+
content: string;
|
|
97
|
+
map: string;
|
|
98
|
+
info: string;
|
|
99
|
+
};
|
|
98
100
|
|
|
99
101
|
const BOUNDARY_LENGTH = HASH_REF_PREFIX.length + 32 - 1;
|
|
100
102
|
|
|
@@ -106,7 +108,9 @@ export default class PackagerRunner {
|
|
|
106
108
|
config: AtlaspackConfig;
|
|
107
109
|
options: AtlaspackOptions;
|
|
108
110
|
pluginOptions: PluginOptions;
|
|
111
|
+
// @ts-expect-error TS2564
|
|
109
112
|
distDir: FilePath;
|
|
113
|
+
// @ts-expect-error TS2564
|
|
110
114
|
distExists: Set<FilePath>;
|
|
111
115
|
report: ReportFn;
|
|
112
116
|
previousDevDeps: Map<string, string>;
|
|
@@ -176,10 +180,10 @@ export default class PackagerRunner {
|
|
|
176
180
|
async loadConfigs(
|
|
177
181
|
bundleGraph: InternalBundleGraph,
|
|
178
182
|
bundle: InternalBundle,
|
|
179
|
-
): Promise<{
|
|
180
|
-
configs: Map<string, Config
|
|
181
|
-
bundleConfigs: Map<string, Config
|
|
182
|
-
|
|
183
|
+
): Promise<{
|
|
184
|
+
configs: Map<string, Config>;
|
|
185
|
+
bundleConfigs: Map<string, Config>;
|
|
186
|
+
}> {
|
|
183
187
|
let configs = new Map();
|
|
184
188
|
let bundleConfigs = new Map();
|
|
185
189
|
|
|
@@ -219,7 +223,7 @@ export default class PackagerRunner {
|
|
|
219
223
|
}
|
|
220
224
|
}
|
|
221
225
|
|
|
222
|
-
async loadPluginConfig<T
|
|
226
|
+
async loadPluginConfig<T extends PluginWithBundleConfig>(
|
|
223
227
|
bundleGraph: InternalBundleGraph,
|
|
224
228
|
bundle: InternalBundle,
|
|
225
229
|
plugin: LoadedPlugin<T>,
|
|
@@ -230,6 +234,7 @@ export default class PackagerRunner {
|
|
|
230
234
|
// Only load config for a plugin once per build.
|
|
231
235
|
let existing = pluginConfigs.get(plugin.name);
|
|
232
236
|
if (existing != null) {
|
|
237
|
+
// @ts-expect-error TS2345
|
|
233
238
|
configs.set(plugin.name, existing);
|
|
234
239
|
} else {
|
|
235
240
|
if (plugin.plugin.loadConfig != null) {
|
|
@@ -289,7 +294,7 @@ export default class PackagerRunner {
|
|
|
289
294
|
bundle: InternalBundle,
|
|
290
295
|
configs: Map<string, Config>,
|
|
291
296
|
bundleConfigs: Map<string, Config>,
|
|
292
|
-
): Async
|
|
297
|
+
): Promise<Async<BundleInfo | null | undefined>> {
|
|
293
298
|
if (this.options.shouldDisableCache) {
|
|
294
299
|
return;
|
|
295
300
|
}
|
|
@@ -311,7 +316,7 @@ export default class PackagerRunner {
|
|
|
311
316
|
configs: Map<string, Config>,
|
|
312
317
|
bundleConfigs: Map<string, Config>,
|
|
313
318
|
): Promise<BundleInfo> {
|
|
314
|
-
let {type, contents, map} = await this.getBundleResult(
|
|
319
|
+
let {type, contents, map, scopeHoistingStats} = await this.getBundleResult(
|
|
315
320
|
bundle,
|
|
316
321
|
bundleGraph,
|
|
317
322
|
configs,
|
|
@@ -332,7 +337,13 @@ export default class PackagerRunner {
|
|
|
332
337
|
info: PackagerRunner.getInfoKey(cacheKey),
|
|
333
338
|
};
|
|
334
339
|
|
|
335
|
-
|
|
340
|
+
let cachedResult = await this.writeToCache(cacheKeys, type, contents, map);
|
|
341
|
+
|
|
342
|
+
if (debugTools['scope-hoisting-stats']) {
|
|
343
|
+
return {...cachedResult, scopeHoistingStats};
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
return cachedResult;
|
|
336
347
|
}
|
|
337
348
|
|
|
338
349
|
async getBundleResult(
|
|
@@ -340,11 +351,12 @@ export default class PackagerRunner {
|
|
|
340
351
|
bundleGraph: InternalBundleGraph,
|
|
341
352
|
configs: Map<string, Config>,
|
|
342
353
|
bundleConfigs: Map<string, Config>,
|
|
343
|
-
): Promise<{
|
|
344
|
-
type: string
|
|
345
|
-
contents: Blob
|
|
346
|
-
map:
|
|
347
|
-
|
|
354
|
+
): Promise<{
|
|
355
|
+
type: string;
|
|
356
|
+
contents: Blob;
|
|
357
|
+
map: string | null | undefined;
|
|
358
|
+
scopeHoistingStats?: BundleResult['scopeHoistingStats'];
|
|
359
|
+
}> {
|
|
348
360
|
let packaged = await this.package(
|
|
349
361
|
bundle,
|
|
350
362
|
bundleGraph,
|
|
@@ -368,11 +380,20 @@ export default class PackagerRunner {
|
|
|
368
380
|
type: res.type ?? type,
|
|
369
381
|
contents: res.contents,
|
|
370
382
|
map,
|
|
383
|
+
scopeHoistingStats: packaged.scopeHoistingStats,
|
|
371
384
|
};
|
|
372
385
|
}
|
|
373
386
|
|
|
374
|
-
getSourceMapReference(
|
|
375
|
-
|
|
387
|
+
getSourceMapReference(
|
|
388
|
+
bundle: NamedBundle,
|
|
389
|
+
map?: SourceMap | null,
|
|
390
|
+
): Async<string | null | undefined> {
|
|
391
|
+
if (
|
|
392
|
+
map &&
|
|
393
|
+
bundle.env.sourceMap &&
|
|
394
|
+
bundle.bundleBehavior !== 'inline' &&
|
|
395
|
+
bundle.bundleBehavior !== 'inlineIsolated'
|
|
396
|
+
) {
|
|
376
397
|
if (bundle.env.sourceMap && bundle.env.sourceMap.inline) {
|
|
377
398
|
return this.generateSourceMap(bundleToInternalBundle(bundle), map);
|
|
378
399
|
} else {
|
|
@@ -422,24 +443,26 @@ export default class PackagerRunner {
|
|
|
422
443
|
bundle: BundleType,
|
|
423
444
|
bundleGraph: BundleGraphType<NamedBundleType>,
|
|
424
445
|
) => {
|
|
425
|
-
if (
|
|
446
|
+
if (
|
|
447
|
+
bundle.bundleBehavior !== 'inline' &&
|
|
448
|
+
bundle.bundleBehavior !== 'inlineIsolated'
|
|
449
|
+
) {
|
|
426
450
|
throw new Error(
|
|
427
451
|
'Bundle is not inline and unable to retrieve contents',
|
|
428
452
|
);
|
|
429
453
|
}
|
|
430
454
|
|
|
431
|
-
let
|
|
455
|
+
let {contents} = await this.getBundleResult(
|
|
432
456
|
bundleToInternalBundle(bundle),
|
|
433
|
-
// $FlowFixMe
|
|
434
457
|
bundleGraphToInternalBundleGraph(bundleGraph),
|
|
435
458
|
configs,
|
|
436
459
|
bundleConfigs,
|
|
437
460
|
);
|
|
438
461
|
|
|
439
|
-
return {contents
|
|
462
|
+
return {contents};
|
|
440
463
|
},
|
|
441
464
|
});
|
|
442
|
-
} catch (e) {
|
|
465
|
+
} catch (e: any) {
|
|
443
466
|
throw new ThrowableDiagnostic({
|
|
444
467
|
diagnostic: errorToDiagnostic(e, {
|
|
445
468
|
origin: name,
|
|
@@ -470,7 +493,7 @@ export default class PackagerRunner {
|
|
|
470
493
|
internalBundleGraph: InternalBundleGraph,
|
|
471
494
|
type: string,
|
|
472
495
|
contents: Blob,
|
|
473
|
-
map
|
|
496
|
+
map: SourceMap | null | undefined,
|
|
474
497
|
configs: Map<string, Config>,
|
|
475
498
|
bundleConfigs: Map<string, Config>,
|
|
476
499
|
): Promise<BundleResult> {
|
|
@@ -533,7 +556,7 @@ export default class PackagerRunner {
|
|
|
533
556
|
optimized.type = next.type ?? optimized.type;
|
|
534
557
|
optimized.contents = next.contents;
|
|
535
558
|
optimized.map = next.map;
|
|
536
|
-
} catch (e) {
|
|
559
|
+
} catch (e: any) {
|
|
537
560
|
throw new ThrowableDiagnostic({
|
|
538
561
|
diagnostic: errorToDiagnostic(e, {
|
|
539
562
|
origin: optimizer.name,
|
|
@@ -566,53 +589,24 @@ export default class PackagerRunner {
|
|
|
566
589
|
bundle: InternalBundle,
|
|
567
590
|
map: SourceMap,
|
|
568
591
|
): Promise<string> {
|
|
569
|
-
|
|
592
|
+
let sourceRoot = computeSourceMapRoot(bundle, this.options);
|
|
593
|
+
let inlineSources = sourceRoot === undefined;
|
|
594
|
+
|
|
570
595
|
let filePath = joinProjectPath(
|
|
571
596
|
bundle.target.distDir,
|
|
572
597
|
nullthrows(bundle.name),
|
|
573
598
|
);
|
|
574
599
|
let fullPath = fromProjectPath(this.options.projectRoot, filePath);
|
|
575
|
-
let sourceRoot: string = path.relative(
|
|
576
|
-
path.dirname(fullPath),
|
|
577
|
-
this.options.projectRoot,
|
|
578
|
-
);
|
|
579
|
-
let inlineSources = false;
|
|
580
|
-
|
|
581
|
-
if (bundle.target) {
|
|
582
|
-
if (
|
|
583
|
-
bundle.env.sourceMap &&
|
|
584
|
-
bundle.env.sourceMap.sourceRoot !== undefined
|
|
585
|
-
) {
|
|
586
|
-
sourceRoot = bundle.env.sourceMap.sourceRoot;
|
|
587
|
-
} else if (
|
|
588
|
-
this.options.serveOptions &&
|
|
589
|
-
bundle.target.env.context === 'browser'
|
|
590
|
-
) {
|
|
591
|
-
sourceRoot = '/__parcel_source_root';
|
|
592
|
-
}
|
|
593
|
-
|
|
594
|
-
if (
|
|
595
|
-
bundle.env.sourceMap &&
|
|
596
|
-
bundle.env.sourceMap.inlineSources !== undefined
|
|
597
|
-
) {
|
|
598
|
-
inlineSources = bundle.env.sourceMap.inlineSources;
|
|
599
|
-
} else if (bundle.target.env.context !== 'node') {
|
|
600
|
-
// inlining should only happen in production for browser targets by default
|
|
601
|
-
inlineSources = this.options.mode === 'production';
|
|
602
|
-
}
|
|
603
|
-
}
|
|
604
|
-
|
|
605
600
|
let mapFilename = fullPath + '.map';
|
|
606
|
-
|
|
601
|
+
|
|
602
|
+
const bundleEnv = fromEnvironmentId(bundle.env);
|
|
603
|
+
let isInlineMap = bundleEnv.sourceMap && bundleEnv.sourceMap.inline;
|
|
607
604
|
|
|
608
605
|
let stringified = await map.stringify({
|
|
609
606
|
file: path.basename(mapFilename),
|
|
610
|
-
// $FlowFixMe
|
|
611
607
|
fs: this.options.inputFS,
|
|
612
608
|
rootDir: this.options.projectRoot,
|
|
613
|
-
sourceRoot
|
|
614
|
-
? url.format(url.parse(sourceRoot + '/'))
|
|
615
|
-
: undefined,
|
|
609
|
+
sourceRoot,
|
|
616
610
|
inlineSources,
|
|
617
611
|
format: isInlineMap ? 'inline' : 'string',
|
|
618
612
|
});
|
|
@@ -628,7 +622,7 @@ export default class PackagerRunner {
|
|
|
628
622
|
bundleConfigs: Map<string, Config>,
|
|
629
623
|
invalidations: Array<RequestInvalidation>,
|
|
630
624
|
): Promise<string> {
|
|
631
|
-
let configResults = {};
|
|
625
|
+
let configResults: Record<string, any> = {};
|
|
632
626
|
for (let [pluginName, config] of configs) {
|
|
633
627
|
if (config) {
|
|
634
628
|
configResults[pluginName] = await getConfigHash(
|
|
@@ -638,7 +632,7 @@ export default class PackagerRunner {
|
|
|
638
632
|
);
|
|
639
633
|
}
|
|
640
634
|
}
|
|
641
|
-
let globalInfoResults = {};
|
|
635
|
+
let globalInfoResults: Record<string, any> = {};
|
|
642
636
|
for (let [pluginName, config] of bundleConfigs) {
|
|
643
637
|
if (config) {
|
|
644
638
|
globalInfoResults[pluginName] = await getConfigHash(
|
|
@@ -659,21 +653,6 @@ export default class PackagerRunner {
|
|
|
659
653
|
this.options,
|
|
660
654
|
);
|
|
661
655
|
|
|
662
|
-
if (getFeatureFlag('cachePerformanceImprovements')) {
|
|
663
|
-
const hash = hashString(
|
|
664
|
-
ATLASPACK_VERSION +
|
|
665
|
-
devDepHashes +
|
|
666
|
-
invalidationHash +
|
|
667
|
-
bundle.target.publicUrl +
|
|
668
|
-
bundleGraph.getHash(bundle) +
|
|
669
|
-
JSON.stringify(configResults) +
|
|
670
|
-
JSON.stringify(globalInfoResults) +
|
|
671
|
-
this.options.mode +
|
|
672
|
-
(this.options.shouldBuildLazily ? 'lazy' : 'eager'),
|
|
673
|
-
);
|
|
674
|
-
return path.join(bundle.displayName ?? bundle.name ?? bundle.id, hash);
|
|
675
|
-
}
|
|
676
|
-
|
|
677
656
|
return hashString(
|
|
678
657
|
ATLASPACK_VERSION +
|
|
679
658
|
devDepHashes +
|
|
@@ -708,35 +687,32 @@ export default class PackagerRunner {
|
|
|
708
687
|
return devDepHashes;
|
|
709
688
|
}
|
|
710
689
|
|
|
711
|
-
async readFromCache(cacheKey: string): Promise
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
690
|
+
async readFromCache(cacheKey: string): Promise<
|
|
691
|
+
| {
|
|
692
|
+
contents: Readable;
|
|
693
|
+
map: Readable | null | undefined;
|
|
694
|
+
}
|
|
695
|
+
| null
|
|
696
|
+
| undefined
|
|
697
|
+
> {
|
|
715
698
|
let contentKey = PackagerRunner.getContentKey(cacheKey);
|
|
716
699
|
let mapKey = PackagerRunner.getMapKey(cacheKey);
|
|
717
700
|
|
|
718
701
|
let isLargeBlob = await this.options.cache.hasLargeBlob(contentKey);
|
|
719
|
-
let contentExists =
|
|
720
|
-
|
|
721
|
-
: isLargeBlob || (await this.options.cache.has(contentKey));
|
|
702
|
+
let contentExists =
|
|
703
|
+
isLargeBlob || (await this.options.cache.has(contentKey));
|
|
722
704
|
if (!contentExists) {
|
|
723
705
|
return null;
|
|
724
706
|
}
|
|
725
707
|
|
|
726
|
-
let mapExists =
|
|
727
|
-
? await this.options.cache.hasLargeBlob(mapKey)
|
|
728
|
-
: await this.options.cache.has(mapKey);
|
|
708
|
+
let mapExists = await this.options.cache.has(mapKey);
|
|
729
709
|
|
|
730
710
|
return {
|
|
731
711
|
contents: isLargeBlob
|
|
732
712
|
? this.options.cache.getStream(contentKey)
|
|
733
713
|
: blobToStream(await this.options.cache.getBlob(contentKey)),
|
|
734
714
|
map: mapExists
|
|
735
|
-
? blobToStream(
|
|
736
|
-
getFeatureFlag('cachePerformanceImprovements')
|
|
737
|
-
? await this.options.cache.getLargeBlob(mapKey)
|
|
738
|
-
: await this.options.cache.getBlob(mapKey),
|
|
739
|
-
)
|
|
715
|
+
? blobToStream(await this.options.cache.getBlob(mapKey))
|
|
740
716
|
: null,
|
|
741
717
|
};
|
|
742
718
|
}
|
|
@@ -745,25 +721,25 @@ export default class PackagerRunner {
|
|
|
745
721
|
cacheKeys: CacheKeyMap,
|
|
746
722
|
type: string,
|
|
747
723
|
contents: Blob,
|
|
748
|
-
map
|
|
724
|
+
map?: string | null,
|
|
749
725
|
): Promise<BundleInfo> {
|
|
750
726
|
let size = 0;
|
|
751
727
|
let hash;
|
|
752
|
-
|
|
753
|
-
let
|
|
728
|
+
// @ts-expect-error TS2702
|
|
729
|
+
let hashReferences: RegExp.matchResult | Array<string> = [];
|
|
730
|
+
let isLargeBlob = false;
|
|
754
731
|
|
|
755
732
|
// TODO: don't replace hash references in binary files??
|
|
756
733
|
if (contents instanceof Readable) {
|
|
757
|
-
|
|
758
|
-
isLargeBlob = true;
|
|
759
|
-
}
|
|
734
|
+
isLargeBlob = true;
|
|
760
735
|
|
|
761
736
|
let boundaryStr = '';
|
|
762
737
|
let h = new Hash();
|
|
763
738
|
await this.options.cache.setStream(
|
|
764
739
|
cacheKeys.content,
|
|
765
740
|
blobToStream(contents).pipe(
|
|
766
|
-
|
|
741
|
+
// @ts-expect-error TS2554
|
|
742
|
+
new TapStream((buf: Buffer) => {
|
|
767
743
|
let str = boundaryStr + buf.toString();
|
|
768
744
|
hashReferences = hashReferences.concat(
|
|
769
745
|
str.match(HASH_REF_REGEX) ?? [],
|
|
@@ -781,29 +757,17 @@ export default class PackagerRunner {
|
|
|
781
757
|
hash = hashBuffer(buffer);
|
|
782
758
|
hashReferences = contents.match(HASH_REF_REGEX) ?? [];
|
|
783
759
|
|
|
784
|
-
|
|
785
|
-
await this.options.cache.setLargeBlob(cacheKeys.content, buffer);
|
|
786
|
-
} else {
|
|
787
|
-
await this.options.cache.setBlob(cacheKeys.content, buffer);
|
|
788
|
-
}
|
|
760
|
+
await this.options.cache.setBlob(cacheKeys.content, buffer);
|
|
789
761
|
} else {
|
|
790
762
|
size = contents.length;
|
|
791
763
|
hash = hashBuffer(contents);
|
|
792
764
|
hashReferences = contents.toString().match(HASH_REF_REGEX) ?? [];
|
|
793
765
|
|
|
794
|
-
|
|
795
|
-
await this.options.cache.setLargeBlob(cacheKeys.content, contents);
|
|
796
|
-
} else {
|
|
797
|
-
await this.options.cache.setBlob(cacheKeys.content, contents);
|
|
798
|
-
}
|
|
766
|
+
await this.options.cache.setBlob(cacheKeys.content, contents);
|
|
799
767
|
}
|
|
800
768
|
|
|
801
769
|
if (map != null) {
|
|
802
|
-
|
|
803
|
-
await this.options.cache.setLargeBlob(cacheKeys.map, map);
|
|
804
|
-
} else {
|
|
805
|
-
await this.options.cache.setBlob(cacheKeys.map, map);
|
|
806
|
-
}
|
|
770
|
+
await this.options.cache.setBlob(cacheKeys.map, map);
|
|
807
771
|
}
|
|
808
772
|
|
|
809
773
|
let info = {
|
|
@@ -820,23 +784,14 @@ export default class PackagerRunner {
|
|
|
820
784
|
}
|
|
821
785
|
|
|
822
786
|
static getContentKey(cacheKey: string): string {
|
|
823
|
-
if (getFeatureFlag('cachePerformanceImprovements')) {
|
|
824
|
-
return `PackagerRunner/${ATLASPACK_VERSION}/${cacheKey}/content`;
|
|
825
|
-
}
|
|
826
787
|
return hashString(`${cacheKey}:content`);
|
|
827
788
|
}
|
|
828
789
|
|
|
829
790
|
static getMapKey(cacheKey: string): string {
|
|
830
|
-
if (getFeatureFlag('cachePerformanceImprovements')) {
|
|
831
|
-
return `PackagerRunner/${ATLASPACK_VERSION}/${cacheKey}/map`;
|
|
832
|
-
}
|
|
833
791
|
return hashString(`${cacheKey}:map`);
|
|
834
792
|
}
|
|
835
793
|
|
|
836
794
|
static getInfoKey(cacheKey: string): string {
|
|
837
|
-
if (getFeatureFlag('cachePerformanceImprovements')) {
|
|
838
|
-
return `PackagerRunner/${ATLASPACK_VERSION}/${cacheKey}/info`;
|
|
839
|
-
}
|
|
840
795
|
return hashString(`${cacheKey}:info`);
|
|
841
796
|
}
|
|
842
797
|
}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
// @flow strict-local
|
|
2
|
-
|
|
3
1
|
import type {ReporterEvent, Reporter} from '@atlaspack/types';
|
|
4
2
|
import type {WorkerApi} from '@atlaspack/workers';
|
|
5
3
|
import type {Bundle as InternalBundle, AtlaspackOptions} from './types';
|
|
@@ -23,11 +21,11 @@ import BundleGraph from './BundleGraph';
|
|
|
23
21
|
import {tracer, PluginTracer} from '@atlaspack/profiler';
|
|
24
22
|
import {anyToDiagnostic} from '@atlaspack/diagnostic';
|
|
25
23
|
|
|
26
|
-
type Opts = {
|
|
27
|
-
options: AtlaspackOptions
|
|
28
|
-
reporters: Array<LoadedPlugin<Reporter
|
|
29
|
-
workerFarm: WorkerFarm
|
|
30
|
-
|
|
24
|
+
type Opts = {
|
|
25
|
+
options: AtlaspackOptions;
|
|
26
|
+
reporters: Array<LoadedPlugin<Reporter>>;
|
|
27
|
+
workerFarm: WorkerFarm;
|
|
28
|
+
};
|
|
31
29
|
|
|
32
30
|
const instances: Set<ReporterRunner> = new Set();
|
|
33
31
|
|
|
@@ -58,24 +56,21 @@ export default class ReporterRunner {
|
|
|
58
56
|
}
|
|
59
57
|
}
|
|
60
58
|
|
|
61
|
-
eventHandler: (ReporterEvent) => void = (event): void => {
|
|
59
|
+
eventHandler: (arg1: ReporterEvent) => void = (event): void => {
|
|
62
60
|
if (
|
|
63
61
|
event.type === 'buildProgress' &&
|
|
64
62
|
(event.phase === 'optimizing' || event.phase === 'packaging') &&
|
|
65
63
|
!(event.bundle instanceof NamedBundle)
|
|
66
64
|
) {
|
|
67
|
-
//
|
|
65
|
+
// @ts-expect-error TS2339
|
|
68
66
|
let bundleGraphRef = event.bundleGraphRef;
|
|
69
|
-
//
|
|
67
|
+
// @ts-expect-error TS2739
|
|
70
68
|
let bundle: InternalBundle = event.bundle;
|
|
71
69
|
// Convert any internal bundles back to their public equivalents as reporting
|
|
72
70
|
// is public api
|
|
73
|
-
let bundleGraph =
|
|
74
|
-
|
|
75
|
-
bundleGraphRef,
|
|
76
|
-
);
|
|
71
|
+
let bundleGraph =
|
|
72
|
+
this.workerFarm.workerApi.getSharedReference(bundleGraphRef);
|
|
77
73
|
invariant(bundleGraph instanceof BundleGraph);
|
|
78
|
-
// $FlowFixMe[incompatible-call]
|
|
79
74
|
this.report({
|
|
80
75
|
...event,
|
|
81
76
|
bundle: NamedBundle.get(bundle, bundleGraph, this.options),
|
|
@@ -88,11 +83,12 @@ export default class ReporterRunner {
|
|
|
88
83
|
|
|
89
84
|
async report(unsanitisedEvent: ReporterEvent) {
|
|
90
85
|
let event: ReporterEvent = unsanitisedEvent;
|
|
86
|
+
// @ts-expect-error TS2339
|
|
91
87
|
if (event.diagnostics) {
|
|
92
88
|
// Sanitise input before passing to reporters
|
|
93
|
-
// $FlowFixMe too complex to narrow down by type
|
|
94
89
|
event = {
|
|
95
90
|
...event,
|
|
91
|
+
// @ts-expect-error TS2322
|
|
96
92
|
diagnostics: anyToDiagnostic(event.diagnostics),
|
|
97
93
|
};
|
|
98
94
|
}
|
|
@@ -105,7 +101,6 @@ export default class ReporterRunner {
|
|
|
105
101
|
measurement = tracer.createMeasurement(reporter.name, 'reporter');
|
|
106
102
|
}
|
|
107
103
|
await reporter.plugin.report({
|
|
108
|
-
// $FlowFixMe
|
|
109
104
|
event,
|
|
110
105
|
options: this.pluginOptions,
|
|
111
106
|
logger: new PluginLogger({origin: reporter.name}),
|
|
@@ -114,7 +109,7 @@ export default class ReporterRunner {
|
|
|
114
109
|
category: 'reporter',
|
|
115
110
|
}),
|
|
116
111
|
});
|
|
117
|
-
} catch (reportError) {
|
|
112
|
+
} catch (reportError: any) {
|
|
118
113
|
if (event.type !== 'buildSuccess') {
|
|
119
114
|
// This will be captured by consumers
|
|
120
115
|
INTERNAL_ORIGINAL_CONSOLE.error(reportError);
|