shakapacker 6.1.0 → 6.2.1

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 (56) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE/bug_report.md +1 -1
  3. data/.github/ISSUE_TEMPLATE/feature-request.md +1 -1
  4. data/.node-version +1 -1
  5. data/CHANGELOG.md +26 -2
  6. data/Gemfile.lock +1 -1
  7. data/README.md +42 -16
  8. data/docs/customizing_babel_config.md +2 -0
  9. data/docs/deployment.md +2 -2
  10. data/docs/style_loader_vs_mini_css.md +48 -0
  11. data/docs/troubleshooting.md +18 -0
  12. data/docs/using_esbuild_loader.md +128 -0
  13. data/docs/using_swc_loader.md +2 -2
  14. data/docs/v6_upgrade.md +72 -74
  15. data/lib/install/config/webpacker.yml +15 -1
  16. data/lib/install/template.rb +2 -2
  17. data/lib/webpacker/commands.rb +2 -2
  18. data/lib/webpacker/compiler.rb +2 -2
  19. data/lib/webpacker/configuration.rb +16 -4
  20. data/lib/webpacker/dev_server.rb +11 -2
  21. data/lib/webpacker/helper.rb +0 -7
  22. data/lib/webpacker/instance.rb +1 -1
  23. data/lib/webpacker/manifest.rb +3 -3
  24. data/lib/webpacker/railtie.rb +7 -0
  25. data/lib/webpacker/version.rb +1 -1
  26. data/lib/webpacker/version_checker.rb +152 -0
  27. data/package/__tests__/config.js +11 -0
  28. data/package/config.js +6 -0
  29. data/package/environments/base.js +1 -1
  30. data/package/esbuild/index.js +40 -0
  31. data/package/inliningCss.js +1 -1
  32. data/package/rules/__tests__/file.js +35 -0
  33. data/package/rules/__tests__/index.js +11 -0
  34. data/package/rules/__tests__/raw.js +18 -0
  35. data/package/rules/esbuild.js +23 -0
  36. data/package/rules/file.js +2 -17
  37. data/package/rules/index.js +1 -0
  38. data/package/rules/raw.js +2 -2
  39. data/package/swc/index.js +3 -3
  40. data/package.json +2 -1
  41. data/test/configuration_test.rb +26 -0
  42. data/test/fixtures/beta_package.json +13 -0
  43. data/test/fixtures/git_url_package.json +13 -0
  44. data/test/fixtures/github_url_package.json +13 -0
  45. data/test/fixtures/normal_package.json +13 -0
  46. data/test/fixtures/relative_path_package.json +13 -0
  47. data/test/fixtures/semver_caret_package.json +13 -0
  48. data/test/fixtures/semver_tilde_package.json +13 -0
  49. data/test/fixtures/without_package.json +13 -0
  50. data/test/helper_test.rb +12 -12
  51. data/test/test_app/config/webpacker.yml +4 -0
  52. data/test/test_app/config/webpacker_manifest_path.yml +80 -0
  53. data/test/version_checker_test.rb +271 -0
  54. data/test/webpacker_test.rb +15 -0
  55. data/yarn.lock +145 -1
  56. metadata +31 -3
