webpacker 4.3.0 → 5.4.0

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 (84) hide show
  1. checksums.yaml +4 -4
  2. data/.eslintrc.js +8 -8
  3. data/.github/workflows/jest.yml +38 -0
  4. data/.github/workflows/js-lint.yml +39 -0
  5. data/.github/workflows/rubocop.yml +39 -0
  6. data/.github/workflows/ruby.yml +66 -0
  7. data/.node-version +1 -1
  8. data/.rubocop.yml +113 -13
  9. data/.travis.yml +8 -22
  10. data/CHANGELOG.md +52 -2
  11. data/Gemfile +1 -0
  12. data/Gemfile.lock +116 -104
  13. data/README.md +59 -295
  14. data/docs/css.md +61 -7
  15. data/docs/deployment.md +2 -2
  16. data/docs/docker.md +17 -17
  17. data/docs/engines.md +13 -0
  18. data/docs/env.md +0 -2
  19. data/docs/integrations.md +220 -0
  20. data/docs/target.md +22 -0
  21. data/docs/testing.md +2 -3
  22. data/docs/troubleshooting.md +3 -1
  23. data/docs/typescript.md +92 -28
  24. data/docs/webpack-dev-server.md +1 -1
  25. data/lib/install/config/babel.config.js +1 -3
  26. data/lib/install/config/webpacker.yml +1 -5
  27. data/lib/install/examples/react/tsconfig.json +2 -1
  28. data/lib/install/examples/typescript/tsconfig.json +2 -1
  29. data/lib/install/loaders/svelte.js +2 -2
  30. data/lib/install/template.rb +10 -2
  31. data/lib/install/typescript.rb +6 -13
  32. data/lib/tasks/webpacker/check_node.rake +15 -8
  33. data/lib/tasks/webpacker/check_yarn.rake +16 -10
  34. data/lib/tasks/webpacker/clean.rake +12 -6
  35. data/lib/tasks/webpacker/clobber.rake +8 -4
  36. data/lib/tasks/webpacker/yarn_install.rake +11 -16
  37. data/lib/webpacker/commands.rb +33 -9
  38. data/lib/webpacker/compiler.rb +9 -5
  39. data/lib/webpacker/configuration.rb +28 -13
  40. data/lib/webpacker/dev_server_proxy.rb +3 -1
  41. data/lib/webpacker/dev_server_runner.rb +6 -6
  42. data/lib/webpacker/env.rb +5 -1
  43. data/lib/webpacker/helper.rb +37 -18
  44. data/lib/webpacker/manifest.rb +4 -4
  45. data/lib/webpacker/railtie.rb +0 -43
  46. data/lib/webpacker/runner.rb +1 -0
  47. data/lib/webpacker/version.rb +1 -1
  48. data/lib/webpacker/webpack_runner.rb +2 -2
  49. data/package.json +41 -41
  50. data/package/__tests__/config.js +12 -1
  51. data/package/__tests__/dev_server.js +2 -0
  52. data/package/__tests__/development.js +14 -1
  53. data/package/config.js +4 -1
  54. data/package/configPath.js +3 -0
  55. data/package/dev_server.js +1 -1
  56. data/package/env.js +1 -2
  57. data/package/environments/__tests__/base.js +29 -2
  58. data/package/environments/base.js +17 -7
  59. data/package/environments/development.js +39 -37
  60. data/package/environments/production.js +1 -3
  61. data/package/rules/babel.js +12 -5
  62. data/package/rules/file.js +3 -2
  63. data/package/rules/node_modules.js +1 -3
  64. data/package/rules/sass.js +10 -1
  65. data/package/utils/helpers.js +1 -1
  66. data/test/compiler_test.rb +8 -3
  67. data/test/configuration_test.rb +8 -7
  68. data/test/dev_server_runner_test.rb +1 -1
  69. data/test/helper_test.rb +3 -0
  70. data/test/manifest_test.rb +37 -6
  71. data/test/rake_tasks_test.rb +11 -0
  72. data/test/test_app/app/javascript/packs/multi_entry.css +4 -0
  73. data/test/test_app/app/javascript/packs/multi_entry.js +4 -0
  74. data/test/test_app/config/application.rb +0 -1
  75. data/test/test_app/config/webpacker.yml +7 -1
  76. data/test/test_app/public/packs/manifest.json +1 -0
  77. data/test/webpack_runner_test.rb +1 -1
  78. data/webpacker.gemspec +5 -4
  79. data/yarn.lock +4237 -3407
  80. metadata +43 -22
  81. data/gemfiles/Gemfile-rails.4.2.x +0 -9
  82. data/gemfiles/Gemfile-rails.5.0.x +0 -9
  83. data/gemfiles/Gemfile-rails.5.1.x +0 -9
  84. data/lib/install/loaders/typescript.js +0 -11
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: webpacker
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.3.0
4
+ version: 5.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
8
8
  - Gaurav Tiwari
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-08-16 00:00:00.000000000 Z
12
+ date: 2021-05-18 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -17,28 +17,28 @@ dependencies:
17
17
  requirements:
18
18
  - - ">="
19
19
  - !ruby/object:Gem::Version
20
- version: '4.2'
20
+ version: '5.2'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - ">="
26
26
  - !ruby/object:Gem::Version
27
- version: '4.2'
27
+ version: '5.2'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: railties
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - ">="
33
33
  - !ruby/object:Gem::Version
34
- version: '4.2'
34
+ version: '5.2'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - ">="
40
40
  - !ruby/object:Gem::Version
41
- version: '4.2'
41
+ version: '5.2'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: rack-proxy
44
44
  requirement: !ruby/object:Gem::Requirement
@@ -53,6 +53,20 @@ dependencies:
53
53
  - - ">="
54
54
  - !ruby/object:Gem::Version
55
55
  version: 0.6.1
56
+ - !ruby/object:Gem::Dependency
57
+ name: semantic_range
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: 2.3.0
63
+ type: :runtime
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: 2.3.0
56
70
  - !ruby/object:Gem::Dependency
57
71
  name: bundler
58
72
  requirement: !ruby/object:Gem::Requirement
@@ -71,16 +85,16 @@ dependencies:
71
85
  name: rubocop
72
86
  requirement: !ruby/object:Gem::Requirement
73
87
  requirements:
74
- - - "<"
88
+ - - '='
75
89
  - !ruby/object:Gem::Version
76
- version: '0.69'
90
+ version: 0.93.1
77
91
  type: :development
78
92
  prerelease: false
79
93
  version_requirements: !ruby/object:Gem::Requirement
80
94
  requirements:
81
- - - "<"
95
+ - - '='
82
96
  - !ruby/object:Gem::Version
83
- version: '0.69'
97
+ version: 0.93.1
84
98
  - !ruby/object:Gem::Dependency
85
99
  name: rubocop-performance
86
100
  requirement: !ruby/object:Gem::Requirement
@@ -95,7 +109,7 @@ dependencies:
95
109
  - - ">="
96
110
  - !ruby/object:Gem::Version
97
111
  version: '0'
98
- description:
112
+ description:
99
113
  email:
100
114
  - david@basecamp.com
101
115
  - gaurav@gauravtiwari.co.uk
@@ -105,6 +119,10 @@ extra_rdoc_files: []
105
119
  files:
106
120
  - ".eslintignore"
107
121
  - ".eslintrc.js"
122
+ - ".github/workflows/jest.yml"
123
+ - ".github/workflows/js-lint.yml"
124
+ - ".github/workflows/rubocop.yml"
125
+ - ".github/workflows/ruby.yml"
108
126
  - ".gitignore"
109
127
  - ".node-version"
110
128
  - ".rubocop.yml"
@@ -125,8 +143,10 @@ files:
125
143
  - docs/env.md
126
144
  - docs/es6.md
127
145
  - docs/folder-structure.md
146
+ - docs/integrations.md
128
147
  - docs/misc.md
129
148
  - docs/props.md
149
+ - docs/target.md
130
150
  - docs/testing.md
131
151
  - docs/troubleshooting.md
132
152
  - docs/typescript.md
@@ -135,9 +155,6 @@ files:
135
155
  - docs/webpack.md
136
156
  - docs/yarn.md
137
157
  - gemfiles/Gemfile-rails-edge
138
- - gemfiles/Gemfile-rails.4.2.x
139
- - gemfiles/Gemfile-rails.5.0.x
140
- - gemfiles/Gemfile-rails.5.1.x
141
158
  - gemfiles/Gemfile-rails.5.2.x
142
159
  - gemfiles/Gemfile-rails.6.0.x
143
160
  - lib/install/angular.rb
@@ -181,7 +198,6 @@ files:
181
198
  - lib/install/loaders/elm.js
