@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.
Files changed (380) hide show
  1. package/CHANGELOG.md +1324 -0
  2. package/dist/AssetGraph.js +523 -0
  3. package/dist/Atlaspack.js +701 -0
  4. package/dist/AtlaspackConfig.js +324 -0
  5. package/dist/AtlaspackConfig.schema.js +117 -0
  6. package/dist/BundleGraph.js +1906 -0
  7. package/dist/CommittedAsset.js +142 -0
  8. package/dist/Dependency.js +125 -0
  9. package/dist/Environment.js +132 -0
  10. package/dist/EnvironmentManager.js +108 -0
  11. package/dist/IdentifierRegistry.js +38 -0
  12. package/dist/InternalConfig.js +37 -0
  13. package/dist/PackagerRunner.js +470 -0
  14. package/dist/ReporterRunner.js +151 -0
  15. package/dist/RequestTracker.js +1297 -0
  16. package/dist/SymbolPropagation.js +624 -0
  17. package/dist/TargetDescriptor.schema.js +146 -0
  18. package/dist/Transformation.js +514 -0
  19. package/dist/UncommittedAsset.js +310 -0
  20. package/dist/Validation.js +196 -0
  21. package/dist/applyRuntimes.js +384 -0
  22. package/dist/assetUtils.js +169 -0
  23. package/dist/atlaspack-v3/AtlaspackV3.js +83 -0
  24. package/dist/atlaspack-v3/NapiWorkerPool.js +114 -0
  25. package/dist/atlaspack-v3/fs.js +53 -0
  26. package/dist/atlaspack-v3/index.js +25 -0
  27. package/dist/atlaspack-v3/jsCallable.js +16 -0
  28. package/dist/atlaspack-v3/worker/compat/asset-symbols.js +190 -0
  29. package/dist/atlaspack-v3/worker/compat/bitflags.js +98 -0
  30. package/dist/atlaspack-v3/worker/compat/dependency.js +43 -0
  31. package/dist/atlaspack-v3/worker/compat/environment.js +57 -0
  32. package/dist/atlaspack-v3/worker/compat/index.js +24 -0
  33. package/dist/atlaspack-v3/worker/compat/mutable-asset.js +152 -0
  34. package/dist/atlaspack-v3/worker/compat/plugin-config.js +64 -0
  35. package/dist/atlaspack-v3/worker/compat/plugin-options.js +137 -0
  36. package/dist/atlaspack-v3/worker/compat/plugin-tracer.js +10 -0
  37. package/dist/atlaspack-v3/worker/compat/target.js +14 -0
  38. package/dist/atlaspack-v3/worker/side-effect-detector.js +243 -0
  39. package/dist/atlaspack-v3/worker/worker.js +398 -0
  40. package/dist/constants.js +17 -0
  41. package/dist/dumpGraphToGraphViz.js +281 -0
  42. package/dist/index.js +62 -0
  43. package/dist/loadAtlaspackPlugin.js +128 -0
  44. package/dist/loadDotEnv.js +41 -0
  45. package/dist/projectPath.js +83 -0
  46. package/dist/public/Asset.js +279 -0
  47. package/dist/public/Bundle.js +224 -0
  48. package/dist/public/BundleGraph.js +371 -0
  49. package/dist/public/BundleGroup.js +53 -0
  50. package/dist/public/Config.js +286 -0
  51. package/dist/public/Dependency.js +138 -0
  52. package/dist/public/Environment.js +278 -0
  53. package/dist/public/MutableBundleGraph.js +277 -0
  54. package/dist/public/PluginOptions.js +80 -0
  55. package/dist/public/Symbols.js +248 -0
  56. package/dist/public/Target.js +69 -0
  57. package/dist/registerCoreWithSerializer.js +38 -0
  58. package/dist/requests/AssetGraphRequest.js +430 -0
  59. package/dist/requests/AssetGraphRequestRust.js +471 -0
  60. package/dist/requests/AssetRequest.js +130 -0
  61. package/dist/requests/AtlaspackBuildRequest.js +98 -0
  62. package/dist/requests/AtlaspackConfigRequest.js +493 -0
  63. package/dist/requests/BundleGraphRequest.js +381 -0
  64. package/dist/requests/BundleGraphRequestRust.js +324 -0
  65. package/dist/requests/BundleGraphRequestUtils.js +262 -0
  66. package/dist/requests/ConfigRequest.js +246 -0
  67. package/dist/requests/DevDepRequest.js +204 -0
  68. package/dist/requests/EntryRequest.js +314 -0
  69. package/dist/requests/PackageRequest.js +89 -0
  70. package/dist/requests/PathRequest.js +349 -0
  71. package/dist/requests/TargetRequest.js +1316 -0
  72. package/dist/requests/ValidationRequest.js +49 -0
  73. package/dist/requests/WriteBundleRequest.js +522 -0
  74. package/dist/requests/WriteBundlesRequest.js +190 -0
  75. package/dist/requests/asset-graph-diff.js +128 -0
  76. package/dist/requests/asset-graph-dot.js +131 -0
  77. package/dist/resolveOptions.js +267 -0
  78. package/dist/rustWorkerThreadDylibHack.js +19 -0
  79. package/dist/serializerCore.browser.js +43 -0
  80. package/dist/summarizeRequest.js +39 -0
  81. package/dist/types.js +31 -0
  82. package/dist/utils.js +172 -0
  83. package/dist/worker.js +123 -0
  84. package/lib/AssetGraph.js +53 -15
  85. package/lib/Atlaspack.js +140 -56
  86. package/lib/AtlaspackConfig.js +17 -6
  87. package/lib/AtlaspackConfig.schema.js +16 -5
  88. package/lib/BundleGraph.js +390 -43
  89. package/lib/CommittedAsset.js +8 -2
  90. package/lib/Dependency.js +9 -3
  91. package/lib/Environment.js +16 -10
  92. package/lib/EnvironmentManager.js +143 -0
  93. package/lib/IdentifierRegistry.js +2 -4
  94. package/lib/InternalConfig.js +3 -2
  95. package/lib/PackagerRunner.js +46 -82
  96. package/lib/ReporterRunner.js +8 -12
  97. package/lib/RequestTracker.js +191 -152
  98. package/lib/SymbolPropagation.js +52 -29
  99. package/lib/TargetDescriptor.schema.js +10 -1
  100. package/lib/Transformation.js +68 -19
  101. package/lib/UncommittedAsset.js +17 -24
  102. package/lib/Validation.js +20 -5
  103. package/lib/applyRuntimes.js +98 -7
  104. package/lib/assetUtils.js +16 -6
  105. package/lib/atlaspack-v3/AtlaspackV3.js +58 -15
  106. package/lib/atlaspack-v3/NapiWorkerPool.js +63 -2
  107. package/lib/atlaspack-v3/fs.js +4 -1
  108. package/lib/atlaspack-v3/index.js +28 -1
  109. package/lib/atlaspack-v3/jsCallable.js +0 -2
  110. package/lib/atlaspack-v3/worker/compat/asset-symbols.js +7 -4
  111. package/lib/atlaspack-v3/worker/compat/bitflags.js +31 -25
  112. package/lib/atlaspack-v3/worker/compat/dependency.js +4 -1
  113. package/lib/atlaspack-v3/worker/compat/environment.js +10 -7
  114. package/lib/atlaspack-v3/worker/compat/index.js +0 -11
  115. package/lib/atlaspack-v3/worker/compat/mutable-asset.js +16 -11
  116. package/lib/atlaspack-v3/worker/compat/plugin-config.js +14 -35
  117. package/lib/atlaspack-v3/worker/compat/plugin-options.js +16 -2
  118. package/lib/atlaspack-v3/worker/compat/plugin-tracer.js +3 -0
  119. package/lib/atlaspack-v3/worker/compat/target.js +2 -0
  120. package/lib/atlaspack-v3/worker/index.js +3 -0
  121. package/lib/atlaspack-v3/worker/side-effect-detector.js +214 -0
  122. package/lib/atlaspack-v3/worker/worker.js +231 -79
  123. package/lib/constants.js +0 -1
  124. package/lib/dumpGraphToGraphViz.js +72 -17
  125. package/lib/index.js +46 -3
  126. package/lib/loadAtlaspackPlugin.js +2 -3
  127. package/lib/loadDotEnv.js +5 -2
  128. package/lib/projectPath.js +6 -1
  129. package/lib/public/Asset.js +22 -12
  130. package/lib/public/Bundle.js +16 -18
  131. package/lib/public/BundleGraph.js +27 -25
  132. package/lib/public/BundleGroup.js +5 -6
  133. package/lib/public/Config.js +118 -18
  134. package/lib/public/Dependency.js +9 -7
  135. package/lib/public/Environment.js +13 -8
  136. package/lib/public/MutableBundleGraph.js +56 -15
  137. package/lib/public/PluginOptions.js +2 -2
  138. package/lib/public/Symbols.js +12 -12
  139. package/lib/public/Target.js +8 -7
  140. package/lib/registerCoreWithSerializer.js +7 -4
  141. package/lib/requests/AssetGraphRequest.js +61 -40
  142. package/lib/requests/AssetGraphRequestRust.js +314 -82
  143. package/lib/requests/AssetRequest.js +24 -7
  144. package/lib/requests/AtlaspackBuildRequest.js +53 -7
  145. package/lib/requests/AtlaspackConfigRequest.js +29 -19
  146. package/lib/requests/BundleGraphRequest.js +61 -130
  147. package/lib/requests/BundleGraphRequestRust.js +381 -0
  148. package/lib/requests/BundleGraphRequestUtils.js +280 -0
  149. package/lib/requests/ConfigRequest.js +55 -7
  150. package/lib/requests/DevDepRequest.js +32 -6
  151. package/lib/requests/EntryRequest.js +4 -3
  152. package/lib/requests/PackageRequest.js +56 -12
  153. package/lib/requests/PathRequest.js +26 -6
  154. package/lib/requests/TargetRequest.js +129 -60
  155. package/lib/requests/ValidationRequest.js +6 -2
  156. package/lib/requests/WriteBundleRequest.js +329 -20
  157. package/lib/requests/WriteBundlesRequest.js +64 -10
  158. package/lib/requests/asset-graph-diff.js +13 -8
  159. package/lib/requests/asset-graph-dot.js +2 -8
  160. package/lib/resolveOptions.js +37 -14
  161. package/lib/rustWorkerThreadDylibHack.js +0 -1
  162. package/lib/serializerCore.browser.js +1 -2
  163. package/lib/summarizeRequest.js +1 -1
  164. package/lib/types/AssetGraph.d.ts +55 -0
  165. package/lib/types/Atlaspack.d.ts +52 -0
  166. package/lib/types/AtlaspackConfig.d.ts +65 -0
  167. package/lib/types/AtlaspackConfig.schema.d.ts +53 -0
  168. package/lib/types/BundleGraph.d.ts +232 -0
  169. package/lib/types/CommittedAsset.d.ts +23 -0
  170. package/lib/types/Dependency.d.ts +44 -0
  171. package/lib/types/Environment.d.ts +11 -0
  172. package/lib/types/EnvironmentManager.d.ts +37 -0
  173. package/lib/types/IdentifierRegistry.d.ts +6 -0
  174. package/lib/types/InternalConfig.d.ts +23 -0
  175. package/lib/types/PackagerRunner.d.ts +85 -0
  176. package/lib/types/ReporterRunner.d.ts +25 -0
  177. package/lib/types/RequestTracker.d.ts +385 -0
  178. package/lib/types/SymbolPropagation.d.ts +11 -0
  179. package/lib/types/TargetDescriptor.schema.d.ts +5 -0
  180. package/lib/types/Transformation.d.ts +72 -0
  181. package/lib/types/UncommittedAsset.d.ts +61 -0
  182. package/lib/types/Validation.d.ts +37 -0
  183. package/lib/types/applyRuntimes.d.ts +25 -0
  184. package/lib/types/assetUtils.d.ts +42 -0
  185. package/lib/types/atlaspack-v3/AtlaspackV3.d.ts +35 -0
  186. package/lib/types/atlaspack-v3/NapiWorkerPool.d.ts +13 -0
  187. package/lib/types/atlaspack-v3/fs.d.ts +13 -0
  188. package/lib/types/atlaspack-v3/index.d.ts +6 -0
  189. package/lib/types/atlaspack-v3/jsCallable.d.ts +1 -0
  190. package/lib/types/atlaspack-v3/worker/compat/asset-symbols.d.ts +51 -0
  191. package/lib/types/atlaspack-v3/worker/compat/bitflags.d.ts +14 -0
  192. package/lib/types/atlaspack-v3/worker/compat/dependency.d.ts +25 -0
  193. package/lib/types/atlaspack-v3/worker/compat/environment.d.ts +27 -0
  194. package/{src/atlaspack-v3/worker/compat/index.js → lib/types/atlaspack-v3/worker/compat/index.d.ts} +0 -2
  195. package/lib/types/atlaspack-v3/worker/compat/mutable-asset.d.ts +49 -0
  196. package/lib/types/atlaspack-v3/worker/compat/plugin-config.d.ts +29 -0
  197. package/lib/types/atlaspack-v3/worker/compat/plugin-options.d.ts +23 -0
  198. package/lib/types/atlaspack-v3/worker/compat/plugin-tracer.d.ts +5 -0
  199. package/lib/types/atlaspack-v3/worker/compat/target.d.ts +11 -0
  200. package/lib/types/atlaspack-v3/worker/side-effect-detector.d.ts +76 -0
  201. package/lib/types/atlaspack-v3/worker/worker.d.ts +81 -0
  202. package/lib/types/constants.d.ts +13 -0
  203. package/lib/types/dumpGraphToGraphViz.d.ts +10 -0
  204. package/lib/types/index.d.ts +8 -0
  205. package/lib/types/loadAtlaspackPlugin.d.ts +8 -0
  206. package/lib/types/loadDotEnv.d.ts +3 -0
  207. package/lib/types/projectPath.d.ts +19 -0
  208. package/lib/types/public/Asset.d.ts +74 -0
  209. package/lib/types/public/Bundle.d.ts +45 -0
  210. package/lib/types/public/BundleGraph.d.ts +72 -0
  211. package/lib/types/public/BundleGroup.d.ts +12 -0
  212. package/lib/types/public/Config.d.ts +75 -0
  213. package/lib/types/public/Dependency.d.ts +32 -0
  214. package/lib/types/public/Environment.d.ts +34 -0
  215. package/lib/types/public/MutableBundleGraph.d.ts +26 -0
  216. package/lib/types/public/PluginOptions.d.ts +25 -0
  217. package/lib/types/public/Symbols.d.ts +81 -0
  218. package/lib/types/public/Target.d.ts +16 -0
  219. package/lib/types/registerCoreWithSerializer.d.ts +2 -0
  220. package/lib/types/requests/AssetGraphRequest.d.ts +76 -0
  221. package/lib/types/requests/AssetGraphRequestRust.d.ts +21 -0
  222. package/lib/types/requests/AssetRequest.d.ts +16 -0
  223. package/lib/types/requests/AtlaspackBuildRequest.d.ts +33 -0
  224. package/lib/types/requests/AtlaspackConfigRequest.d.ts +45 -0
  225. package/lib/types/requests/BundleGraphRequest.d.ts +28 -0
  226. package/lib/types/requests/BundleGraphRequestRust.d.ts +34 -0
  227. package/lib/types/requests/BundleGraphRequestUtils.d.ts +38 -0
  228. package/lib/types/requests/ConfigRequest.d.ts +67 -0
  229. package/lib/types/requests/DevDepRequest.d.ts +30 -0
  230. package/lib/types/requests/EntryRequest.d.ts +36 -0
  231. package/lib/types/requests/PackageRequest.d.ts +27 -0
  232. package/lib/types/requests/PathRequest.d.ts +48 -0
  233. package/lib/types/requests/TargetRequest.d.ts +48 -0
  234. package/lib/types/requests/ValidationRequest.d.ts +20 -0
  235. package/lib/types/requests/WriteBundleRequest.d.ts +80 -0
  236. package/lib/types/requests/WriteBundlesRequest.d.ts +32 -0
  237. package/lib/types/requests/asset-graph-diff.d.ts +1 -0
  238. package/lib/types/requests/asset-graph-dot.d.ts +9 -0
  239. package/lib/types/resolveOptions.d.ts +3 -0
  240. package/lib/types/rustWorkerThreadDylibHack.d.ts +9 -0
  241. package/lib/types/serializerCore.browser.d.ts +3 -0
  242. package/lib/types/summarizeRequest.d.ts +10 -0
  243. package/lib/types/types.d.ts +496 -0
  244. package/lib/types/utils.d.ts +23 -0
  245. package/lib/types/worker.d.ts +44 -0
  246. package/lib/types.js +8 -1
  247. package/lib/utils.js +18 -3
  248. package/lib/worker.js +32 -15
  249. package/package.json +26 -36
  250. package/src/{AssetGraph.js → AssetGraph.ts} +87 -51
  251. package/src/{Atlaspack.js → Atlaspack.ts} +181 -72
  252. package/src/{AtlaspackConfig.schema.js → AtlaspackConfig.schema.ts} +25 -19
  253. package/src/{AtlaspackConfig.js → AtlaspackConfig.ts} +78 -54
  254. package/src/{BundleGraph.js → BundleGraph.ts} +575 -145
  255. package/src/{CommittedAsset.js → CommittedAsset.ts} +15 -13
  256. package/src/{Dependency.js → Dependency.ts} +59 -42
  257. package/src/{Environment.js → Environment.ts} +24 -15
  258. package/src/EnvironmentManager.ts +154 -0
  259. package/src/{IdentifierRegistry.js → IdentifierRegistry.ts} +1 -4
  260. package/src/{InternalConfig.js → InternalConfig.ts} +22 -23
  261. package/src/{PackagerRunner.js → PackagerRunner.ts} +114 -159
  262. package/src/{ReporterRunner.js → ReporterRunner.ts} +13 -18
  263. package/src/{RequestTracker.js → RequestTracker.ts} +444 -355
  264. package/src/{SymbolPropagation.js → SymbolPropagation.ts} +178 -61
  265. package/src/{TargetDescriptor.schema.js → TargetDescriptor.schema.ts} +10 -1
  266. package/src/{Transformation.js → Transformation.ts} +110 -65
  267. package/src/{UncommittedAsset.js → UncommittedAsset.ts} +45 -49
  268. package/src/{Validation.js → Validation.ts} +32 -17
  269. package/src/{applyRuntimes.js → applyRuntimes.ts} +135 -26
  270. package/src/{assetUtils.js → assetUtils.ts} +49 -36
  271. package/src/atlaspack-v3/AtlaspackV3.ts +183 -0
  272. package/src/atlaspack-v3/NapiWorkerPool.ts +129 -0
  273. package/src/atlaspack-v3/{fs.js → fs.ts} +8 -4
  274. package/src/atlaspack-v3/{index.js → index.ts} +3 -4
  275. package/src/atlaspack-v3/jsCallable.ts +14 -0
  276. package/src/atlaspack-v3/worker/compat/{asset-symbols.js → asset-symbols.ts} +40 -30
  277. package/src/atlaspack-v3/worker/compat/bitflags.ts +102 -0
  278. package/src/atlaspack-v3/worker/compat/{dependency.js → dependency.ts} +13 -13
  279. package/src/atlaspack-v3/worker/compat/{environment.js → environment.ts} +13 -9
  280. package/src/atlaspack-v3/worker/compat/index.ts +8 -0
  281. package/src/atlaspack-v3/worker/compat/{mutable-asset.js → mutable-asset.ts} +21 -20
  282. package/src/atlaspack-v3/worker/compat/{plugin-config.js → plugin-config.ts} +25 -56
  283. package/src/atlaspack-v3/worker/compat/{plugin-options.js → plugin-options.ts} +19 -5
  284. package/src/atlaspack-v3/worker/compat/{plugin-tracer.js → plugin-tracer.ts} +2 -2
  285. package/src/atlaspack-v3/worker/compat/{target.js → target.ts} +3 -4
  286. package/src/atlaspack-v3/worker/index.js +2 -1
  287. package/src/atlaspack-v3/worker/side-effect-detector.ts +298 -0
  288. package/src/atlaspack-v3/worker/worker.ts +548 -0
  289. package/src/{constants.js → constants.ts} +0 -3
  290. package/src/{dumpGraphToGraphViz.js → dumpGraphToGraphViz.ts} +73 -28
  291. package/src/index.ts +18 -0
  292. package/src/{loadAtlaspackPlugin.js → loadAtlaspackPlugin.ts} +8 -9
  293. package/src/{loadDotEnv.js → loadDotEnv.ts} +2 -2
  294. package/src/{projectPath.js → projectPath.ts} +20 -9
  295. package/src/public/{Asset.js → Asset.ts} +41 -28
  296. package/src/public/{Bundle.js → Bundle.ts} +28 -29
  297. package/src/public/{BundleGraph.js → BundleGraph.ts} +103 -68
  298. package/src/public/{BundleGroup.js → BundleGroup.ts} +7 -10
  299. package/src/public/{Config.js → Config.ts} +171 -33
  300. package/src/public/{Dependency.js → Dependency.ts} +20 -17
  301. package/src/public/{Environment.js → Environment.ts} +28 -17
  302. package/src/public/{MutableBundleGraph.js → MutableBundleGraph.ts} +55 -24
  303. package/src/public/{PluginOptions.js → PluginOptions.ts} +6 -6
  304. package/src/public/{Symbols.js → Symbols.ts} +75 -36
  305. package/src/public/{Target.js → Target.ts} +10 -8
  306. package/src/{registerCoreWithSerializer.js → registerCoreWithSerializer.ts} +9 -7
  307. package/src/requests/{AssetGraphRequest.js → AssetGraphRequest.ts} +117 -90
  308. package/src/requests/AssetGraphRequestRust.ts +557 -0
  309. package/src/requests/{AssetRequest.js → AssetRequest.ts} +24 -18
  310. package/src/requests/AtlaspackBuildRequest.ts +168 -0
  311. package/src/requests/{AtlaspackConfigRequest.js → AtlaspackConfigRequest.ts} +72 -58
  312. package/src/requests/{BundleGraphRequest.js → BundleGraphRequest.ts} +119 -199
  313. package/src/requests/BundleGraphRequestRust.ts +470 -0
  314. package/src/requests/BundleGraphRequestUtils.ts +323 -0
  315. package/src/requests/{ConfigRequest.js → ConfigRequest.ts} +110 -50
  316. package/src/requests/{DevDepRequest.js → DevDepRequest.ts} +60 -35
  317. package/src/requests/{EntryRequest.js → EntryRequest.ts} +36 -31
  318. package/src/requests/{PackageRequest.js → PackageRequest.ts} +52 -25
  319. package/src/requests/{PathRequest.js → PathRequest.ts} +47 -37
  320. package/src/requests/{TargetRequest.js → TargetRequest.ts} +265 -179
  321. package/src/requests/{ValidationRequest.js → ValidationRequest.ts} +18 -17
  322. package/src/requests/WriteBundleRequest.ts +734 -0
  323. package/src/requests/{WriteBundlesRequest.js → WriteBundlesRequest.ts} +134 -50
  324. package/src/requests/{asset-graph-diff.js → asset-graph-diff.ts} +25 -21
  325. package/src/requests/{asset-graph-dot.js → asset-graph-dot.ts} +8 -12
  326. package/src/{resolveOptions.js → resolveOptions.ts} +57 -27
  327. package/src/{rustWorkerThreadDylibHack.js → rustWorkerThreadDylibHack.ts} +1 -4
  328. package/src/{serializerCore.browser.js → serializerCore.browser.ts} +2 -3
  329. package/src/{summarizeRequest.js → summarizeRequest.ts} +17 -5
  330. package/src/types.ts +651 -0
  331. package/src/{utils.js → utils.ts} +52 -21
  332. package/src/{worker.js → worker.ts} +50 -42
  333. package/test/{AssetGraph.test.js → AssetGraph.test.ts} +5 -8
  334. package/test/{Atlaspack.test.js → Atlaspack.test.ts} +5 -10
  335. package/test/{AtlaspackConfig.test.js → AtlaspackConfig.test.ts} +0 -5
  336. package/test/{AtlaspackConfigRequest.test.js → AtlaspackConfigRequest.test.ts} +76 -16
  337. package/test/{BundleGraph.test.js → BundleGraph.test.ts} +8 -13
  338. package/test/{Dependency.test.js → Dependency.test.ts} +2 -3
  339. package/test/{EntryRequest.test.js → EntryRequest.test.ts} +1 -6
  340. package/test/Environment.test.ts +153 -0
  341. package/test/EnvironmentManager.test.ts +188 -0
  342. package/test/{IdentifierRegistry.test.js → IdentifierRegistry.test.ts} +2 -4
  343. package/test/{InternalAsset.test.js → InternalAsset.test.ts} +2 -7
  344. package/test/PackagerRunner.test.ts +0 -0
  345. package/test/{PublicAsset.test.js → PublicAsset.test.ts} +2 -7
  346. package/test/{PublicBundle.test.js → PublicBundle.test.ts} +1 -2
  347. package/test/{PublicDependency.test.js → PublicDependency.test.ts} +0 -2
  348. package/test/PublicEnvironment.test.ts +49 -0
  349. package/test/{PublicMutableBundleGraph.test.js → PublicMutableBundleGraph.test.ts} +6 -11
  350. package/test/{RequestTracker.test.js → RequestTracker.test.ts} +136 -58
  351. package/test/{SymbolPropagation.test.js → SymbolPropagation.test.ts} +124 -74
  352. package/test/{TargetRequest.test.js → TargetRequest.test.ts} +91 -92
  353. package/test/fixtures/config-with-reporters/.parcelrc +7 -0
  354. package/test/fixtures/custom-targets/package.json +6 -0
  355. package/test/public/Config.test.ts +104 -0
  356. package/test/requests/AssetGraphRequestRust.test.ts +443 -0
  357. package/test/requests/{ConfigRequest.test.js → ConfigRequest.test.ts} +202 -13
  358. package/test/requests/{DevDepRequest.test.js → DevDepRequest.test.ts} +0 -2
  359. package/test/requests/WriteBundleRequest.test.ts +602 -0
  360. package/test/{test-utils.js → test-utils.ts} +3 -4
  361. package/test/{utils.test.js → utils.test.ts} +1 -3
  362. package/tsconfig.json +60 -0
  363. package/tsconfig.tsbuildinfo +1 -0
  364. package/index.d.ts +0 -30
  365. package/lib/atlaspack-v3/worker/compat/plugin-logger.js +0 -29
  366. package/src/atlaspack-v3/AtlaspackV3.js +0 -87
  367. package/src/atlaspack-v3/NapiWorkerPool.js +0 -53
  368. package/src/atlaspack-v3/jsCallable.js +0 -18
  369. package/src/atlaspack-v3/worker/compat/bitflags.js +0 -100
  370. package/src/atlaspack-v3/worker/compat/plugin-logger.js +0 -47
  371. package/src/atlaspack-v3/worker/worker.js +0 -369
  372. package/src/index.js +0 -13
  373. package/src/requests/AssetGraphRequestRust.js +0 -263
  374. package/src/requests/AtlaspackBuildRequest.js +0 -111
  375. package/src/requests/WriteBundleRequest.js +0 -369
  376. package/src/types.js +0 -600
  377. package/test/Environment.test.js +0 -119
  378. package/test/PackagerRunner.test.js +0 -27
  379. package/test/PublicEnvironment.test.js +0 -27
  380. package/test/requests/AssetGraphRequestRust.test.js +0 -411