@@ -0,0 +1,271 @@
1
+ require "test_helper"
2
+ require "webpacker/version"
3
+
4
+ class NodePackageVersionDouble
5
+ attr_reader :raw, :major_minor_patch
6
+
7
+ def initialize(raw: nil, major_minor_patch: nil, semver_wildcard: false, skip_processing: false)
8
+ @raw = raw
9
+ @major_minor_patch = major_minor_patch
10
+ @semver_wildcard = semver_wildcard
11
+ @skip_processing = skip_processing
12
+ end
13
+
14
+ def semver_wildcard?
15
+ @semver_wildcard
16
+ end
17
+
18
+ def skip_processing?
19
+ @skip_processing
20
+ end
21
+ end
22
+
23
+ class VersionCheckerTest < Minitest::Test
24
+ def check_version(node_package_version, stub_gem_version = Webpacker::VERSION, stub_config = true)
25
+ version_checker = Webpacker::VersionChecker.new(node_package_version)
26
+ version_checker.stub :gem_version, stub_gem_version do
27
+ Webpacker.config.stub :ensure_consistent_versioning?, stub_config do
28
+ version_checker.raise_if_gem_and_node_package_versions_differ
29
+ end
30
+ end
31
+ end
32
+
33
+ def test_message_printed_if_consistency_check_disabled_and_mismatch
34
+ node_package_version = NodePackageVersionDouble.new(raw: "6.1.0", major_minor_patch: ["6", "1", "0"])
35
+
36
+ out, err = capture_io do
37
+ check_version(node_package_version, "6.0.0", false)
38
+ end
39
+
40
+ assert_match \
41
+ "Webpacker::VersionChecker - Version mismatch detected",
42
+ err
43
+ end
44
+
45
+ def test_message_printed_if_consistency_check_disabled_and_semver
46
+ node_package_version = NodePackageVersionDouble.new(raw: "^6.1.0", major_minor_patch: ["6", "1", "0"], semver_wildcard: true)
47
+
48
+ out, err = capture_io do
49
+ check_version(node_package_version, "6.1.0", false)
50
+ end
51
+
52
+ assert_match \
53
+ "Webpacker::VersionChecker - Semver wildcard detected",
54
+ err
55
+ end
56
+
57
+ def test_raise_on_different_major_version
58
+ node_package_version = NodePackageVersionDouble.new(raw: "6.1.0", major_minor_patch: ["6", "1", "0"])
59
+
60
+ error = assert_raises do
61
+ check_version(node_package_version, "7.0.0")
62
+ end
63
+
64
+ assert_match \
65
+ "**ERROR** Webpacker: Webpacker gem and node package versions do not match",
66
+ error.message
67
+ end
68
+
69
+ def test_raise_on_different_minor_version
70
+ node_package_version = NodePackageVersionDouble.new(raw: "6.1.0", major_minor_patch: ["6", "1", "0"])
71
+
72
+ error = assert_raises do
73
+ check_version(node_package_version, "6.2.0")
74
+ end
75
+
76
+ assert_match \
77
+ "**ERROR** Webpacker: Webpacker gem and node package versions do not match",
78
+ error.message
79
+ end
80
+
81
+ def test_raise_on_different_patch_version
82
+ node_package_version = NodePackageVersionDouble.new(raw: "6.1.1", major_minor_patch: ["6", "1", "1"])
83
+
84
+ error = assert_raises do
85
+ check_version(node_package_version, "6.1.2")
86
+ end
87
+
88
+ assert_match \
89
+ "**ERROR** Webpacker: Webpacker gem and node package versions do not match",
90
+ error.message
91
+ end
92
+
93
+ def test_raise_on_semver_wildcard
94
+ node_package_version = NodePackageVersionDouble.new(raw: "^6.0.0", major_minor_patch: ["6", "0", "0"], semver_wildcard: true)
95
+
96
+ error = assert_raises do
97
+ check_version(node_package_version, "6.0.0")
98
+ end
99
+
100
+ assert_match \
101
+ "**ERROR** Webpacker: Your node package version for shakapacker contains a ^ or ~",
102
+ error.message
103
+ end
104
+
105
+ def test_no_raise_on_matching_versions
106
+ node_package_version = NodePackageVersionDouble.new(raw: "6.0.0", major_minor_patch: ["6", "0", "0"])
107
+
108
+ assert_silent do
109
+ check_version(node_package_version, "6.0.0")
110
+ end
111
+ end
112
+
113
+ def test_no_raise_on_matching_versions_beta
114
+ node_package_version = NodePackageVersionDouble.new(raw: "6.0.0-beta.1", major_minor_patch: ["6", "0", "0"])
115
+
116
+ assert_silent do
117
+ check_version(node_package_version, "6.0.0.beta.1")
118
+ end
119
+ end
120
+
121
+ def test_no_raise_on_no_package
122
+ node_package_version = NodePackageVersionDouble.new(raw: nil, skip_processing: true)
123
+
124
+ assert_silent do
125
+ check_version(node_package_version, "6.0.0")
126
+ end
127
+ end
128
+
129
+ def test_no_raise_on_skipped_path
130
+ node_package_version = NodePackageVersionDouble.new(raw: "../shakapacker", skip_processing: true)
131
+
132
+ assert_silent do
133
+ check_version(node_package_version, "6.0.0")
134
+ end
135
+ end
136
+ end
137
+
138
+ class NodePackageVersionTest < Minitest::Test
139
+ def node_package_version(fixture_version: "normal")
140
+ file_path = File.expand_path("fixtures/#{fixture_version}_package.json", __dir__)
141
+ Webpacker::VersionChecker::NodePackageVersion.new(file_path)
142
+ end
143
+
144
+ def test_normal_package_raw
145
+ assert_equal "6.0.0", node_package_version.raw
146
+ end
147
+
148
+ def test_normal_package_major_minor_patch
149
+ assert_equal ["6", "0", "0"], node_package_version.major_minor_patch
150
+ end
151
+
152
+ def test_normal_package_skip_processing
153
+ assert_equal false, node_package_version.skip_processing?
154
+ end
155
+
156
+ def test_normal_package_semver_wildcard
157
+ assert_equal false, node_package_version.semver_wildcard?
158
+ end
159
+
160
+ def test_beta_package_raw
161
+ assert_equal "6.0.0-beta.1", node_package_version(fixture_version: "beta").raw
162
+ end
163
+
164
+ def test_beta_package_major_minor_patch
165
+ assert_equal ["6", "0", "0"], node_package_version(fixture_version: "beta").major_minor_patch
166
+ end
167
+
168
+ def test_beta_package_skip_processing
169
+ assert_equal false, node_package_version(fixture_version: "beta").skip_processing?
170
+ end
171
+
172
+ def test_beta_package_semver_wildcard
173
+ assert_equal false, node_package_version(fixture_version: "beta").semver_wildcard?
174
+ end
175
+
176
+ def test_semver_caret_package_raw
177
+ assert_equal "^6.0.0", node_package_version(fixture_version: "semver_caret").raw
178
+ end
179
+
180
+ def test_semver_caret_package_major_minor_patch
181
+ assert_equal ["6", "0", "0"], node_package_version(fixture_version: "semver_caret").major_minor_patch
182
+ end
183
+
184
+ def test_semver_caret_package_skip_processing
185
+ assert_equal false, node_package_version(fixture_version: "semver_caret").skip_processing?
186
+ end
187
+
188
+ def test_semver_caret_package_semver_wildcard
189
+ assert_equal true, node_package_version(fixture_version: "semver_caret").semver_wildcard?
190
+ end
191
+
192
+ def test_semver_tilde_package_raw
193
+ assert_equal "~6.0.0", node_package_version(fixture_version: "semver_tilde").raw
194
+ end
195
+
196
+ def test_semver_tilde_package_major_minor_patch
197
+ assert_equal ["6", "0", "0"], node_package_version(fixture_version: "semver_tilde").major_minor_patch
198
+ end
199
+
200
+ def test_semver_tilde_package_skip_processing
201
+ assert_equal false, node_package_version(fixture_version: "semver_tilde").skip_processing?
202
+ end
203
+
204
+ def test_semver_tilde_package_semver_wildcard
205
+ assert_equal true, node_package_version(fixture_version: "semver_tilde").semver_wildcard?
206
+ end
207
+
208
+ def test_relative_path_package_raw
209
+ assert_equal "../shakapacker", node_package_version(fixture_version: "relative_path").raw
210
+ end
211
+
212
+ def test_relative_path_package_major_minor_patch
213
+ assert_nil node_package_version(fixture_version: "relative_path").major_minor_patch
214
+ end
215
+
216
+ def test_relative_path_package_skip_processing
217
+ assert_equal true, node_package_version(fixture_version: "relative_path").skip_processing?
218
+ end
219
+
220
+ def test_relative_path_package_semver_wildcard
221
+ assert_equal false, node_package_version(fixture_version: "relative_path").semver_wildcard?
222
+ end
223
+
224
+ def test_git_url_package_raw
225
+ assert_equal "git://github.com/shakapacker/shakapacker.git", node_package_version(fixture_version: "git_url").raw
226
+ end
227
+
228
+ def test_git_url_package_major_minor_patch
229
+ assert_nil node_package_version(fixture_version: "git_url").major_minor_patch
230
+ end
231
+
232
+ def test_git_url_package_skip_processing
233
+ assert_equal true, node_package_version(fixture_version: "git_url").skip_processing?
234
+ end
235
+
236
+ def test_git_url_package_semver_wildcard
237
+ assert_equal false, node_package_version(fixture_version: "git_url").semver_wildcard?
238
+ end
239
+
240
+ def test_github_url_package_raw
241
+ assert_equal "shakapacker/shakapacker#feature/branch", node_package_version(fixture_version: "github_url").raw
242
+ end
243
+
244
+ def test_github_url_package_major_minor_patch
245
+ assert_nil node_package_version(fixture_version: "github_url").major_minor_patch
246
+ end
247
+
248
+ def test_github_url_package_skip_processing
249
+ assert_equal true, node_package_version(fixture_version: "github_url").skip_processing?
250
+ end
251
+
252
+ def test_github_url_package_semver_wildcard
253
+ assert_equal false, node_package_version(fixture_version: "github_url").semver_wildcard?
254
+ end
255
+
256
+ def test_without_package_raw
257
+ assert_equal "", node_package_version(fixture_version: "without").raw
258
+ end
259
+
260
+ def test_without_package_major_minor_patch
261
+ assert_nil node_package_version(fixture_version: "without").major_minor_patch
262
+ end
263
+
264
+ def test_without_package_skip_processing
265
+ assert_equal true, node_package_version(fixture_version: "without").skip_processing?
266
+ end
267
+
268
+ def test_without_package_semver_wildcard
269
+ assert_equal false, node_package_version(fixture_version: "without").semver_wildcard?
270
+ end
271
+ end
@@ -23,11 +23,26 @@ class WebpackerTest < Webpacker::Test
23
23
  def dev_server.https?; true; end
