@atlaspack/packager-js 2.14.5-canary.29 → 2.14.5-canary.291

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 CHANGED
@@ -1,5 +1,414 @@
1
1
  # @atlaspack/packager-js
2
2
 
3
+ ## 2.23.8
4
+
5
+ ### Patch Changes
6
+
7
+ - [#882](https://github.com/atlassian-labs/atlaspack/pull/882) [`13d23e8`](https://github.com/atlassian-labs/atlaspack/commit/13d23e8a23091f92eb1b8dd7c9a452fe33cf1aac) Thanks [@mattcompiles](https://github.com/mattcompiles)! - Fix an issue where in rare cases, scope hoisting could cause 'Cannot find module'
8
+
9
+ - Updated dependencies [[`ec3abe4`](https://github.com/atlassian-labs/atlaspack/commit/ec3abe4dffc98560a850fd2f71fb566577e6c99c), [`c7fe3f7`](https://github.com/atlassian-labs/atlaspack/commit/c7fe3f76f247e9e20299e205e2df0a16c418eaf2), [`cfb4707`](https://github.com/atlassian-labs/atlaspack/commit/cfb4707087498e4fa4dcf10753fe984a248d196b), [`1468695`](https://github.com/atlassian-labs/atlaspack/commit/1468695fc0c9d06f060a6da9e9b0e154f11dff34), [`f31b041`](https://github.com/atlassian-labs/atlaspack/commit/f31b04107e9077c9946aadb99f6f91bb69703bb7), [`8180981`](https://github.com/atlassian-labs/atlaspack/commit/8180981be14c00f9570adb70d3f350bd91d6ec0a), [`ae77e74`](https://github.com/atlassian-labs/atlaspack/commit/ae77e7452a466b43b3fa5bed24d4ba26345ed765), [`f0a496f`](https://github.com/atlassian-labs/atlaspack/commit/f0a496f70fc8652e090cf1b3f6260e8cfbb796e2), [`7d7a55d`](https://github.com/atlassian-labs/atlaspack/commit/7d7a55dd6395ec391a2e4c33b3dec0d1ea477d4c), [`540f253`](https://github.com/atlassian-labs/atlaspack/commit/540f253dfdcd1a5caebbdc0b197319d439404aae)]:
10
+ - @atlaspack/feature-flags@2.26.2
11
+ - @atlaspack/rust@3.10.0
12
+ - @atlaspack/utils@3.1.2
13
+ - @atlaspack/plugin@2.14.38
14
+ - @atlaspack/types@2.15.28
15
+
16
+ ## 2.23.7
17
+
18
+ ### Patch Changes
19
+
20
+ - Updated dependencies [[`339b600`](https://github.com/atlassian-labs/atlaspack/commit/339b60095d755742cea50f811d08ccc44a4ae521), [`373ee2d`](https://github.com/atlassian-labs/atlaspack/commit/373ee2d3b5cc315df1e90e647619f915892e2b87)]:
21
+ - @atlaspack/rust@3.9.1
22
+ - @atlaspack/feature-flags@2.26.1
23
+ - @atlaspack/utils@3.1.1
24
+ - @atlaspack/plugin@2.14.37
25
+ - @atlaspack/types@2.15.27
26
+
27
+ ## 2.23.6
28
+
29
+ ### Patch Changes
30
+
31
+ - [#852](https://github.com/atlassian-labs/atlaspack/pull/852) [`5776be2`](https://github.com/atlassian-labs/atlaspack/commit/5776be21f70a3f2b9471ba33da3ba1a883f21f1a) Thanks [@marcins](https://github.com/marcins)! - Support passing a function for source property in schema validation to allow for deferred reads of files
32
+
33
+ - Updated dependencies [[`02f6aa1`](https://github.com/atlassian-labs/atlaspack/commit/02f6aa1906953fc184d2b49c905c2ef815cb878d), [`58527ee`](https://github.com/atlassian-labs/atlaspack/commit/58527eec15c1aebaaadbeb63586f3082c16beae3), [`525898e`](https://github.com/atlassian-labs/atlaspack/commit/525898e33cc229a4bc938ae853732be36d20c01a), [`cfb39a0`](https://github.com/atlassian-labs/atlaspack/commit/cfb39a0d729eb620cf2ca1611750a2bf7a080d08), [`d0c7bea`](https://github.com/atlassian-labs/atlaspack/commit/d0c7bea04458255b4c5d4299600e734b5f919fe1), [`1086c6a`](https://github.com/atlassian-labs/atlaspack/commit/1086c6a2c59271b63b3fb78e6acdb9d3a0dbf354), [`9cd9521`](https://github.com/atlassian-labs/atlaspack/commit/9cd9521978f783046e2ae4ce78f2de7aeb07d073), [`5776be2`](https://github.com/atlassian-labs/atlaspack/commit/5776be21f70a3f2b9471ba33da3ba1a883f21f1a)]:
34
+ - @atlaspack/rust@3.9.0
35
+ - @atlaspack/feature-flags@2.26.0
36
+ - @atlaspack/utils@3.1.0
37
+ - @atlaspack/plugin@2.14.36
38
+ - @atlaspack/types@2.15.26
39
+
40
+ ## 2.23.5
41
+
42
+ ### Patch Changes
43
+
44
+ - [#810](https://github.com/atlassian-labs/atlaspack/pull/810) [`c372f3f`](https://github.com/atlassian-labs/atlaspack/commit/c372f3fd6fce8200d5cf47f41bc7895c6cbb5558) Thanks [@benjervis](https://github.com/benjervis)! - Add the `scope-hosting-stats` debug tool to report on the percentage of assets that were able to be scope hoisted during the build.
45
+
46
+ - Updated dependencies [[`79a7e22`](https://github.com/atlassian-labs/atlaspack/commit/79a7e22ef119891a2f4180a9d3cc66b38dd52092), [`3da8e69`](https://github.com/atlassian-labs/atlaspack/commit/3da8e690605472d81c531366b65fa9844f8ca337), [`c372f3f`](https://github.com/atlassian-labs/atlaspack/commit/c372f3fd6fce8200d5cf47f41bc7895c6cbb5558), [`17dfea9`](https://github.com/atlassian-labs/atlaspack/commit/17dfea9e9f3169807808520df9c09ebf70dc8b10), [`f1070ec`](https://github.com/atlassian-labs/atlaspack/commit/f1070ec48e99b4ec111a03179c5ab5b74163fab1), [`27fd73f`](https://github.com/atlassian-labs/atlaspack/commit/27fd73fa07d358653f1be6f2d15d72dc5d8fc2fd), [`3091fa3`](https://github.com/atlassian-labs/atlaspack/commit/3091fa36425ecffe3938e55247a035b08cda37a2)]:
47
+ - @atlaspack/feature-flags@2.25.5
48
+ - @atlaspack/rust@3.8.3
49
+ - @atlaspack/utils@3.0.3
50
+ - @atlaspack/plugin@2.14.35
51
+ - @atlaspack/types@2.15.25
52
+
53
+ ## 2.23.4
54
+
55
+ ### Patch Changes
56
+
57
+ - [#814](https://github.com/atlassian-labs/atlaspack/pull/814) [`4fe7211`](https://github.com/atlassian-labs/atlaspack/commit/4fe7211301085c3e118d69a192e190e5ac343b42) Thanks [@JakeLane](https://github.com/JakeLane)! - Experimental config option to manually specify static export bindings as a performance optimisation. Requires the "exportsRebindingOptimisation" flag to be enabled.
58
+
59
+ - Updated dependencies [[`662d3c6`](https://github.com/atlassian-labs/atlaspack/commit/662d3c627888b16bf27df15cfac5a9094509e93d)]:
60
+ - @atlaspack/feature-flags@2.25.4
61
+ - @atlaspack/types@2.15.24
62
+ - @atlaspack/utils@3.0.2
63
+ - @atlaspack/plugin@2.14.34
64
+
65
+ ## 2.23.3
66
+
67
+ ### Patch Changes
68
+
69
+ - Updated dependencies [[`236e546`](https://github.com/atlassian-labs/atlaspack/commit/236e5465863dca6044a7191e05260a5b924c342e), [`f07351a`](https://github.com/atlassian-labs/atlaspack/commit/f07351a2398b6a8e5155a2daad77e69b7dcb2b4b)]:
70
+ - @atlaspack/utils@3.0.1
71
+ - @atlaspack/feature-flags@2.25.3
72
+ - @atlaspack/types@2.15.23
73
+ - @atlaspack/plugin@2.14.33
74
+
75
+ ## 2.23.2
76
+
77
+ ### Patch Changes
78
+
79
+ - [#796](https://github.com/atlassian-labs/atlaspack/pull/796) [`0e967b0`](https://github.com/atlassian-labs/atlaspack/commit/0e967b0cf0fbd885588b81476ec1f25a507ffa94) Thanks [@benjervis](https://github.com/benjervis)! - Minor refactor of the internals of the scope hoisting packager. Some of the internal objects are now keyed on Assets rather than string asset IDs.
80
+
81
+ - [#801](https://github.com/atlassian-labs/atlaspack/pull/801) [`b104fd8`](https://github.com/atlassian-labs/atlaspack/commit/b104fd846ea17c583e68ddc6b309c5e1edee6938) Thanks [@mattcompiles](https://github.com/mattcompiles)! - Fix incorrect output with skipped assets with scope hoisting improvements
82
+
83
+ - Updated dependencies [[`0207171`](https://github.com/atlassian-labs/atlaspack/commit/0207171e59e985c51e105aec2e0a99de174374bd), [`10ee3fa`](https://github.com/atlassian-labs/atlaspack/commit/10ee3fa5b75a92acde8973673d9b3c5b6f3958e5), [`bbe4e28`](https://github.com/atlassian-labs/atlaspack/commit/bbe4e28c89e5e9284bd730075d4d6f2a3cb37b21), [`1180103`](https://github.com/atlassian-labs/atlaspack/commit/118010351ed444f8178988afb3f77807154dd933), [`2bc93b1`](https://github.com/atlassian-labs/atlaspack/commit/2bc93b17cea07fd7cbb68acec84d8471345a22b4)]:
84
+ - @atlaspack/feature-flags@2.25.2
85
+ - @atlaspack/rust@3.8.2
86
+ - @atlaspack/utils@3.0.0
87
+ - @atlaspack/plugin@2.14.32
88
+ - @atlaspack/types@2.15.22
89
+
90
+ ## 2.23.1
91
+
92
+ ### Patch Changes
93
+
94
+ - [#785](https://github.com/atlassian-labs/atlaspack/pull/785) [`0e7dd5e`](https://github.com/atlassian-labs/atlaspack/commit/0e7dd5ec6fbe05aa9e0bb5775a9d0975f206a922) Thanks [@matt-koko](https://github.com/matt-koko)! - We need to re-publish every package in Atlaspack with the corrected types field.
95
+
96
+ - Updated dependencies [[`0e7dd5e`](https://github.com/atlassian-labs/atlaspack/commit/0e7dd5ec6fbe05aa9e0bb5775a9d0975f206a922), [`686a398`](https://github.com/atlassian-labs/atlaspack/commit/686a398faa1f9e19cbf9274add2c46e246bafba8)]:
97
+ - @atlaspack/diagnostic@2.14.4
98
+ - @atlaspack/feature-flags@2.25.1
99
+ - @atlaspack/plugin@2.14.31
100
+ - @atlaspack/rust@3.8.1
101
+ - @atlaspack/types@2.15.21
102
+ - @atlaspack/utils@2.19.3
103
+
104
+ ## 2.23.0
105
+
106
+ ### Minor Changes
107
+
108
+ - [#774](https://github.com/atlassian-labs/atlaspack/pull/774) [`602f8ed`](https://github.com/atlassian-labs/atlaspack/commit/602f8ed9d8381301df8b2cc82c1d5cf6f2f94fec) Thanks [@JakeLane](https://github.com/JakeLane)! - Add feature flag exportsRebindingOptimisation which detects cases where we don't need the rebinding helper for esm exports
109
+
110
+ ### Patch Changes
111
+
112
+ - [#780](https://github.com/atlassian-labs/atlaspack/pull/780) [`eedcbc4`](https://github.com/atlassian-labs/atlaspack/commit/eedcbc408fc1e86a2a8e25f1a41c57146d8529e1) Thanks [@JakeLane](https://github.com/JakeLane)! - Fix isStaticBindingSafe in v3
113
+
114
+ - Updated dependencies [[`7a52bab`](https://github.com/atlassian-labs/atlaspack/commit/7a52bab6281e8edbfa66af248eb6f872c6b4b7bd), [`eedcbc4`](https://github.com/atlassian-labs/atlaspack/commit/eedcbc408fc1e86a2a8e25f1a41c57146d8529e1), [`5a0363f`](https://github.com/atlassian-labs/atlaspack/commit/5a0363f1086e81068959b87e92064bed5a11a9b4), [`038e87a`](https://github.com/atlassian-labs/atlaspack/commit/038e87a7858d39556d59d3a2d17db534d45f62c6), [`f6532d7`](https://github.com/atlassian-labs/atlaspack/commit/f6532d7a4f7f007bd4e5e36af04dd466f0b9f572), [`0684997`](https://github.com/atlassian-labs/atlaspack/commit/0684997c127a6204af1376b36e556fddd1ba5557), [`602f8ed`](https://github.com/atlassian-labs/atlaspack/commit/602f8ed9d8381301df8b2cc82c1d5cf6f2f94fec)]:
115
+ - @atlaspack/feature-flags@2.25.0
116
+ - @atlaspack/rust@3.8.0
117
+ - @atlaspack/utils@2.19.2
118
+ - @atlaspack/plugin@2.14.30
119
+ - @atlaspack/types@2.15.20
120
+
121
+ ## 2.22.2
122
+
123
+ ### Patch Changes
124
+
125
+ - [#768](https://github.com/atlassian-labs/atlaspack/pull/768) [`58b9fb0`](https://github.com/atlassian-labs/atlaspack/commit/58b9fb037680a36a0b4af7890f2a03532095b88f) Thanks [@benjervis](https://github.com/benjervis)! - Fixes a small error in the scope hoisting V2 fixes that caused assets to be wrapped unnecessarily
126
+
127
+ ## 2.22.1
128
+
129
+ ### Patch Changes
130
+
131
+ - [#763](https://github.com/atlassian-labs/atlaspack/pull/763) [`830261d`](https://github.com/atlassian-labs/atlaspack/commit/830261dcf4a40293090b61cab52fd75d5683c73f) Thanks [@benjervis](https://github.com/benjervis)! - Fixes scope hoisting by iterating from the main entry asset of a bundle when packaging. Behind the feature flag `applyScopeHoistingImprovementsV2`.
132
+
133
+ - Updated dependencies [[`830261d`](https://github.com/atlassian-labs/atlaspack/commit/830261dcf4a40293090b61cab52fd75d5683c73f), [`53dd47b`](https://github.com/atlassian-labs/atlaspack/commit/53dd47bd6d23cd47f87297347f03a609ab38a03d)]:
134
+ - @atlaspack/feature-flags@2.24.1
135
+ - @atlaspack/rust@3.7.0
136
+ - @atlaspack/utils@2.19.1
137
+ - @atlaspack/plugin@2.14.29
138
+ - @atlaspack/types@2.15.19
139
+
140
+ ## 2.22.0
141
+
142
+ ### Minor Changes
143
+
144
+ - [#762](https://github.com/atlassian-labs/atlaspack/pull/762) [`a5081c3`](https://github.com/atlassian-labs/atlaspack/commit/a5081c3f9207d28716ee4edd3841de1830ea4b80) Thanks [@JakeLane](https://github.com/JakeLane)! - Add feature flag 'useNewPrelude' which enables a micro-optimisation removing a 'for in' call and replacing with undefined check
145
+
146
+ ### Patch Changes
147
+
148
+ - Updated dependencies [[`f0349a6`](https://github.com/atlassian-labs/atlaspack/commit/f0349a6b9b04755088f121095ca6301a2ada3767), [`a5081c3`](https://github.com/atlassian-labs/atlaspack/commit/a5081c3f9207d28716ee4edd3841de1830ea4b80), [`f930003`](https://github.com/atlassian-labs/atlaspack/commit/f930003364fdc31e5487520ebe256f1a9389f579), [`f930003`](https://github.com/atlassian-labs/atlaspack/commit/f930003364fdc31e5487520ebe256f1a9389f579), [`8843980`](https://github.com/atlassian-labs/atlaspack/commit/88439807be20025fd3433380204ff1205079729e)]:
149
+ - @atlaspack/feature-flags@2.24.0
150
+ - @atlaspack/utils@2.19.0
151
+ - @atlaspack/plugin@2.14.28
152
+ - @atlaspack/types@2.15.18
153
+
154
+ ## 2.21.3
155
+
156
+ ### Patch Changes
157
+
158
+ - Updated dependencies [[`3cfb7cf`](https://github.com/atlassian-labs/atlaspack/commit/3cfb7cfd90b78a5c48ce717e779ff789769825a3)]:
159
+ - @atlaspack/feature-flags@2.23.2
160
+ - @atlaspack/rust@3.6.2
161
+ - @atlaspack/utils@2.18.4
162
+ - @atlaspack/plugin@2.14.27
163
+ - @atlaspack/types@2.15.17
164
+
165
+ ## 2.21.2
166
+
167
+ ### Patch Changes
168
+
169
+ - [#742](https://github.com/atlassian-labs/atlaspack/pull/742) [`ee040bb`](https://github.com/atlassian-labs/atlaspack/commit/ee040bb6428f29b57d892ddd8107e29077d08ffd) Thanks [@yamadapc](https://github.com/yamadapc)! - Internal changes and bug fixes to environmentDeduplication flag
170
+
171
+ - [#755](https://github.com/atlassian-labs/atlaspack/pull/755) [`b6e72b6`](https://github.com/atlassian-labs/atlaspack/commit/b6e72b6dd2b517cbb0e700fa69e63332d3eacb1e) Thanks [@benjervis](https://github.com/benjervis)! - Allow runtime assets to be marked as requiring execution on load
172
+
173
+ - Updated dependencies [[`ee040bb`](https://github.com/atlassian-labs/atlaspack/commit/ee040bb6428f29b57d892ddd8107e29077d08ffd), [`889c65c`](https://github.com/atlassian-labs/atlaspack/commit/889c65cd25b811045e26a117e7404f694dde77a2)]:
174
+ - @atlaspack/feature-flags@2.23.1
175
+ - @atlaspack/diagnostic@2.14.3
176
+ - @atlaspack/plugin@2.14.26
177
+ - @atlaspack/types@2.15.16
178
+ - @atlaspack/utils@2.18.3
179
+ - @atlaspack/rust@3.6.1
180
+
181
+ ## 2.21.1
182
+
183
+ ### Patch Changes
184
+
185
+ - Updated dependencies [[`f6b3f22`](https://github.com/atlassian-labs/atlaspack/commit/f6b3f2276c7e417580b49c4879563aab51f156b1)]:
186
+ - @atlaspack/feature-flags@2.23.0
187
+ - @atlaspack/utils@2.18.2
188
+ - @atlaspack/plugin@2.14.25
189
+ - @atlaspack/types@2.15.15
190
+
191
+ ## 2.21.0
192
+
193
+ ### Minor Changes
194
+
195
+ - [#732](https://github.com/atlassian-labs/atlaspack/pull/732) [`7f5841c`](https://github.com/atlassian-labs/atlaspack/commit/7f5841c39df049f9546cccbeea2a7337e0337b45) Thanks [@vykimnguyen](https://github.com/vykimnguyen)! - add tesseract context
196
+
197
+ ### Patch Changes
198
+
199
+ - [#744](https://github.com/atlassian-labs/atlaspack/pull/744) [`3718bff`](https://github.com/atlassian-labs/atlaspack/commit/3718bff20484138e405e321472336ac058432e10) Thanks [@benjervis](https://github.com/benjervis)! - Fix the scope hoisting improvements feature by making all entry assets of a bundle
200
+ wrapped, which means there is no top level scope.
201
+ - Updated dependencies [[`ad26146`](https://github.com/atlassian-labs/atlaspack/commit/ad26146f13b4c1cc65d4a0f9c67060b90ef14ff3), [`f1b48e7`](https://github.com/atlassian-labs/atlaspack/commit/f1b48e7a04e005cef0f36a3e692087a9ecdb6f7a), [`7f5841c`](https://github.com/atlassian-labs/atlaspack/commit/7f5841c39df049f9546cccbeea2a7337e0337b45), [`73dd7ba`](https://github.com/atlassian-labs/atlaspack/commit/73dd7baab69456ef2f6e4a0cc7dbb04f407eb148)]:
202
+ - @atlaspack/rust@3.6.0
203
+ - @atlaspack/feature-flags@2.22.0
204
+ - @atlaspack/utils@2.18.1
205
+ - @atlaspack/plugin@2.14.24
206
+ - @atlaspack/types@2.15.14
207
+
208
+ ## 2.20.0
209
+
210
+ ### Minor Changes
211
+
212
+ - [#731](https://github.com/atlassian-labs/atlaspack/pull/731) [`23d561e`](https://github.com/atlassian-labs/atlaspack/commit/23d561e51e68b0c38fd1ff4e4fb173e5e7b01cf2) Thanks [@marcins](https://github.com/marcins)! - Implement "inline isolated" scripts
213
+
214
+ ### Patch Changes
215
+
216
+ - Updated dependencies [[`23d561e`](https://github.com/atlassian-labs/atlaspack/commit/23d561e51e68b0c38fd1ff4e4fb173e5e7b01cf2)]:
217
+ - @atlaspack/feature-flags@2.21.0
218
+ - @atlaspack/utils@2.18.0
219
+ - @atlaspack/rust@3.5.0
220
+ - @atlaspack/types@2.15.13
221
+ - @atlaspack/plugin@2.14.23
222
+
223
+ ## 2.19.1
224
+
225
+ ### Patch Changes
226
+
227
+ - [#720](https://github.com/atlassian-labs/atlaspack/pull/720) [`d2fd849`](https://github.com/atlassian-labs/atlaspack/commit/d2fd849770fe6305e9c694bd97b1bd905abd9d94) Thanks [@alshdavid](https://github.com/alshdavid)! - Migrate to TypeScript
228
+
229
+ - Updated dependencies [[`d2fd849`](https://github.com/atlassian-labs/atlaspack/commit/d2fd849770fe6305e9c694bd97b1bd905abd9d94), [`12bee0e`](https://github.com/atlassian-labs/atlaspack/commit/12bee0e23f0464d7f6bd3e24fbe0d19c126d587d)]:
230
+ - @atlaspack/feature-flags@2.20.1
231
+ - @atlaspack/diagnostic@2.14.2
232
+ - @atlaspack/plugin@2.14.22
233
+ - @atlaspack/types@2.15.12
234
+ - @atlaspack/utils@2.17.4
235
+ - @atlaspack/rust@3.4.2
236
+
237
+ ## 2.19.0
238
+
239
+ ### Minor Changes
240
+
241
+ - [#721](https://github.com/atlassian-labs/atlaspack/pull/721) [`069de47`](https://github.com/atlassian-labs/atlaspack/commit/069de478e64fb5889f6f2ce023eb510782767fbd) Thanks [@benjervis](https://github.com/benjervis)! - Add support for bundle merging based on `webpackChunkName` comments.
242
+
243
+ Adding a `webpackChunkName` comment to an import will allow the bundler to merge multiple imports into a single bundle.
244
+
245
+ e.g.:
246
+
247
+ ```ts
248
+ import(/* webpackChunkName: "my-chunk" */ './my-module');
249
+ import(/* webpackChunkName: "my-chunk" */ './another-module');
250
+ ```
251
+
252
+ This can be enabled with the feature flag `supportWebpackChunkName`.
253
+
254
+ ### Patch Changes
255
+
256
+ - Updated dependencies [[`069de47`](https://github.com/atlassian-labs/atlaspack/commit/069de478e64fb5889f6f2ce023eb510782767fbd)]:
257
+ - @atlaspack/feature-flags@2.20.0
258
+ - @atlaspack/types@2.15.11
259
+ - @atlaspack/utils@2.17.3
260
+ - @atlaspack/plugin@2.14.21
261
+
262
+ ## 2.18.2
263
+
264
+ ### Patch Changes
265
+
266
+ - [#702](https://github.com/atlassian-labs/atlaspack/pull/702) [`daaa768`](https://github.com/atlassian-labs/atlaspack/commit/daaa7688786772d7e3713b71c5bba6b89ec704aa) Thanks [@alshdavid](https://github.com/alshdavid)! - Fixes to Flow types
267
+
268
+ - Updated dependencies [[`daaa768`](https://github.com/atlassian-labs/atlaspack/commit/daaa7688786772d7e3713b71c5bba6b89ec704aa), [`1c7865a`](https://github.com/atlassian-labs/atlaspack/commit/1c7865a64451116d94015e248302435839d347c0), [`a0b959f`](https://github.com/atlassian-labs/atlaspack/commit/a0b959fbf61fc3f820ff03c7e8988945fe40a91a)]:
269
+ - @atlaspack/plugin@2.14.20
270
+ - @atlaspack/feature-flags@2.19.2
271
+ - @atlaspack/utils@2.17.2
272
+ - @atlaspack/types@2.15.10
273
+
274
+ ## 2.18.1
275
+
276
+ ### Patch Changes
277
+
278
+ - Updated dependencies [[`13aef17`](https://github.com/atlassian-labs/atlaspack/commit/13aef177eea289a6e40d2113b5ec1ac9be18a33d)]:
279
+ - @atlaspack/feature-flags@2.19.1
280
+ - @atlaspack/utils@2.17.1
281
+ - @atlaspack/types@2.15.9
282
+ - @atlaspack/plugin@2.14.19
283
+
284
+ ## 2.18.0
285
+
286
+ ### Minor Changes
287
+
288
+ - [#640](https://github.com/atlassian-labs/atlaspack/pull/640) [`dbb4072`](https://github.com/atlassian-labs/atlaspack/commit/dbb40721ebeb45990a14ba04e6b44e7f836fb32d) Thanks [@JakeLane](https://github.com/JakeLane)! - Clean up conditional bundling feature flags
289
+
290
+ ### Patch Changes
291
+
292
+ - Updated dependencies [[`dbb4072`](https://github.com/atlassian-labs/atlaspack/commit/dbb40721ebeb45990a14ba04e6b44e7f836fb32d), [`becf977`](https://github.com/atlassian-labs/atlaspack/commit/becf977f625d5ee46dae3d4c679f173bf5f40cc0), [`becf977`](https://github.com/atlassian-labs/atlaspack/commit/becf977f625d5ee46dae3d4c679f173bf5f40cc0), [`c4415a4`](https://github.com/atlassian-labs/atlaspack/commit/c4415a455543d984ca28452c2cb87a794d22497c), [`f0f7c71`](https://github.com/atlassian-labs/atlaspack/commit/f0f7c7168a1d3d18c6f30d2daed611275692b7c5), [`de23e0c`](https://github.com/atlassian-labs/atlaspack/commit/de23e0ce49d5504fe3947ac26640a3d951087da3), [`18a57cf`](https://github.com/atlassian-labs/atlaspack/commit/18a57cf8a4789b2de5ad8e2676f317a26cc91417), [`a5ed1b4`](https://github.com/atlassian-labs/atlaspack/commit/a5ed1b414498560f393ff491af4da25b6e8dde56)]:
293
+ - @atlaspack/feature-flags@2.19.0
294
+ - @atlaspack/utils@2.17.0
295
+ - @atlaspack/rust@3.4.1
296
+ - @atlaspack/types@2.15.8
297
+ - @atlaspack/plugin@2.14.18
298
+
299
+ ## 2.17.1
300
+
301
+ ### Patch Changes
302
+
303
+ - Updated dependencies [[`c75bf55`](https://github.com/atlassian-labs/atlaspack/commit/c75bf553fff4decc285b5fd499a275853b18f8f2)]:
304
+ - @atlaspack/rust@3.4.0
305
+ - @atlaspack/utils@2.16.1
306
+ - @atlaspack/types@2.15.7
307
+ - @atlaspack/plugin@2.14.17
308
+
309
+ ## 2.17.0
310
+
311
+ ### Minor Changes
312
+
313
+ - [#659](https://github.com/atlassian-labs/atlaspack/pull/659) [`30ee2cf`](https://github.com/atlassian-labs/atlaspack/commit/30ee2cfcd34cf2646ded0eda13fdb80a2a5de529) Thanks [@benjervis](https://github.com/benjervis)! - Add the `asset-file-names-in-output` debug tool, which adds a comment to each asset inserted into a bundle that help identify it
314
+
315
+ ### Patch Changes
316
+
317
+ - Updated dependencies [[`e8a60ff`](https://github.com/atlassian-labs/atlaspack/commit/e8a60ffbea41caef265786bbf73349771760081c), [`30ee2cf`](https://github.com/atlassian-labs/atlaspack/commit/30ee2cfcd34cf2646ded0eda13fdb80a2a5de529)]:
318
+ - @atlaspack/feature-flags@2.18.4
319
+ - @atlaspack/utils@2.16.0
320
+ - @atlaspack/types@2.15.6
321
+ - @atlaspack/plugin@2.14.16
322
+
323
+ ## 2.16.2
324
+
325
+ ### Patch Changes
326
+
327
+ - [#654](https://github.com/atlassian-labs/atlaspack/pull/654) [`4d7abde`](https://github.com/atlassian-labs/atlaspack/commit/4d7abde0a6faa148bcf330b08d820f171f853b76) Thanks [@marcins](https://github.com/marcins)! - Fixes constant inlining to work correctly with scope hoisting optimisations
328
+
329
+ - Updated dependencies [[`5ded263`](https://github.com/atlassian-labs/atlaspack/commit/5ded263c7f11b866e8885b81c73e20dd060b25be)]:
330
+ - @atlaspack/feature-flags@2.18.3
331
+ - @atlaspack/utils@2.15.3
332
+ - @atlaspack/types@2.15.5
333
+ - @atlaspack/plugin@2.14.15
334
+
335
+ ## 2.16.1
336
+
337
+ ### Patch Changes
338
+
339
+ - Updated dependencies [[`644b157`](https://github.com/atlassian-labs/atlaspack/commit/644b157dee72a871acc2d0facf0b87b8eea51956)]:
340
+ - @atlaspack/feature-flags@2.18.2
341
+ - @atlaspack/utils@2.15.2
342
+ - @atlaspack/types@2.15.4
343
+ - @atlaspack/plugin@2.14.14
344
+
345
+ ## 2.16.0
346
+
347
+ ### Minor Changes
348
+
349
+ - [#644](https://github.com/atlassian-labs/atlaspack/pull/644) [`fc59be7`](https://github.com/atlassian-labs/atlaspack/commit/fc59be71f43dd87d3e6fb7f3f50c424d2b664858) Thanks [@marcins](https://github.com/marcins)! - Removes the unused unstable `forceSkipWrapAssets` feature
350
+
351
+ ### Patch Changes
352
+
353
+ - [#633](https://github.com/atlassian-labs/atlaspack/pull/633) [`26aa9c5`](https://github.com/atlassian-labs/atlaspack/commit/26aa9c599d2be45ce1438a74c5fa22f39b9b554b) Thanks [@sbhuiyan-atlassian](https://github.com/sbhuiyan-atlassian)! - Ported various HMR changes from Parcel
354
+
355
+ - Updated dependencies [[`26aa9c5`](https://github.com/atlassian-labs/atlaspack/commit/26aa9c599d2be45ce1438a74c5fa22f39b9b554b), [`0501255`](https://github.com/atlassian-labs/atlaspack/commit/05012550da35b05ce7d356a8cc29311e7f9afdca)]:
356
+ - @atlaspack/feature-flags@2.18.1
357
+ - @atlaspack/types@2.15.3
358
+ - @atlaspack/utils@2.15.1
359
+ - @atlaspack/plugin@2.14.13
360
+
361
+ ## 2.15.0
362
+
363
+ ### Minor Changes
364
+
365
+ - [#627](https://github.com/atlassian-labs/atlaspack/pull/627) [`85c52d3`](https://github.com/atlassian-labs/atlaspack/commit/85c52d3f7717b3c84a118d18ab98cfbfd71dcbd2) Thanks [@benjervis](https://github.com/benjervis)! - Expands the situations where scope hoisting may be applied to include assets with no dependencies, regardless of whether if they have a wrapped ancestor.
366
+
367
+ Can be enabled with the `applyScopeHoistingImprovement` feature flag.
368
+
369
+ ### Patch Changes
370
+
371
+ - [#632](https://github.com/atlassian-labs/atlaspack/pull/632) [`10fbcfb`](https://github.com/atlassian-labs/atlaspack/commit/10fbcfbfa49c7a83da5d7c40983e36e87f524a75) Thanks [@marcins](https://github.com/marcins)! - Added a new feature flag `inlineConstOptimisationFix` which when enabled changes the behaviour for output of constant modules. This fixes two issues with constant modules:
372
+ - Previously constant modules, if they needed a namespace anywhere, would have a namespace everywhere, with this change they only have a namespace in the bundles where needed.
373
+ - Previously in the case of wrapped assets, a constant module dependnecy of that wrapped asset would be rendered after the module - which meant the minifier would not be able to inline the constants safely. With this flag all constant modules are rendered at the top of the bundle.
374
+
375
+ - Updated dependencies [[`10fbcfb`](https://github.com/atlassian-labs/atlaspack/commit/10fbcfbfa49c7a83da5d7c40983e36e87f524a75), [`85c52d3`](https://github.com/atlassian-labs/atlaspack/commit/85c52d3f7717b3c84a118d18ab98cfbfd71dcbd2), [`e39c6cf`](https://github.com/atlassian-labs/atlaspack/commit/e39c6cf05f7e95ce5420dbcea66f401b1cbd397c)]:
376
+ - @atlaspack/feature-flags@2.18.0
377
+ - @atlaspack/utils@2.15.0
378
+ - @atlaspack/types@2.15.2
379
+ - @atlaspack/plugin@2.14.12
380
+
381
+ ## 2.14.11
382
+
383
+ ### Patch Changes
384
+
385
+ - Updated dependencies [[`73ea3c4`](https://github.com/atlassian-labs/atlaspack/commit/73ea3c4d85d4401fdd15abcbf988237e890e7ad3), [`b1b3693`](https://github.com/atlassian-labs/atlaspack/commit/b1b369317c66f8a431c170df2ebba4fa5b2e38ef)]:
386
+ - @atlaspack/feature-flags@2.17.0
387
+ - @atlaspack/utils@2.14.11
388
+ - @atlaspack/types@2.15.1
389
+ - @atlaspack/plugin@2.14.11
390
+
391
+ ## 2.14.10
392
+
393
+ ### Patch Changes
394
+
395
+ - Updated dependencies [[`51aba5f`](https://github.com/atlassian-labs/atlaspack/commit/51aba5fc0e49235ee06bbc3c376f48c3e7da5c4b), [`1e32d4e`](https://github.com/atlassian-labs/atlaspack/commit/1e32d4eae6b3af3968e8a0ef97d35b4347fd4196), [`35fdd4b`](https://github.com/atlassian-labs/atlaspack/commit/35fdd4b52da0af20f74667f7b8adfb2f90279b7c), [`6dd4ccb`](https://github.com/atlassian-labs/atlaspack/commit/6dd4ccb753541de32322d881f973d571dd57e4ca)]:
396
+ - @atlaspack/types@2.15.0
397
+ - @atlaspack/rust@3.3.5
398
+ - @atlaspack/plugin@2.14.10
399
+ - @atlaspack/utils@2.14.10
400
+
401
+ ## 2.14.9
402
+
403
+ ### Patch Changes
404
+
405
+ - Updated dependencies [[`124b7ff`](https://github.com/atlassian-labs/atlaspack/commit/124b7fff44f71aac9fbad289a9a9509b3dfc9aaa), [`e052521`](https://github.com/atlassian-labs/atlaspack/commit/e0525210850ed1606146eb86991049cf567c5dec), [`15c6d70`](https://github.com/atlassian-labs/atlaspack/commit/15c6d7000bd89da876bc590aa75b17a619a41896), [`e4d966c`](https://github.com/atlassian-labs/atlaspack/commit/e4d966c3c9c4292c5013372ae65b10d19d4bacc6), [`209692f`](https://github.com/atlassian-labs/atlaspack/commit/209692ffb11eae103a0d65c5e1118a5aa1625818), [`42a775d`](https://github.com/atlassian-labs/atlaspack/commit/42a775de8eec638ad188f3271964170d8c04d84b), [`29c2f10`](https://github.com/atlassian-labs/atlaspack/commit/29c2f106de9679adfb5afa04e1910471dc65a427), [`f4da1e1`](https://github.com/atlassian-labs/atlaspack/commit/f4da1e120e73eeb5e8b8927f05e88f04d6148c7b), [`1ef91fc`](https://github.com/atlassian-labs/atlaspack/commit/1ef91fcc863fdd2831511937083dbbc1263b3d9d)]:
406
+ - @atlaspack/rust@3.3.4
407
+ - @atlaspack/feature-flags@2.16.0
408
+ - @atlaspack/utils@2.14.9
409
+ - @atlaspack/types@2.14.9
410
+ - @atlaspack/plugin@2.14.9
411
+
3
412
  ## 2.14.8
4
413
 
5
414
  ### Patch Changes
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CJSOutputFormat = void 0;
4
+ class CJSOutputFormat {
5
+ constructor(packager) {
6
+ this.packager = packager;
7
+ }
8
+ buildBundlePrelude() {
9
+ let res = '';
10
+ let lines = 0;
11
+ for (let [source, specifiers] of this.packager.externals) {
12
+ // CJS only supports the namespace symbol. This ensures that all accesses
13
+ // are live and the `this` binding is correct.
14
+ let namespace = specifiers.get('*');
15
+ if (namespace) {
16
+ res += `var ${namespace} = require(${JSON.stringify(source)});\n`;
17
+ lines++;
18
+ }
19
+ else {
20
+ res += `require(${JSON.stringify(source)});\n`;
21
+ lines++;
22
+ }
23
+ }
24
+ if (res.length > 0) {
25
+ res += '\n';
26
+ lines++;
27
+ }
28
+ return [res, lines];
29
+ }
30
+ buildBundlePostlude() {
31
+ return ['', 0];
32
+ }
33
+ }
34
+ exports.CJSOutputFormat = CJSOutputFormat;
@@ -0,0 +1,201 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DevPackager = void 0;
7
+ const utils_1 = require("@atlaspack/utils");
8
+ const source_map_1 = __importDefault(require("@atlaspack/source-map"));
9
+ const feature_flags_1 = require("@atlaspack/feature-flags");
10
+ const assert_1 = __importDefault(require("assert"));
11
+ const path_1 = __importDefault(require("path"));
12
+ const fs_1 = __importDefault(require("fs"));
13
+ const utils_2 = require("./utils");
14
+ const PRELUDE = fs_1.default
15
+ .readFileSync(path_1.default.join(__dirname, 'dev-prelude.js'), 'utf8')
16
+ .trim()
17
+ .replace(/;$/, '');
18
+ class DevPackager {
19
+ constructor(options, bundleGraph, bundle, parcelRequireName) {
20
+ this.options = options;
21
+ this.bundleGraph = bundleGraph;
22
+ this.bundle = bundle;
23
+ this.parcelRequireName = parcelRequireName;
24
+ }
25
+ async package() {
26
+ // Load assets
27
+ let queue = new utils_1.PromiseQueue({ maxConcurrent: 32 });
28
+ this.bundle.traverseAssets((asset) => {
29
+ queue.add(async () => {
30
+ let [code, mapBuffer] = await Promise.all([
31
+ asset.getCode(),
32
+ this.bundle.env.sourceMap && asset.getMapBuffer(),
33
+ ]);
34
+ return { code, mapBuffer };
35
+ });
36
+ });
37
+ let results = await queue.run();
38
+ let assets = '';
39
+ let i = 0;
40
+ let first = true;
41
+ let map = new source_map_1.default(this.options.projectRoot);
42
+ let prefix = this.getPrefix();
43
+ let lineOffset = (0, utils_1.countLines)(prefix);
44
+ let script = null;
45
+ this.bundle.traverse((node) => {
46
+ let wrapped = first ? '' : ',';
47
+ if (node.type === 'dependency') {
48
+ let resolved = this.bundleGraph.getResolvedAsset(node.value, this.bundle);
49
+ if (resolved && resolved.type !== 'js') {
50
+ // if this is a reference to another javascript asset, we should not include
51
+ // its output, as its contents should already be loaded.
52
+ (0, assert_1.default)(!this.bundle.hasAsset(resolved));
53
+ wrapped +=
54
+ JSON.stringify(this.bundleGraph.getAssetPublicId(resolved)) +
55
+ ':[function() {},{}]';
56
+ }
57
+ else {
58
+ return;
59
+ }
60
+ }
61
+ if (node.type === 'asset') {
62
+ let asset = node.value;
63
+ (0, assert_1.default)(asset.type === 'js', 'all assets in a js bundle must be js assets');
64
+ // If this is the main entry of a script rather than a module, we need to hoist it
65
+ // outside the bundle wrapper function so that its variables are exposed as globals.
66
+ if (this.bundle.env.sourceType === 'script' &&
67
+ asset === this.bundle.getMainEntry()) {
68
+ // @ts-expect-error TS2322
69
+ script = results[i++];
70
+ return;
71
+ }
72
+ let deps = {};
73
+ let dependencies = this.bundleGraph.getDependencies(asset);
74
+ for (let dep of dependencies) {
75
+ let resolved = this.bundleGraph.getResolvedAsset(dep, this.bundle);
76
+ let specifier = (0, utils_2.getSpecifier)(dep);
77
+ if (this.bundleGraph.isDependencySkipped(dep)) {
78
+ deps[specifier] = false;
79
+ }
80
+ else if (resolved) {
81
+ deps[specifier] = this.bundleGraph.getAssetPublicId(resolved);
82
+ }
83
+ else {
84
+ // An external module - map placeholder to original specifier.
85
+ deps[specifier] = dep.specifier;
86
+ }
87
+ }
88
+ if ((0, feature_flags_1.getFeatureFlag)('hmrImprovements')) {
89
+ // Add dependencies for parcelRequire calls added by runtimes
90
+ // so that the HMR runtime can correctly traverse parents.
91
+ let hmrDeps = asset.meta.hmrDeps;
92
+ if (this.options.hmrOptions && Array.isArray(hmrDeps)) {
93
+ for (let id of hmrDeps) {
94
+ (0, assert_1.default)(typeof id === 'string');
95
+ deps[id] = id;
96
+ }
97
+ }
98
+ }
99
+ // @ts-expect-error TS2339
100
+ let { code, mapBuffer } = results[i];
101
+ let output = code || '';
102
+ wrapped +=
103
+ JSON.stringify(this.bundleGraph.getAssetPublicId(asset)) +
104
+ ':[function(require,module,exports,__globalThis) {\n' +
105
+ output +
106
+ '\n},';
107
+ wrapped += JSON.stringify(deps);
108
+ wrapped += ']';
109
+ if (this.bundle.env.isNode() &&
110
+ asset.meta.has_node_replacements === true) {
111
+ const relPath = (0, utils_1.normalizeSeparators)(path_1.default.relative(this.bundle.target.distDir, path_1.default.dirname(asset.filePath)));
112
+ wrapped = wrapped.replace('$parcel$dirnameReplace', relPath);
113
+ wrapped = wrapped.replace('$parcel$filenameReplace', relPath);
114
+ }
115
+ if (this.bundle.env.sourceMap) {
116
+ if (mapBuffer) {
117
+ map.addBuffer(mapBuffer, lineOffset);
118
+ }
119
+ else {
120
+ map.addEmptyMap(path_1.default
121
+ .relative(this.options.projectRoot, asset.filePath)
122
+ .replace(/\\+/g, '/'), output, lineOffset);
123
+ }
124
+ lineOffset += (0, utils_1.countLines)(output) + 1;
125
+ }
126
+ i++;
127
+ }
128
+ assets += wrapped;
129
+ first = false;
130
+ });
131
+ let entries = this.bundle.getEntryAssets();
132
+ let mainEntry = this.bundle.getMainEntry();
133
+ if ((!this.isEntry() && this.bundle.env.outputFormat === 'global') ||
134
+ this.bundle.env.sourceType === 'script') {
135
+ // In async bundles we don't want the main entry to execute until we require it
136
+ // as there might be dependencies in a sibling bundle that hasn't loaded yet.
137
+ entries = entries.filter((a) => a.id !== mainEntry?.id);
138
+ mainEntry = null;
139
+ }
140
+ let contents = prefix +
141
+ '({' +
142
+ assets +
143
+ '},' +
144
+ JSON.stringify(entries.map((asset) => this.bundleGraph.getAssetPublicId(asset))) +
145
+ ', ' +
146
+ JSON.stringify(mainEntry ? this.bundleGraph.getAssetPublicId(mainEntry) : null) +
147
+ ', ' +
148
+ JSON.stringify(this.parcelRequireName) +
149
+ ')' +
150
+ '\n';
151
+ // The entry asset of a script bundle gets hoisted outside the bundle wrapper function
152
+ // so that its variables become globals. We need to replace any require calls for
153
+ // runtimes with a parcelRequire call.
154
+ if (this.bundle.env.sourceType === 'script' && script) {
155
+ let entryMap;
156
+ // @ts-expect-error TS2339
157
+ let mapBuffer = script.mapBuffer;
158
+ if (mapBuffer) {
159
+ entryMap = new source_map_1.default(this.options.projectRoot, mapBuffer);
160
+ }
161
+ contents += (0, utils_2.replaceScriptDependencies)(this.bundleGraph, this.bundle,
162
+ // @ts-expect-error TS2339
163
+ script.code, entryMap, this.parcelRequireName);
164
+ if (this.bundle.env.sourceMap && entryMap) {
165
+ map.addSourceMap(entryMap, lineOffset);
166
+ }
167
+ }
168
+ return {
169
+ contents,
170
+ map,
171
+ };
172
+ }
173
+ getPrefix() {
174
+ let interpreter;
175
+ let mainEntry = this.bundle.getMainEntry();
176
+ if (mainEntry && this.isEntry() && !this.bundle.target.env.isBrowser()) {
177
+ let _interpreter = mainEntry.meta.interpreter;
178
+ (0, assert_1.default)(_interpreter == null || typeof _interpreter === 'string');
179
+ interpreter = _interpreter;
180
+ }
181
+ let importScripts = '';
182
+ if (this.bundle.env.isWorker() || this.bundle.env.isTesseract()) {
183
+ let bundles = this.bundleGraph.getReferencedBundles(this.bundle);
184
+ for (let b of bundles) {
185
+ importScripts += `importScripts("${(0, utils_1.relativeBundlePath)(this.bundle, b)}");\n`;
186
+ }
187
+ }
188
+ return (
189
+ // If the entry asset included a hashbang, repeat it at the top of the bundle
190
+ (interpreter != null ? `#!${interpreter}\n` : '') +
191
+ importScripts +
192
+ PRELUDE);
193
+ }
194
+ isEntry() {
195
+ return (!this.bundleGraph.hasParentBundleOfType(this.bundle, 'js') ||
196
+ this.bundle.env.isIsolated() ||
197
+ this.bundle.bundleBehavior === 'isolated' ||
198
+ this.bundle.bundleBehavior === 'inlineIsolated');
199
+ }
200
+ }
201
+ exports.DevPackager = DevPackager;