@@ -26,14 +26,14 @@ function _utils() {
26
26
  return data;
27
27
  }
28
28
  function _sourceMap() {
29
- const data = _interopRequireDefault(require("@parcel/source-map"));
29
+ const data = _interopRequireDefault(require("@atlaspack/source-map"));
30
30
  _sourceMap = function () {
31
31
  return data;
32
32
  };
33
33
  return data;
34
34
  }
35
35
  var _assetUtils = require("./assetUtils");
36
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
36
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
37
37
  class CommittedAsset {
38
38
  constructor(value, options) {
39
39
  this.value = value;
@@ -74,6 +74,7 @@ class CommittedAsset {
74
74
  if (typeof content === 'string' || content instanceof Buffer) {
75
75
  return content.toString();
76
76
  } else if (content != null) {
77
+ // @ts-expect-error TS2345
77
78
  this.content = (0, _utils().bufferStream)(content);
78
79
  return (await this.content).toString();
79
80
  }
@@ -86,7 +87,10 @@ class CommittedAsset {
86
87
  } else if (typeof content === 'string' || content instanceof Buffer) {
87
88
  return Buffer.from(content);
88
89
  }
90
+
91
+ // @ts-expect-error TS2345
89
92
  this.content = (0, _utils().bufferStream)(content);
93
+ // @ts-expect-error TS2322
90
94
  return this.content;
91
95
  }
92
96
  getStream() {
@@ -125,6 +129,8 @@ class CommittedAsset {
125
129
  }
126
130
  })();
127
131
  }