24
24
  def dev_server.hmr?; true; end
25
25
  def dev_server.running?; true; end
26
+ def dev_server.inline_css?; true; end
26
27
  Webpacker.instance.stub(:dev_server, dev_server) do
27
28
  assert Webpacker.inlining_css?
28
29
  end
29
30
  end
30
31
 
32
+ def test_explicit_no_inline_css_with_hmr
33
+ dev_server = Webpacker::DevServer.new({})
34
+ def dev_server.host; "localhost"; end
35
+ def dev_server.port; "3035"; end
36
+ def dev_server.pretty?; false; end
37
+ def dev_server.https?; true; end
38
+ def dev_server.hmr?; true; end
39
+ def dev_server.running?; true; end
40
+ def dev_server.inline_css?; false; end
41
+ Webpacker.instance.stub(:dev_server, dev_server) do
42
+ assert !Webpacker.inlining_css?
43
+ end
44
+ end
45
+
31
46
  def test_app_autoload_paths_cleanup
32
47
  assert_empty $test_app_autoload_paths_in_initializer
33
48
  end
data/yarn.lock CHANGED
@@ -1514,6 +1514,132 @@ es-to-primitive@^1.2.1:
1514
1514
  is-date-object "^1.0.1"
1515
1515
  is-symbol "^1.0.2"
