shakapacker 6.1.0.beta.0 → 6.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) 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/.github/workflows/jest.yml +1 -4
  5. data/.github/workflows/js-lint.yml +3 -7
  6. data/.github/workflows/rubocop.yml +3 -20
  7. data/.github/workflows/ruby.yml +12 -19
  8. data/.node-version +1 -1
  9. data/.rubocop.yml +0 -1
  10. data/CHANGELOG.md +34 -3
  11. data/Gemfile.lock +1 -1
  12. data/README.md +50 -17
  13. data/docs/customizing_babel_config.md +2 -0
  14. data/docs/style_loader_vs_mini_css.md +48 -0
  15. data/docs/using_esbuild_loader.md +128 -0
  16. data/docs/using_swc_loader.md +6 -4
  17. data/docs/v6_upgrade.md +95 -79
  18. data/gemfiles/Gemfile-rails.7.0.x +12 -0
  19. data/lib/install/config/webpacker.yml +15 -1
  20. data/lib/install/template.rb +2 -2
  21. data/lib/webpacker/commands.rb +2 -2
  22. data/lib/webpacker/compiler.rb +1 -1
  23. data/lib/webpacker/configuration.rb +12 -4
  24. data/lib/webpacker/dev_server.rb +11 -2
  25. data/lib/webpacker/helper.rb +0 -7
  26. data/lib/webpacker/instance.rb +1 -1
  27. data/lib/webpacker/manifest.rb +3 -3
  28. data/lib/webpacker/railtie.rb +7 -0
  29. data/lib/webpacker/version.rb +1 -1
  30. data/lib/webpacker/version_checker.rb +152 -0
  31. data/package/__tests__/config.js +11 -0
  32. data/package/config.js +6 -0
  33. data/package/environments/base.js +1 -1
  34. data/package/esbuild/index.js +40 -0
  35. data/package/inliningCss.js +1 -1
  36. data/package/rules/__tests__/file.js +35 -0
  37. data/package/rules/__tests__/index.js +11 -0
  38. data/package/rules/__tests__/raw.js +18 -0
  39. data/package/rules/esbuild.js +23 -0
  40. data/package/rules/file.js +14 -18
  41. data/package/rules/index.js +1 -0
  42. data/package/rules/raw.js +2 -2
  43. data/package/swc/index.js +3 -3
  44. data/package.json +2 -1
  45. data/test/configuration_test.rb +24 -3
  46. data/test/fixtures/beta_package.json +13 -0
  47. data/test/fixtures/git_url_package.json +13 -0
  48. data/test/fixtures/github_url_package.json +13 -0
  49. data/test/fixtures/normal_package.json +13 -0
  50. data/test/fixtures/relative_path_package.json +13 -0
  51. data/test/fixtures/semver_caret_package.json +13 -0
  52. data/test/fixtures/semver_tilde_package.json +13 -0
  53. data/test/fixtures/without_package.json +13 -0
  54. data/test/helper_test.rb +12 -12
  55. data/test/test_app/config/webpacker.yml +4 -0
  56. data/test/test_app/config/webpacker_manifest_path.yml +80 -0
  57. data/test/version_checker_test.rb +271 -0
  58. data/test/webpacker_test.rb +15 -0
  59. data/webpacker.gemspec +1 -1
  60. data/yarn.lock +145 -1
  61. metadata +35 -6
@@ -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/webpacker.gemspec CHANGED
@@ -15,7 +15,7 @@ Gem::Specification.new do |s|
15
15
  "source_code_uri" => "https://github.com/shakacode/shakapacker/tree/v#{npm_version}",
16
16
  }
17
17
 
18
- s.required_ruby_version = ">= 2.7.0"
18
+ s.required_ruby_version = ">= 2.6.0"
19
19
 
20
20
  s.add_dependency "activesupport", ">= 5.2"
21
21
  s.add_dependency "railties", ">= 5.2"
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.beta.0
4
+ version: 6.2.0
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-01-28 00:00:00.000000000 Z
13
+ date: 2022-03-22 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
@@ -142,13 +142,16 @@ 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
149
151
  - gemfiles/Gemfile-rails.5.2.x
150
152
  - gemfiles/Gemfile-rails.6.0.x
151
153
  - gemfiles/Gemfile-rails.6.1.x
154
+ - gemfiles/Gemfile-rails.7.0.x
152
155
  - lib/install/application.js
153
156
  - lib/install/bin/webpacker