182
199
  - lib/install/loaders/erb.js
183
200
  - lib/install/loaders/svelte.js
184
- - lib/install/loaders/typescript.js
185
201
  - lib/install/loaders/vue.js
186
202
  - lib/install/react.rb
187
203
  - lib/install/stimulus.rb
@@ -226,6 +242,7 @@ files:
226
242
  - package/__tests__/staging.js
227
243
  - package/__tests__/test.js
228
244
  - package/config.js
245
+ - package/configPath.js
229
246
  - package/config_types/__tests__/config_list.js
230
247
  - package/config_types/__tests__/config_object.js
231
248
  - package/config_types/config_list.js
@@ -267,6 +284,8 @@ files:
267
284
  - test/rake_tasks_test.rb
268
285
  - test/test_app/Rakefile
269
286
  - test/test_app/app/javascript/packs/application.js
287
+ - test/test_app/app/javascript/packs/multi_entry.css
288
+ - test/test_app/app/javascript/packs/multi_entry.js
270
289
  - test/test_app/bin/webpack
271
290
  - test/test_app/bin/webpack-dev-server
272
291
  - test/test_app/config.ru
@@ -287,9 +306,9 @@ homepage: https://github.com/rails/webpacker
287
306
  licenses:
288
307
  - MIT
289
308
  metadata:
290
- source_code_uri: https://github.com/rails/webpacker/tree/v4.3.0
291
- changelog_uri: https://github.com/rails/webpacker/blob/v4.3.0/CHANGELOG.md
292
- post_install_message:
309
+ source_code_uri: https://github.com/rails/webpacker/tree/v5.4.0
310
+ changelog_uri: https://github.com/rails/webpacker/blob/v5.4.0/CHANGELOG.md
311
+ post_install_message:
293
312
  rdoc_options: []
294
313
  require_paths:
295
314
  - lib
@@ -297,15 +316,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
297
316
  requirements:
298
317
  - - ">="
299
318
  - !ruby/object:Gem::Version
300
- version: 2.2.0
319
+ version: 2.4.0
301
320
  required_rubygems_version: !ruby/object:Gem::Requirement
302
321
  requirements:
303
322
  - - ">="
304
323
  - !ruby/object:Gem::Version
305
324
  version: '0'
306
325
  requirements: []
307
- rubygems_version: 3.0.3
308
- signing_key:
326
+ rubygems_version: 3.2.3
327
+ signing_key:
309
328
  specification_version: 4
310
329
  summary: Use webpack to manage app-like JavaScript modules in Rails
311
330
  test_files:
@@ -320,6 +339,8 @@ test_files:
320
339
  - test/rake_tasks_test.rb
321
340
  - test/test_app/Rakefile
322
341
  - test/test_app/app/javascript/packs/application.js
342
+ - test/test_app/app/javascript/packs/multi_entry.css
343
+ - test/test_app/app/javascript/packs/multi_entry.js
323
344
  - test/test_app/bin/webpack
324
345
  - test/test_app/bin/webpack-dev-server
325
346
  - test/test_app/config.ru
@@ -1,9 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gemspec path: "../"
4
-
5
- gem "rails", "~> 4.2.0"
6
- gem "rake", ">= 11.1"
7
- gem "rack-proxy", require: false
8
- gem "minitest", "~> 5.0"
9
- gem "byebug"
@@ -1,9 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gemspec path: "../"
4
-
5
- gem "rails", "~> 5.0.0"
6
- gem "rake", ">= 11.1"
7
- gem "rack-proxy", require: false
8
- gem "minitest", "~> 5.0"
9
- gem "byebug"
@@ -1,9 +0,0 @@
1
- source "https://rubygems.org"
2
-
3
- gemspec path: "../"
4
-
5
- gem "rails", "~> 5.1.0"
6
- gem "rake", ">= 11.1"
7
- gem "rack-proxy", require: false
8
- gem "minitest", "~> 5.0"
9
- gem "byebug"
@@ -1,11 +0,0 @@
1
- const PnpWebpackPlugin = require('pnp-webpack-plugin')
2
-
3
- module.exports = {
4
- test: /\.tsx?(\.erb)?$/,
5
- use: [
6
- {
7
- loader: 'ts-loader',
8
- options: PnpWebpackPlugin.tsLoaderOptions()
9
- }
10
- ]
11
- }