1516
1516
 
1517
+ esbuild-android-arm64@0.14.18:
1518
+ version "0.14.18"
1519
+ resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.18.tgz#027a1cd57e57c6219341e116c4ac41a9952d69d1"
1520
+ integrity sha512-AuE8vIwc6QLquwykyscFk0Ji3RFczoOvjka64FJlcjLLhD6VsS584RYlQrSnPpRkv69PunUvyrBoEF7JFTJijg==
1521
+
1522
+ esbuild-darwin-64@0.14.18:
1523
+ version "0.14.18"
1524
+ resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.18.tgz#a219c50aa98b5bc08d7ce3677f5bae4b8aa5101b"
1525
+ integrity sha512-nN1XziZtDy8QYOggaXC3zu0vVh8YJpS8Bol7bHaxx0enTLDSFBCXUUJEKYpmAAJ4OZRPgjXv8NzEHHQWQvLzXg==
1526
+
1527
+ esbuild-darwin-arm64@0.14.18:
1528
+ version "0.14.18"
1529
+ resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.18.tgz#eb2d17d33c5991c183c99843698182bb702eb592"
1530
+ integrity sha512-v0i2n6TCsbxco/W1fN8RgQt3RW00Q9zJO2eqiAdmLWg6Hx0HNHloZyfhF11i7nMUUgW8r5n++ZweIXjAFPE/gQ==
1531
+
1532
+ esbuild-freebsd-64@0.14.18:
1533
+ version "0.14.18"
1534
+ resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.18.tgz#de06b6ce361bdf51fb66e59b220f67c4124cc728"
1535
+ integrity sha512-XLyJZTWbSuQJOqw867tBxvto6GjxULvWZYKs6RFHYQPCqgQ0ODLRtBmp4Fqqpde52yOe45npaaoup9IXNfr32A==
1536
+
1537
+ esbuild-freebsd-arm64@0.14.18:
1538
+ version "0.14.18"
1539
+ resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.18.tgz#59bb55cd6ac1b2b3c43536c067d8356f4ae7e310"
1540
+ integrity sha512-0ItfrR8hePnDcUXxUQxY+VfICcBfeMJCdK6mcNUXnXw6LyHjyUYXWpFXF+J18pg1/YUWRWO1HbsJ7FEwELcQIA==
1541
+
1542
+ esbuild-linux-32@0.14.18:
1543
+ version "0.14.18"
1544
+ resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.14.18.tgz#ff68f7ec7c8b8c7dddab4d6e65f1a1d0ff3ab0b9"
1545
+ integrity sha512-mnG84D9NsEsoQdBpBT0IsFjm5iAwnd81SP4tRMXZLl09lPvIWjHHSq6LDlb4+L5H5K5y68WC//X5Dr2MtNY3DQ==
1546
+
1547
+ esbuild-linux-64@0.14.18:
1548
+ version "0.14.18"
1549
+ resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.14.18.tgz#d4083d9833580090452a095cd2216100d86f3c7a"
1550
+ integrity sha512-HvExRtkeA8l/p+7Lf6aBrnLH+jTCFJTUMJxGKExh2RD8lCXGTeDJFyP+BOEetP80fuuH+Syj79+LVQ9MihdBsg==
1551
+
1552
+ esbuild-linux-arm64@0.14.18:
1553
+ version "0.14.18"
1554
+ resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.18.tgz#8ce21e188ab9fcdb512f4ada9a637014c1294bec"
1555
+ integrity sha512-CCWmilODE1ckw+M7RVqoqKWA4UB0alCyK2bv0ikEeEAwkzinlJeoe94t9CnT/ECSQ2sL+C16idsr+aUviGp7sg==
1556
+
1557
+ esbuild-linux-arm@0.14.18:
1558
+ version "0.14.18"
1559
+ resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.18.tgz#a5e1d684c451f379b1dfef7b5a2dcad84cce3f79"
1560
+ integrity sha512-+ZL8xfXVNaeaZ2Kxqlw2VYZWRDZ7NSK4zOV9GKNAtkkWURLsPUU84aUOBatRe9BH1O5FDo3LLQSlaA04ed6lhA==
1561
+
1562
+ esbuild-linux-mips64le@0.14.18:
1563
+ version "0.14.18"
1564
+ resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.18.tgz#c3890f178745a9c65bad64322be2b3611c240041"
1565
+ integrity sha512-8LjO4+6Vxz5gbyCHO4OONYMF689nLderCtzb8lG1Bncs4ZXHpo6bjvuWeTMRbGUkvAhp+P6hMTzia7RHOC53wQ==
1566
+
1567
+ esbuild-linux-ppc64le@0.14.18:
1568
+ version "0.14.18"
1569
+ resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.18.tgz#a355f515ca84839f5301f8ef745a2b329105e232"
1570
+ integrity sha512-0OJk/6iYEmF1J7LXY6+cqf6Ga5vG4an7n1nubTKce7kYqaTyNGfYcTjDZce6lnDVlZTJtwntIMszq1+ZX7Kenw==
1571
+
1572
+ esbuild-linux-s390x@0.14.18:
1573
+ version "0.14.18"
1574
+ resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.18.tgz#81721c22387912778c67495d0a34527f7a2cde66"
1575
+ integrity sha512-UNY7YKZHjY31KcNanJK4QaT2/aoIQyS+jViP3QuDRIoYAogRnc6WydylzIkkEzGMaC4fzaXOmQ8fxwpLAXK4Yg==
1576
+
1577
+ esbuild-loader@^2.18.0:
1578
+ version "2.18.0"
1579
+ resolved "https://registry.yarnpkg.com/esbuild-loader/-/esbuild-loader-2.18.0.tgz#7b9548578ab954574fd94655693d22aa5ec74120"
1580
+ integrity sha512-AKqxM3bI+gvGPV8o6NAhR+cBxVO8+dh+O0OXBHIXXwuSGumckbPWHzZ17subjBGI2YEGyJ1STH7Haj8aCrwL/w==
1581
+ dependencies:
1582
+ esbuild "^0.14.6"
1583
+ joycon "^3.0.1"
1584
+ json5 "^2.2.0"
1585
+ loader-utils "^2.0.0"
1586
+ tapable "^2.2.0"
1587
+ webpack-sources "^2.2.0"
1588
+
1589
+ esbuild-netbsd-64@0.14.18:
1590
+ version "0.14.18"
1591
+ resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.18.tgz#eaee109d527a58b582f8fa933d9cadf8840758c2"
1592
+ integrity sha512-wE/2xT9KNzLCfEBw24YbVmMmXH92cFIzrRPUlwWH9dIizjvEYYcyQ+peTMVkqzUum7pdlVLZ2CDDqAaZo/nW/w==
1593
+
1594
+ esbuild-openbsd-64@0.14.18:
1595
+ version "0.14.18"
1596
+ resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.18.tgz#96a42615f5548529b7bb32d024bb9c6fb542778c"
1597
+ integrity sha512-vdymE2jyuH/FRmTvrguCYSrq81/rUwuhMYyvt/6ibv9ac7xQ674c8qTdT+RH73sR9/2WUD/NsYxrBA/wUVTxcg==
1598
+
1599
+ esbuild-sunos-64@0.14.18:
1600
+ version "0.14.18"
1601
+ resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.18.tgz#869723d73a5f35ba2a4a6c043694d952bd4f831b"
1602
+ integrity sha512-X/Tesy6K1MdJF1d5cbzFDxrIMMn0ye+VgTQRI8P5Vo2CcKxOdckwsKUwpRAvg+VDZ6MxrSOTYS9OOoggPUjxTg==
1603
+
1604
+ esbuild-windows-32@0.14.18:
1605
+ version "0.14.18"
1606
+ resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.14.18.tgz#197c8833ed0f6a82055ab63861777749d0ce95c0"
1607
+ integrity sha512-glG23I/JzCL4lu7DWFUtVwqFwNwlL0g+ks+mcjjUisHcINoSXTeCNToUN0bHhzn6IlXXnggNQ38Ew/idHPM8+g==
1608
+
1609
+ esbuild-windows-64@0.14.18:
1610
+ version "0.14.18"
1611
+ resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.14.18.tgz#569832a99d87fc931a081fe7761c100578275be0"
1612
+ integrity sha512-zEiFKHgV/3z14wsVamV98/5mxeOwz+ecyg0pD3fWcBz9j4EOIT1Tg47axypD4QLwiKFvve9mUBYX1cD99qxOyw==
1613
+
1614
+ esbuild-windows-arm64@0.14.18:
1615
+ version "0.14.18"
1616
+ resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.18.tgz#c1991848fca7b051d1d036d0723406da9696105d"
1617
+ integrity sha512-Mh8lZFcPLat13dABN7lZThGUOn9YxoH5RYkhBq0U3WqQohHzKRhllYh7ibFixnkpMLnv8OZEbl8bGLMy03MpfA==
1618
+
1619
+ esbuild@^0.14.6:
1620
+ version "0.14.18"
1621
+ resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.18.tgz#9c5f58c506ec9e0ec335d20bcb3f9dbd086d0648"
1622
+ integrity sha512-vCUoISSltnX7ax01w70pWOSQT+e55o+2P/a+A9MSTukJAt3T4aDZajcjeG4fnZbkvOEv+dkKgdkvljz6vVQD4A==
1623
+ optionalDependencies:
1624
+ esbuild-android-arm64 "0.14.18"
1625
+ esbuild-darwin-64 "0.14.18"
1626
+ esbuild-darwin-arm64 "0.14.18"
1627
+ esbuild-freebsd-64 "0.14.18"
1628
+ esbuild-freebsd-arm64 "0.14.18"
1629
+ esbuild-linux-32 "0.14.18"
1630
+ esbuild-linux-64 "0.14.18"
1631
+ esbuild-linux-arm "0.14.18"
1632
+ esbuild-linux-arm64 "0.14.18"
1633
+ esbuild-linux-mips64le "0.14.18"
1634
+ esbuild-linux-ppc64le "0.14.18"
1635
+ esbuild-linux-s390x "0.14.18"
1636
+ esbuild-netbsd-64 "0.14.18"
1637
+ esbuild-openbsd-64 "0.14.18"
1638
+ esbuild-sunos-64 "0.14.18"
1639
+ esbuild-windows-32 "0.14.18"
1640
+ esbuild-windows-64 "0.14.18"
1641
+ esbuild-windows-arm64 "0.14.18"
1642
+
1517
1643
  escalade@^3.1.1:
1518
1644
  version "3.1.1"
1519
1645
  resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
@@ -2684,6 +2810,11 @@ jest@^27.2.1:
2684
2810
  import-local "^3.0.2"
2685
2811
  jest-cli "^27.4.7"
2686
2812
 
2813
+ joycon@^3.0.1:
2814
+ version "3.1.1"
2815
+ resolved "https://registry.yarnpkg.com/joycon/-/joycon-3.1.1.tgz#bce8596d6ae808f8b68168f5fc69280996894f03"
2816
+ integrity sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==
2817
+
2687
2818
  "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
2688
2819
  version "4.0.0"
2689
2820
  resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
@@ -2769,7 +2900,7 @@ json5@^1.0.1:
2769
2900
  dependencies:
2770
2901
  minimist "^1.2.0"
2771
2902
 
2772
- json5@^2.1.2:
2903
+ json5@^2.1.2, json5@^2.2.0:
2773
2904
  version "2.2.0"
2774
2905
  resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3"
2775
2906
  integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==
@@ -3487,6 +3618,11 @@ slice-ansi@^4.0.0:
3487
3618
  astral-regex "^2.0.0"
3488
3619
  is-fullwidth-code-point "^3.0.0"
3489
3620
 
3621
+ source-list-map@^2.0.1:
3622
+ version "2.0.1"
3623
+ resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34"
3624
+ integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==
3625
+
3490
3626
  source-map-support@^0.5.6, source-map-support@~0.5.20:
3491
3627
  version "0.5.21"
3492
3628
  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
@@ -3881,6 +4017,14 @@ webpack-merge@^5.8.0:
3881
4017
  clone-deep "^4.0.1"
3882
4018
  wildcard "^2.0.0"
3883
4019
 
4020
+ webpack-sources@^2.2.0:
4021
+ version "2.3.1"
4022
+ resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-2.3.1.tgz#570de0af163949fe272233c2cefe1b56f74511fd"
4023
+ integrity sha512-y9EI9AO42JjEcrTJFOYmVywVZdKVUfOvDUPsJea5GIr1JOEGFVqwlY2K098fFoIjOkDzHn2AjRvM8dsBZu+gCA==
4024
+ dependencies:
4025
+ source-list-map "^2.0.1"
4026
+ source-map "^0.6.1"
4027
+
3884
4028
  webpack-sources@^3.2.2:
3885
4029
  version "3.2.3"
3886
4030
  resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shakapacker
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.1.0
4
+ version: 6.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2022-02-04 00:00:00.000000000 Z
13
+ date: 2022-04-16 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
@@ -142,7 +142,9 @@ files:
142
142
  - docs/customizing_babel_config.md
143
143
  - docs/deployment.md
144
144
  - docs/developing_webpacker.md
145
+ - docs/style_loader_vs_mini_css.md
145
146
  - docs/troubleshooting.md