154
157
  - lib/install/bin/webpacker-dev-server
@@ -189,6 +192,7 @@ files:
189
192
  - lib/webpacker/railtie.rb
190
193
  - lib/webpacker/runner.rb
191
194
  - lib/webpacker/version.rb
195
+ - lib/webpacker/version_checker.rb
192
196
  - lib/webpacker/webpack_runner.rb
193
197
  - package.json
194
198
  - package/__tests__/config.js
@@ -209,12 +213,17 @@ files:
209
213
  - package/environments/development.js
210
214
  - package/environments/production.js
211
215
  - package/environments/test.js
216
+ - package/esbuild/index.js
212
217
  - package/index.js
213
218
  - package/inliningCss.js
219
+ - package/rules/__tests__/file.js
220
+ - package/rules/__tests__/index.js
221
+ - package/rules/__tests__/raw.js
214
222
  - package/rules/babel.js
215
223
  - package/rules/coffee.js
216
224
  - package/rules/css.js
217
225
  - package/rules/erb.js
226
+ - package/rules/esbuild.js
218
227
  - package/rules/file.js
219
228
  - package/rules/index.js
220
229
  - package/rules/less.js
@@ -233,6 +242,14 @@ files:
233
242
  - test/dev_server_test.rb
234
243
  - test/engine_rake_tasks_test.rb
235
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
236
253
  - test/helper_test.rb
237
254
  - test/manifest_test.rb
238
255
  - test/mounted_app/Rakefile
@@ -257,6 +274,7 @@ files:
257
274
  - test/test_app/config/initializers/inspect_autoload_paths.rb
258
275
  - test/test_app/config/webpack/webpack.config.js
259
276
  - test/test_app/config/webpacker.yml
277
+ - test/test_app/config/webpacker_manifest_path.yml
260
278
  - test/test_app/config/webpacker_other_location.yml
261
279
  - test/test_app/config/webpacker_public_root.yml
262
280
  - test/test_app/package.json
@@ -264,6 +282,7 @@ files:
264
282
  - test/test_app/some.config.js
265
283
  - test/test_app/yarn.lock
266
284
  - test/test_helper.rb
285
+ - test/version_checker_test.rb
267
286
  - test/webpack_runner_test.rb
268
287
  - test/webpacker_test.rb
269
288
  - webpacker.gemspec
@@ -272,7 +291,7 @@ homepage: https://github.com/shakacode/shakapacker
272
291
  licenses:
273
292
  - MIT
274
293
  metadata:
275
- source_code_uri: https://github.com/shakacode/shakapacker/tree/v6.1.0.beta.0
294
+ source_code_uri: https://github.com/shakacode/shakapacker/tree/v6.2.0
276
295
  post_install_message:
277
296
  rdoc_options: []
278
297
  require_paths:
@@ -281,12 +300,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
281
300
  requirements:
282
301
  - - ">="
283
302
  - !ruby/object:Gem::Version
284
- version: 2.7.0
303
+ version: 2.6.0
285
304
  required_rubygems_version: !ruby/object:Gem::Requirement
286
305
  requirements:
287
- - - ">"
306
+ - - ">="
288
307
  - !ruby/object:Gem::Version
289
- version: 1.3.1
308
+ version: '0'
290
309
  requirements: []
291
310
  rubygems_version: 3.2.32
292
311
  signing_key:
@@ -300,6 +319,14 @@ test_files:
300
319
  - test/dev_server_test.rb
301
320
  - test/engine_rake_tasks_test.rb
302
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
303
330
  - test/helper_test.rb
304
331
  - test/manifest_test.rb
305
332
  - test/mounted_app/Rakefile
@@ -324,6 +351,7 @@ test_files:
324
351
  - test/test_app/config/initializers/inspect_autoload_paths.rb
325
352
  - test/test_app/config/webpack/webpack.config.js
326
353
  - test/test_app/config/webpacker.yml
354
+ - test/test_app/config/webpacker_manifest_path.yml
327
355
  - test/test_app/config/webpacker_other_location.yml
328
356
  - test/test_app/config/webpacker_public_root.yml
329
357
  - test/test_app/package.json
@@ -331,5 +359,6 @@ test_files:
331
359
  - test/test_app/some.config.js
332
360
  - test/test_app/yarn.lock
333
361
  - test/test_helper.rb
362
+ - test/version_checker_test.rb
334
363
  - test/webpack_runner_test.rb
335
364
  - test/webpacker_test.rb