132
+
133
+ // @ts-expect-error TS2322
128
134
  return this.mapBuffer ?? Promise.resolve();
129
135
  }
130
136
  getMap() {
package/lib/Dependency.js CHANGED
@@ -24,7 +24,8 @@ function _assert() {
24
24
  return data;
25
25
  }
26
26
  var _IdentifierRegistry = require("./IdentifierRegistry");
27
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
+ var _EnvironmentManager = require("./EnvironmentManager");
28
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
28
29
  function createDependencyId({
29
30
  sourceAssetId,
30
31
  specifier,
@@ -41,8 +42,11 @@ function createDependencyId({
41
42
  const params = {
42
43
  sourceAssetId,
43
44
  specifier,
44
- environmentId: env.id,
45
- target,
45
+ environmentId: (0, _EnvironmentManager.toEnvironmentId)(env),
46
+ target: target != null ? {
47
+ ...target,
48
+ env: (0, _EnvironmentManager.fromEnvironmentId)(target.env)
49
+ } : null,
46
50
  pipeline,
47
51
  specifierType: _types.SpecifierType[specifierType],
48
52
  bundleBehavior,
@@ -121,7 +125,9 @@ function convertConditions(conditions, dep) {
121
125
  let packageConditions = 0;
122
126
  let customConditions = [];
123
127
  for (let condition of conditions) {
128
+ // @ts-expect-error TS7053
124
129
  if (_types.ExportsCondition[condition]) {
130
+ // @ts-expect-error TS7053
125
131
  packageConditions |= _types.ExportsCondition[condition];
126
132
  } else {
127
133
  customConditions.push(condition);
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.createEnvironment = createEnvironment;
7
+ exports.getEnvironmentHash = getEnvironmentHash;
7
8
  exports.mergeEnvironments = mergeEnvironments;
8
9
  function _rust() {
9
10
  const data = require("@atlaspack/rust");
@@ -15,8 +16,8 @@ function _rust() {
15
16
  var _utils = require("./utils");
16
17
  var _Environment = _interopRequireWildcard(require("./public/Environment"));
17
18
  var _IdentifierRegistry = require("./IdentifierRegistry");
18
- 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); }
19
- 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; }
19
+ var _EnvironmentManager = require("./EnvironmentManager");
20
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
20
21
  const DEFAULT_ENGINES = {
21
22
  browsers: ['> 0.25%'],
22
23
  node: '>= 8.0.0'
@@ -32,7 +33,8 @@ function createEnvironment({
32
33
  shouldScopeHoist = false,
33
34
  sourceMap,
34
35
  unstableSingleFileOutput = false,
35
- loc
36
+ loc,
37
+ customEnv
36
38
  } = {
37
39
  /*::...null*/
38
40
  }) {
@@ -57,8 +59,10 @@ function createEnvironment({
57
59
  case 'browser':
58
60
  case 'web-worker':
59
61
  case 'service-worker':
62
+ case 'tesseract':
60
63
  case 'electron-renderer':
61
64
  engines = {
65
+ // @ts-expect-error TS2322
62
66
  browsers: DEFAULT_ENGINES.browsers
63
67
  };
64
68
  break;
@@ -76,6 +80,7 @@ function createEnvironment({
76
80
  case 'browser':
77
81
  case 'web-worker':
78
82
  case 'service-worker':
83
+ case 'tesseract':
79
84
  default:
80
85
  includeNodeModules = true;
81
86
  break;
@@ -96,6 +101,7 @@ function createEnvironment({
96
101
  let res = {
97
102
  id: '',
98
103
  context,
104
+ // @ts-expect-error TS2322
99
105
  engines,
100
106
  includeNodeModules,
101
107
  outputFormat,
@@ -105,21 +111,20 @@ function createEnvironment({
105
111
  shouldScopeHoist,
106
112
  sourceMap,
107
113
  unstableSingleFileOutput,
108
- loc
114
+ loc,
115
+ customEnv
109
116
  };
110
117
  res.id = getEnvironmentHash(res);
111
- return Object.freeze(res);
118
+ return (0, _EnvironmentManager.toEnvironmentRef)(Object.freeze(res));
112
119
  }
113
120
  function mergeEnvironments(projectRoot, a, b) {
114
121
  // If merging the same object, avoid copying.
115
122
  if (a === b || !b) {
116
- return a;
123
+ return (0, _EnvironmentManager.toEnvironmentRef)(a);
117
124
  }
118
125
  if (b instanceof _Environment.default) {
119
- return (0, _Environment.environmentToInternalEnvironment)(b);
126
+ return (0, _EnvironmentManager.toEnvironmentRef)((0, _Environment.environmentToInternalEnvironment)(b));
120
127
  }
121
-
122
- // $FlowFixMe - ignore the `id` that is already on a
123
128
  return createEnvironment({
124
129
  ...a,
125
130
  ...b,
@@ -136,7 +141,8 @@ function getEnvironmentHash(env) {
136
141
  isLibrary: env.isLibrary,
137
142
  shouldOptimize: env.shouldOptimize,
138
143
  shouldScopeHoist: env.shouldScopeHoist,
139
- sourceMap: env.sourceMap
144
+ sourceMap: env.sourceMap,
145
+ customEnv: env.customEnv
140
146
  };
141
147
  const id = (0, _rust().createEnvironmentId)(data);
142
148
  _IdentifierRegistry.identifierRegistry.addIdentifier('environment', id, data);
@@ -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
+ }
@@ -11,7 +11,7 @@ function _fs() {
11
11
  };
12
12
  return data;
13
13
  }
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
15
  class IdentifierRegistry {
16
16
  #enabled;
17
17
  #createdDirectory = false;
@@ -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
  }
@@ -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.id + String(isSource));
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.id,
38
+ environmentId: (0, _EnvironmentManager.toEnvironmentId)(environment),
38
39
  isSource
39
40
  });
40
41
  return {
@@ -60,13 +60,6 @@ function _path() {
60
60
  };
61
61
  return data;
62
62
  }
63
- function _url() {
64
- const data = _interopRequireDefault(require("url"));
65
- _url = function () {
66
- return data;
67
- };
68
- return data;
69
- }
70
63
  function _rust() {
71
64
  const data = require("@atlaspack/rust");
72
65
  _rust = function () {
@@ -85,6 +78,7 @@ var _ConfigRequest = require("./requests/ConfigRequest");
85
78
  var _DevDepRequest = require("./requests/DevDepRequest");
86
79
  var _assetUtils = require("./assetUtils");
87
80
  var _utils2 = require("./utils");
81
+ var _WriteBundleRequest = require("./requests/WriteBundleRequest");
88
82
  function _profiler() {
89
83
  const data = require("@atlaspack/profiler");
90
84
  _profiler = function () {
@@ -92,22 +86,19 @@ function _profiler() {
92
86
  };
93
87
  return data;
94
88
  }
95
- function _featureFlags() {
96
- const data = require("@atlaspack/feature-flags");
97
- _featureFlags = function () {
98
- return data;
99
- };
100
- return data;
101
- }
102
- 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); }
103
- 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; }
104
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
89
+ var _EnvironmentManager = require("./EnvironmentManager");
90
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
91
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
105
92
  const BOUNDARY_LENGTH = _constants.HASH_REF_PREFIX.length + 32 - 1;
106
93
 
107
94
  // Packager/optimizer configs are not bundle-specific, so we only need to
108
95
  // load them once per build.
109
96
  const pluginConfigs = (0, _buildCache().createBuildCache)();
110
97
  class PackagerRunner {
98
+ // @ts-expect-error TS2564
99
+
100
+ // @ts-expect-error TS2564
101
+
111
102
  constructor({
112
103
  config,
113
104
  options,
@@ -172,6 +163,7 @@ class PackagerRunner {
172
163
  // Only load config for a plugin once per build.
173
164
  let existing = pluginConfigs.get(plugin.name);
174
165
  if (existing != null) {
166
+ // @ts-expect-error TS2345
175
167
  configs.set(plugin.name, existing);
176
168
  } else {
177
169
  if (plugin.plugin.loadConfig != null) {
@@ -224,7 +216,8 @@ class PackagerRunner {
224
216
  let {
225
217
  type,
226
218
  contents,
227
- map
219
+ map,
220
+ scopeHoistingStats
228
221
  } = await this.getBundleResult(bundle, bundleGraph, configs, bundleConfigs);
229
222
 
230
223
  // Recompute cache keys as they may have changed due to dev dependencies.
@@ -234,7 +227,14 @@ class PackagerRunner {
234
227
  map: PackagerRunner.getMapKey(cacheKey),
235
228
  info: PackagerRunner.getInfoKey(cacheKey)
236
229
  };
237
- return this.writeToCache(cacheKeys, type, contents, map);
230
+ let cachedResult = await this.writeToCache(cacheKeys, type, contents, map);
231
+ if (_utils().debugTools['scope-hoisting-stats']) {
232
+ return {
233
+ ...cachedResult,
234
+ scopeHoistingStats
235
+ };
236
+ }
237
+ return cachedResult;
238
238
  }
239
239
  async getBundleResult(bundle, bundleGraph, configs, bundleConfigs) {
240
240
  let packaged = await this.package(bundle, bundleGraph, configs, bundleConfigs);
@@ -244,11 +244,12 @@ class PackagerRunner {
244
244
  return {
245
245
  type: res.type ?? type,
246
246
  contents: res.contents,
247
- map
247
+ map,
248
+ scopeHoistingStats: packaged.scopeHoistingStats
248
249
  };
249
250
  }
250
251
  getSourceMapReference(bundle, map) {
251
- if (map && bundle.env.sourceMap && bundle.bundleBehavior !== 'inline') {
252
+ if (map && bundle.env.sourceMap && bundle.bundleBehavior !== 'inline' && bundle.bundleBehavior !== 'inlineIsolated') {
252
253
  if (bundle.env.sourceMap && bundle.env.sourceMap.inline) {
253
254
  return this.generateSourceMap((0, _Bundle.bundleToInternalBundle)(bundle), map);
254
255
  } else {
@@ -294,14 +295,14 @@ class PackagerRunner {
294
295
  category: 'package'
295
296
  }),
296
297
  getInlineBundleContents: async (bundle, bundleGraph) => {
297
- if (bundle.bundleBehavior !== 'inline') {
298
+ if (bundle.bundleBehavior !== 'inline' && bundle.bundleBehavior !== 'inlineIsolated') {
298
299
  throw new Error('Bundle is not inline and unable to retrieve contents');
299
300
  }
300
- let res = await this.getBundleResult((0, _Bundle.bundleToInternalBundle)(bundle),
301
- // $FlowFixMe
302
- (0, _BundleGraph.bundleGraphToInternalBundleGraph)(bundleGraph), configs, bundleConfigs);
301
+ let {
302
+ contents
303
+ } = await this.getBundleResult((0, _Bundle.bundleToInternalBundle)(bundle), (0, _BundleGraph.bundleGraphToInternalBundleGraph)(bundleGraph), configs, bundleConfigs);
303
304
  return {
304
- contents: res.contents
305
+ contents
305
306
  };
306
307
  }
307
308
  });
@@ -392,31 +393,18 @@ class PackagerRunner {
392
393
  return optimized;
393
394
  }
394
395
  async generateSourceMap(bundle, map) {
395
- // sourceRoot should be a relative path between outDir and rootDir for node.js targets
396
+ let sourceRoot = (0, _WriteBundleRequest.computeSourceMapRoot)(bundle, this.options);
397
+ let inlineSources = sourceRoot === undefined;
396
398
  let filePath = (0, _projectPath.joinProjectPath)(bundle.target.distDir, (0, _nullthrows().default)(bundle.name));
397
399
  let fullPath = (0, _projectPath.fromProjectPath)(this.options.projectRoot, filePath);
398
- let sourceRoot = _path().default.relative(_path().default.dirname(fullPath), this.options.projectRoot);
399
- let inlineSources = false;
400
- if (bundle.target) {
401
- if (bundle.env.sourceMap && bundle.env.sourceMap.sourceRoot !== undefined) {
402
- sourceRoot = bundle.env.sourceMap.sourceRoot;
403
- } else if (this.options.serveOptions && bundle.target.env.context === 'browser') {
404
- sourceRoot = '/__parcel_source_root';
405
- }
406
- if (bundle.env.sourceMap && bundle.env.sourceMap.inlineSources !== undefined) {
407
- inlineSources = bundle.env.sourceMap.inlineSources;
408
- } else if (bundle.target.env.context !== 'node') {
409
- // inlining should only happen in production for browser targets by default
410
- inlineSources = this.options.mode === 'production';
411
- }
412
- }
413
- let isInlineMap = bundle.env.sourceMap && bundle.env.sourceMap.inline;
400
+ let mapFilename = fullPath + '.map';
401
+ const bundleEnv = (0, _EnvironmentManager.fromEnvironmentId)(bundle.env);
402
+ let isInlineMap = bundleEnv.sourceMap && bundleEnv.sourceMap.inline;
414
403
  let stringified = await map.stringify({
415
- file: _path().default.basename(fullPath + '.map'),
416
- // $FlowFixMe
404
+ file: _path().default.basename(mapFilename),
417
405
  fs: this.options.inputFS,
418
406
  rootDir: this.options.projectRoot,
419
- sourceRoot: !inlineSources ? _url().default.format(_url().default.parse(sourceRoot + '/')) : undefined,
407
+ sourceRoot,
420
408
  inlineSources,
421
409
  format: isInlineMap ? 'inline' : 'string'
422
410
  });
@@ -441,10 +429,6 @@ class PackagerRunner {
441
429
  devDepHashes += await this.getDevDepHashes(inlineBundle);
442
430
  }
443
431
  let invalidationHash = await (0, _assetUtils.getInvalidationHash)(invalidations, this.options);
444
- if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
445
- 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'));
446
- return _path().default.join(bundle.displayName ?? bundle.name ?? bundle.id, hash);
447
- }
448
432
  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'));
449
433
  }
450
434
  async getDevDepHashes(bundle) {
@@ -468,30 +452,31 @@ class PackagerRunner {
468
452
  let contentKey = PackagerRunner.getContentKey(cacheKey);
469
453
  let mapKey = PackagerRunner.getMapKey(cacheKey);
470
454
  let isLargeBlob = await this.options.cache.hasLargeBlob(contentKey);
471
- let contentExists = (0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements') ? isLargeBlob : isLargeBlob || (await this.options.cache.has(contentKey));
455
+ let contentExists = isLargeBlob || (await this.options.cache.has(contentKey));
472
456
  if (!contentExists) {
473
457
  return null;
474
458
  }
475
- let mapExists = (0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements') ? await this.options.cache.hasLargeBlob(mapKey) : await this.options.cache.has(mapKey);
459
+ let mapExists = await this.options.cache.has(mapKey);
476
460
  return {
477
461
  contents: isLargeBlob ? this.options.cache.getStream(contentKey) : (0, _utils().blobToStream)(await this.options.cache.getBlob(contentKey)),
478
- map: mapExists ? (0, _utils().blobToStream)((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements') ? await this.options.cache.getLargeBlob(mapKey) : await this.options.cache.getBlob(mapKey)) : null
462
+ map: mapExists ? (0, _utils().blobToStream)(await this.options.cache.getBlob(mapKey)) : null
479
463
  };
480
464
  }
481
465
  async writeToCache(cacheKeys, type, contents, map) {
482
466
  let size = 0;
483
467
  let hash;
468
+ // @ts-expect-error TS2702
484
469
  let hashReferences = [];
485
- let isLargeBlob = (0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements');
470
+ let isLargeBlob = false;
486
471
 
487
472
  // TODO: don't replace hash references in binary files??
488
473
  if (contents instanceof _stream().Readable) {
489
- if (!(0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
490
- isLargeBlob = true;
491
- }
474
+ isLargeBlob = true;
492
475
  let boundaryStr = '';
493
476
  let h = new (_rust().Hash)();
494
- await this.options.cache.setStream(cacheKeys.content, (0, _utils().blobToStream)(contents).pipe(new (_utils().TapStream)(buf => {
477
+ await this.options.cache.setStream(cacheKeys.content, (0, _utils().blobToStream)(contents).pipe(
478
+ // @ts-expect-error TS2554
479
+ new (_utils().TapStream)(buf => {
495
480
  let str = boundaryStr + buf.toString();
496
481
  hashReferences = hashReferences.concat(str.match(_constants.HASH_REF_REGEX) ?? []);
497
482
  size += buf.length;
@@ -504,27 +489,15 @@ class PackagerRunner {
504
489
  size = buffer.byteLength;
505
490
  hash = (0, _rust().hashBuffer)(buffer);
506
491
  hashReferences = contents.match(_constants.HASH_REF_REGEX) ?? [];
507
- if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
508
- await this.options.cache.setLargeBlob(cacheKeys.content, buffer);
509
- } else {
510
- await this.options.cache.setBlob(cacheKeys.content, buffer);
511
- }
492
+ await this.options.cache.setBlob(cacheKeys.content, buffer);
512
493
  } else {
513
494
  size = contents.length;
514
495
  hash = (0, _rust().hashBuffer)(contents);
515
496
  hashReferences = contents.toString().match(_constants.HASH_REF_REGEX) ?? [];
516
- if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
517
- await this.options.cache.setLargeBlob(cacheKeys.content, contents);
518
- } else {
519
- await this.options.cache.setBlob(cacheKeys.content, contents);
520
- }
497
+ await this.options.cache.setBlob(cacheKeys.content, contents);
521
498
  }
522
499
  if (map != null) {
523
- if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
524
- await this.options.cache.setLargeBlob(cacheKeys.map, map);
525
- } else {
526
- await this.options.cache.setBlob(cacheKeys.map, map);
527
- }
500
+ await this.options.cache.setBlob(cacheKeys.map, map);
528
501
  }
529
502
  let info = {
530
503
  type,
@@ -538,21 +511,12 @@ class PackagerRunner {
538
511
  return info;
539
512
  }
540
513
  static getContentKey(cacheKey) {
541
- if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
542
- return `PackagerRunner/${_constants.ATLASPACK_VERSION}/${cacheKey}/content`;
543
- }
544
514
  return (0, _rust().hashString)(`${cacheKey}:content`);
545
515
  }
546
516
  static getMapKey(cacheKey) {
547
- if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
548
- return `PackagerRunner/${_constants.ATLASPACK_VERSION}/${cacheKey}/map`;
549
- }
550
517
  return (0, _rust().hashString)(`${cacheKey}:map`);
551
518
  }
552
519
  static getInfoKey(cacheKey) {
553
- if ((0, _featureFlags().getFeatureFlag)('cachePerformanceImprovements')) {
554
- return `PackagerRunner/${_constants.ATLASPACK_VERSION}/${cacheKey}/info`;
555
- }
556
520
  return (0, _rust().hashString)(`${cacheKey}:info`);
557
521
  }
558
522
  }