147
+ - docs/using_esbuild_loader.md
146
148
  - docs/using_swc_loader.md
147
149
  - docs/v6_upgrade.md
148
150
  - gemfiles/Gemfile-rails-edge
@@ -190,6 +192,7 @@ files:
190
192
  - lib/webpacker/railtie.rb
191
193
  - lib/webpacker/runner.rb
192
194
  - lib/webpacker/version.rb
195
+ - lib/webpacker/version_checker.rb
193
196
  - lib/webpacker/webpack_runner.rb
194
197
  - package.json
195
198
  - package/__tests__/config.js
@@ -210,12 +213,17 @@ files:
210
213
  - package/environments/development.js
211
214
  - package/environments/production.js
212
215
  - package/environments/test.js
216
+ - package/esbuild/index.js
213
217
  - package/index.js
214
218
  - package/inliningCss.js
219
+ - package/rules/__tests__/file.js
220
+ - package/rules/__tests__/index.js
221
+ - package/rules/__tests__/raw.js
215
222
  - package/rules/babel.js
216
223
  - package/rules/coffee.js
217
224
  - package/rules/css.js
218
225
  - package/rules/erb.js
226
+ - package/rules/esbuild.js
219
227
  - package/rules/file.js
220
228
  - package/rules/index.js
221
229
  - package/rules/less.js
@@ -234,6 +242,14 @@ files:
234
242
  - test/dev_server_test.rb
235
243
  - test/engine_rake_tasks_test.rb
236
244
  - test/env_test.rb
245
+ - test/fixtures/beta_package.json
246
+ - test/fixtures/git_url_package.json
247
+ - test/fixtures/github_url_package.json
248
+ - test/fixtures/normal_package.json
249
+ - test/fixtures/relative_path_package.json
250
+ - test/fixtures/semver_caret_package.json
251
+ - test/fixtures/semver_tilde_package.json
252
+ - test/fixtures/without_package.json
237
253
  - test/helper_test.rb
238
254
  - test/manifest_test.rb
239
255
  - test/mounted_app/Rakefile
@@ -258,6 +274,7 @@ files:
258
274
  - test/test_app/config/initializers/inspect_autoload_paths.rb
259
275
  - test/test_app/config/webpack/webpack.config.js
260
276
  - test/test_app/config/webpacker.yml
277
+ - test/test_app/config/webpacker_manifest_path.yml
261
278
  - test/test_app/config/webpacker_other_location.yml
262
279
  - test/test_app/config/webpacker_public_root.yml
263
280
  - test/test_app/package.json
@@ -265,6 +282,7 @@ files:
265
282
  - test/test_app/some.config.js
266
283
  - test/test_app/yarn.lock
267
284
  - test/test_helper.rb
285
+ - test/version_checker_test.rb
268
286
  - test/webpack_runner_test.rb
269
287
  - test/webpacker_test.rb
270
288
  - webpacker.gemspec
@@ -273,7 +291,7 @@ homepage: https://github.com/shakacode/shakapacker
273
291
  licenses:
274
292
  - MIT
275
293
  metadata:
276
- source_code_uri: https://github.com/shakacode/shakapacker/tree/v6.1.0
294
+ source_code_uri: https://github.com/shakacode/shakapacker/tree/v6.2.1
277
295
  post_install_message:
278
296
  rdoc_options: []
279
297
  require_paths:
@@ -301,6 +319,14 @@ test_files:
301
319
  - test/dev_server_test.rb
302
320
  - test/engine_rake_tasks_test.rb
303
321
  - test/env_test.rb
322
+ - test/fixtures/beta_package.json
323
+ - test/fixtures/git_url_package.json
324
+ - test/fixtures/github_url_package.json
325
+ - test/fixtures/normal_package.json
326
+ - test/fixtures/relative_path_package.json
327
+ - test/fixtures/semver_caret_package.json
328
+ - test/fixtures/semver_tilde_package.json
329
+ - test/fixtures/without_package.json
304
330
  - test/helper_test.rb
305
331
  - test/manifest_test.rb
306
332
  - test/mounted_app/Rakefile
@@ -325,6 +351,7 @@ test_files:
325
351
  - test/test_app/config/initializers/inspect_autoload_paths.rb
326
352
  - test/test_app/config/webpack/webpack.config.js
327
353
  - test/test_app/config/webpacker.yml
354
+ - test/test_app/config/webpacker_manifest_path.yml
328
355
  - test/test_app/config/webpacker_other_location.yml
329
356
  - test/test_app/config/webpacker_public_root.yml
330
357
  - test/test_app/package.json
@@ -332,5 +359,6 @@ test_files:
332
359
  - test/test_app/some.config.js
333
360
  - test/test_app/yarn.lock
334
361
  - test/test_helper.rb
362
+ - test/version_checker_test.rb
335
363
  - test/webpack_runner_test.rb
336
364
  - test/webpacker_test.rb