webpacker 6.0.0.beta.6 → 6.0.0.rc.6

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 (75) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/jest.yml +7 -15
  3. data/.github/workflows/js-lint.yml +7 -15
  4. data/.github/workflows/rubocop.yml +1 -1
  5. data/.github/workflows/ruby.yml +15 -40
  6. data/.node-version +1 -1
  7. data/.rubocop.yml +107 -1
  8. data/CHANGELOG.md +36 -13
  9. data/CONTRIBUTING.md +19 -0
  10. data/Gemfile.lock +105 -104
  11. data/README.md +183 -170
  12. data/config/webpacker.yml +1 -1
  13. data/docs/deployment.md +128 -0
  14. data/docs/developing_webpacker.md +29 -0
  15. data/docs/troubleshooting.md +57 -23
  16. data/docs/v6_upgrade.md +113 -0
  17. data/gemfiles/Gemfile-rails-edge +1 -1
  18. data/gemfiles/Gemfile-rails.6.1.x +12 -0
  19. data/lib/install/{packs/entrypoints/application.js → application.js} +3 -8
  20. data/lib/install/bin/webpack +4 -7
  21. data/lib/install/bin/yarn +18 -0
  22. data/lib/install/config/webpacker.yml +19 -20
  23. data/lib/install/package.json +15 -0
  24. data/lib/install/template.rb +48 -19
  25. data/lib/tasks/webpacker/binstubs.rake +2 -2
  26. data/lib/tasks/webpacker/check_node.rake +3 -0
  27. data/lib/tasks/webpacker/check_yarn.rake +4 -1
  28. data/lib/tasks/webpacker/clobber.rake +1 -1
  29. data/lib/tasks/webpacker/install.rake +2 -2
  30. data/lib/tasks/webpacker/verify_config.rake +14 -0
  31. data/lib/tasks/webpacker/verify_install.rake +1 -11
  32. data/lib/tasks/yarn.rake +38 -0
  33. data/lib/webpacker/commands.rb +19 -15
  34. data/lib/webpacker/configuration.rb +19 -8
  35. data/lib/webpacker/dev_server.rb +6 -0
  36. data/lib/webpacker/dev_server_runner.rb +6 -3
  37. data/lib/webpacker/env.rb +5 -1
  38. data/lib/webpacker/helper.rb +14 -8
  39. data/lib/webpacker/instance.rb +4 -0
  40. data/lib/webpacker/manifest.rb +1 -2
  41. data/lib/webpacker/railtie.rb +8 -2
  42. data/lib/webpacker/runner.rb +1 -1
  43. data/lib/webpacker/version.rb +1 -1
  44. data/lib/webpacker/webpack_runner.rb +27 -7
  45. data/lib/webpacker.rb +1 -1
  46. data/package/__tests__/development.js +4 -11
  47. data/package/__tests__/env.js +8 -4
  48. data/package/babel/preset.js +0 -1
  49. data/package/config.js +3 -3
  50. data/package/env.js +6 -3
  51. data/package/environments/__tests__/base.js +3 -3
  52. data/package/environments/base.js +13 -13
  53. data/package/environments/development.js +36 -36
  54. data/package/environments/production.js +1 -1
  55. data/package/index.js +2 -0
  56. data/package/inliningCss.js +7 -0
  57. data/package/rules/file.js +1 -1
  58. data/package/rules/sass.js +1 -2
  59. data/package/utils/get_style_rule.js +4 -2
  60. data/package.json +25 -29
  61. data/test/command_test.rb +76 -0
  62. data/test/configuration_test.rb +1 -1
  63. data/test/dev_server_runner_test.rb +5 -2
  64. data/test/helper_test.rb +48 -34
  65. data/test/manifest_test.rb +10 -2
  66. data/test/mounted_app/test/dummy/config/webpacker.yml +2 -2
  67. data/test/test_app/config/initializers/inspect_autoload_paths.rb +1 -0
  68. data/test/test_app/config/webpacker.yml +2 -4
  69. data/test/test_app/config/webpacker_other_location.yml +79 -0
  70. data/test/test_app/public/packs/manifest.json +12 -5
  71. data/test/webpacker_test.rb +21 -0
  72. data/webpacker.gemspec +2 -2
  73. data/yarn.lock +2357 -3262
  74. metadata +24 -12
  75. data/6_0_upgrade.md +0 -62
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3e389b1e654d5e3b6e50adb6a908c94cb1039e978b119f32c49c07813f0733ca
4
- data.tar.gz: 4843befc313e31f85996e36ce59c994f8c3842e82034da51872a2a4f8cb0e5d7
3
+ metadata.gz: bb700e8975b2ec865da84e152fea23586c8e7a2a428465230255ab97ebe482ce
4
+ data.tar.gz: c2a023d554364442cd356771cad8b42226a3d6ce3a4708b6a5603151aad886ba
5
5
  SHA512:
6
- metadata.gz: 8238ffb0c0b369bbffdf26766a237ca9ab059989aa79c9fa752fe8f217a79ee2985d00ec52861b7320fe2a5610d5df48941ddb597995bf95c846b381a3f7544d
7
- data.tar.gz: ce30d8500790565854a174e2ab67598a4fa7ff90eb67a226fb182861baba8d4bb7446958c0457c9b22aedaf345438f69f6542f52a672a6fa2204882220d5d277
6
+ metadata.gz: bb863173d2577d304c03a4e6d66eddc385a62950bf30af00ed29c4abb9039b0290402771f58c9ede11cf9f26d5945136997d78148590871b7247e13b4d3db7cf
7
+ data.tar.gz: a624efeabf2bdbd7b83b59aa2854e4ebda00c5c476849c03fc585d967810b30fd5d118fbf13f412c40cb6e7fa1fe020f619cc9ede0cd72989c25504f3f8e0e53
@@ -3,33 +3,25 @@ name: Jest specs
3
3
  on: [push, pull_request]
4
4
 
5
5
  jobs:
6
- build:
6
+ jest:
7
7
  name: Jest specs
8
8
  strategy:
9
9
  matrix:
10
10
  os: [ubuntu-latest]
11
- node: [10.x, 12.x, 14.x, 15.x]
11
+ node: [12.x, 14.x, 16.x]
12
12
 
13
13
  runs-on: ${{ matrix.os }}
14
14
 
15
15
  steps:
16
16
  - uses: actions/checkout@v2
17
- - name: Get yarn cache directory path
18
- id: yarn-cache-dir-path
19
- run: echo "::set-output name=dir::$(yarn cache dir)"
20
-
21
- - uses: actions/cache@v2
22
- id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
23
- with:
24
- path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
25
- key: ${{ runner.os }}-${{ matrix.node }}-yarn-${{ hashFiles('**/yarn.lock') }}
26
- restore-keys: |
27
- ${{ runner.os }}-${{ matrix.node }}-yarn-
28
-
29
17
  - name: Use Node.js ${{ matrix.node }}
30
- uses: actions/setup-node@v1
18
+ uses: actions/setup-node@v2
31
19
  with:
32
20
  node-version: ${{ matrix.node }}
21
+ cache: yarn
22
+
23
+ - name: Install yarn maybe
24
+ run: which yarn || npm install -g yarn
33
25
 
34
26
  - name: Install dependencies
35
27
  run: yarn --frozen-lockfile
@@ -3,34 +3,26 @@ name: JS lint
3
3
  on: [push, pull_request]
4
4
 
5
5
  jobs:
6
- build:
6
+ js-lint:
7
7
  name: JS Lint
8
8
 
9
9
  strategy:
10
10
  matrix:
11
11
  os: [ubuntu-latest]
12
- node: [14.x]
12
+ node: [14]
13
13
 
14
14
  runs-on: ${{ matrix.os }}
15
15
 
16
16
  steps:
17
17
  - uses: actions/checkout@v2
18
- - name: Get yarn cache directory path
19
- id: yarn-cache-dir-path
20
- run: echo "::set-output name=dir::$(yarn cache dir)"
21
-
22
- - uses: actions/cache@v2
23
- id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
24
- with:
25
- path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
26
- key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
27
- restore-keys: |
28
- ${{ runner.os }}-yarn-
29
-
30
18
  - name: Use Node.js ${{ matrix.node }}
31
- uses: actions/setup-node@v1
19
+ uses: actions/setup-node@v2
32
20
  with:
33
21
  node-version: ${{ matrix.node }}
22
+ cache: yarn
23
+
24
+ - name: Install yarn maybe
25
+ run: which yarn || npm install -g yarn
34
26
 
35
27
  - name: Install dependencies
36
28
  run: yarn --frozen-lockfile
@@ -3,7 +3,7 @@ name: Rubocop
3
3
  on: [push, pull_request]
4
4
 
5
5
  jobs:
6
- build:
6
+ rubocop:
7
7
  name: Rubocop
8
8
  runs-on: ${{ matrix.os }}
9
9
  env:
@@ -3,71 +3,46 @@ name: Ruby specs
3
3
  on: [push, pull_request]
4
4
 
5
5
  jobs:
6
- build:
6
+ test:
7
7
  name: Ruby specs
8
8
  runs-on: ${{ matrix.os }}
9
9
  continue-on-error: ${{ endsWith(matrix.ruby, 'head') || matrix.ruby == 'debug' || matrix.experimental }}
10
- env:
11
- BUNDLE_JOBS: 4
12
- BUNDLE_RETRY: 3
13
10
  strategy:
14
11
  fail-fast: false
15
12
  matrix:
16
13
  os: [ubuntu-latest]
17
- ruby: [
18
- 2.4,
19
- 2.5,
20
- 2.6,
21
- 2.7,
22
- 3.0
23
- ]
24
- gemfile: [
25
- "gemfiles/Gemfile-rails.5.2.x",
26
- "gemfiles/Gemfile-rails.6.0.x"
27
- ]
14
+ ruby:
15
+ - 2.7
16
+ - "3.0"
17
+ gemfile:
18
+ - gemfiles/Gemfile-rails.5.2.x
19
+ - gemfiles/Gemfile-rails.6.0.x
20
+ - gemfiles/Gemfile-rails.6.1.x
28
21
  exclude:
29
- - ruby: "2.4"
30
- gemfile: gemfiles/Gemfile-rails.6.0.x
22
+ - ruby: 2.5
23
+ gemfile: gemfiles/Gemfile-rails.6.1.x
31
24
  - ruby: "3.0"
32
25
  gemfile: gemfiles/Gemfile-rails.5.2.x
33
26
  experimental: [false]
34
27
  include:
35
- - ruby: 2.5
36
- os: ubuntu-latest
37
- gemfile: gemfiles/Gemfile-rails-edge
38
- experimental: true
39
- - ruby: 2.6
40
- os: ubuntu-latest
41
- gemfile: gemfiles/Gemfile-rails-edge
42
- experimental: true
43
28
  - ruby: 2.7
44
29
  os: ubuntu-latest
45
30
  gemfile: gemfiles/Gemfile-rails-edge
46
31
  experimental: true
47
- - ruby: 3.0
32
+ - ruby: "3.0"
48
33
  os: ubuntu-latest
49
34
  gemfile: gemfiles/Gemfile-rails-edge
50
35
  experimental: true
51
36
 
37
+ env:
38
+ BUNDLE_GEMFILE: ${{ matrix.gemfile }}
52
39
  steps:
53
40
  - uses: actions/checkout@v2
54
- - uses: actions/cache@v2
55
- with:
56
- path: /home/runner/bundle
57
- key: bundle-use-ruby-${{ matrix.ruby }}-${{ matrix.gemfile }}-gems-${{ hashFiles(matrix.gemfile) }}-${{ hashFiles('**/*.gemspec') }}
58
- restore-keys: |
59
- bundle-use-ruby-${{ matrix.ruby }}-${{ matrix.gemfile }}-gems-
60
41
 
61
42
  - uses: ruby/setup-ruby@v1
62
43
  with:
63
44
  ruby-version: ${{ matrix.ruby }}
64
-
65
- - name: Bundle install
66
- run: |
67
- gem install bundler -v 2.1.4
68
- bundle config path /home/runner/bundle
69
- bundle config --global gemfile ${{ matrix.gemfile }}
70
- bundle install --jobs 4 --retry 3
45
+ bundler-cache: true # Run "bundle install", and cache the result automatically.
71
46
 
72
47
  - name: Ruby specs
73
- run: bundle exec rake test
48
+ run: bundle exec rake
data/.node-version CHANGED
@@ -1 +1 @@
1
- 10.22.1
1
+ 16.7.0
data/.rubocop.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  require: rubocop-performance
2
2
  AllCops:
3
- TargetRubyVersion: 2.4
3
+ TargetRubyVersion: 2.7
4
4
  # RuboCop has a bunch of cops enabled by default. This setting tells RuboCop
5
5
  # to ignore them, so only the ones explicitly set in this file are enabled.
6
6
  DisabledByDefault: true
@@ -8,6 +8,7 @@ AllCops:
8
8
  - "lib/install/templates/**"
9
9
  - "vendor/**/*"
10
10
  - "node_modules/**/*"
11
+ - "_actions/**/*"
11
12
 
12
13
  # Prefer &&/|| over and/or.
13
14
  Style/AndOr:
@@ -118,3 +119,108 @@ Layout/EndAlignment:
118
119
  # Use my_method(my_arg) not my_method( my_arg ) or my_method my_arg.
119
120
  Lint/RequireParentheses:
120
121
  Enabled: true
122
+
123
+ # Use `bind_call(obj, args, ...)` instead of `bind(obj).call(args, ...)`.
124
+ Performance/BindCall:
125
+ Enabled: true
126
+
127
+ # Use `caller(n..n)` instead of `caller`.
128
+ Performance/Caller:
129
+ Enabled: true
130
+
131
+ # Use `casecmp` for case comparison.
132
+ Performance/Casecmp:
133
+ Enabled: true
134
+
135
+ # Extract Array and Hash literals outside of loops into local variables or constants.
136
+ Performance/CollectionLiteralInLoop:
137
+ Enabled: true
138
+
139
+ # Prefer `sort_by(&:foo)` instead of `sort { |a, b| a.foo <=> b.foo }`.
140
+ Performance/CompareWithBlock:
141
+ Enabled: true
142
+
143
+ # Use `count` instead of `{select,find_all,filter,reject}...{size,count,length}`.
144
+ Performance/Count:
145
+ Enabled: true
146
+
147
+ # Use `delete_prefix` instead of `gsub`.
148
+ Performance/DeletePrefix:
149
+ Enabled: true
150
+
151
+ # Use `delete_suffix` instead of `gsub`.
152
+ Performance/DeleteSuffix:
153
+ Enabled: true
154
+
155
+ # Use `detect` instead of `select.first`, `find_all.first`, `filter.first`, `select.last`, `find_all.last`, and `filter.last`.
156
+ Performance/Detect:
157
+ Enabled: true
158
+
159
+ # Use `str.{start,end}_with?(x, ..., y, ...)` instead of `str.{start,end}_with?(x, ...) || str.{start,end}_with?(y, ...)`.
160
+ Performance/DoubleStartEndWith:
161
+ Enabled: true
162
+
163
+ # Use `end_with?` instead of a regex match anchored to the end of a string.
164
+ Performance/EndWith:
165
+ Enabled: true
166
+
167
+ # Do not compute the size of statically sized objects except in constants.
168
+ Performance/FixedSize:
169
+ Enabled: true
170
+
171
+ # Use `Enumerable#flat_map` instead of `Enumerable#map...Array#flatten(1).
172
+ Performance/FlatMap:
173
+ Enabled: true
174
+
175
+ # Use `key?` or `value?` instead of `keys.include?` or `values.include?`.
176
+ Performance/InefficientHashSearch:
177
+ Enabled: true
178
+
179
+ # Use `Range#cover?` instead of `Range#include?` (or `Range#member?`).
180
+ Performance/RangeInclude:
181
+ Enabled: true
182
+
183
+ # Use `yield` instead of `block.call`.
184
+ Performance/RedundantBlockCall:
185
+ Enabled: true
186
+
187
+ # Use `=~` instead of `String#match` or `Regexp#match` in a context where the returned `MatchData` is not needed.
188
+ Performance/RedundantMatch:
189
+ Enabled: true
190
+
191
+ # Use Hash#[]=, rather than Hash#merge! with a single key-value pair.
192
+ Performance/RedundantMerge:
193
+ Enabled: true
194
+
195
+ # Use `match?` instead of `Regexp#match`, `String#match`, `Symbol#match`, `Regexp#===`, or `=~` when `MatchData` is not used.
196
+ Performance/RegexpMatch:
197
+ Enabled: true
198
+
199
+ # Use `reverse_each` instead of `reverse.each`.
200
+ Performance/ReverseEach:
201
+ Enabled: true
202
+
203
+ # Use `size` instead of `count` for counting the number of elements in `Array` and `Hash`.
204
+ Performance/Size:
205
+ Enabled: true
206
+
207
+ # Use `start_with?` instead of a regex match anchored to the beginning of a string.
208
+ Performance/StartWith:
209
+ Enabled: true
210
+
211
+ # Use `tr` instead of `gsub` when you are replacing the same number of characters.
212
+ # Use `delete` instead of `gsub` when you are deleting characters.
213
+ Performance/StringReplacement:
214
+ Enabled: true
215
+
216
+ # Checks for .times.map calls.
217
+ Performance/TimesMap:
218
+ Enabled: true
219
+
220
+ # Use unary plus to get an unfrozen string literal.
221
+ Performance/UnfreezeString:
222
+ Enabled: true
223
+
224
+ # Use `URI::DEFAULT_PARSER` instead of `URI::Parser.new`.
225
+ Performance/UriDefaultParser:
226
+ Enabled: true
data/CHANGELOG.md CHANGED
@@ -2,7 +2,9 @@
2
2
 
3
3
  **Please note that Webpacker 4.1.0 has an installer bug. Please use 4.2.0 or above**
4
4
 
5
- ## [[6.0.0]](https://github.com/rails/webpacker/compare/v5.1.1...master) - 2021-TBD
5
+ ## [[6.0.0]](https://github.com/rails/webpacker/compare/v5.4.3...master) - 2021-TBD
6
+
7
+ Please see [UPGRADE GUIDE](./docs/v6_upgrade.md) for more information.
6
8
 
7
9
  - `node_modules` will no longer be compiled by default. This primarily fixes [rails issue #35501](https://github.com/rails/rails/issues/35501) as well as [numerous other webpacker issues](https://github.com/rails/webpacker/issues/2131#issuecomment-581618497). The disabled loader can still be required explicitly via:
8
10
 
@@ -12,28 +14,49 @@ environment.loaders.append('nodeModules', nodeModules)
12
14
  ```
13
15
 
14
16
  - If you have added `environment.loaders.delete('nodeModules')` to your `environment.js`, this must be removed or you will receive an error (`Item nodeModules not found`).
15
- - The install task will now set the `extract_css` default to `true` in all environments and generate a separate `application.css` file for the default `application` pack, as supported by multiple files per entry introduced in 5.0.0. [#2608](https://github.com/rails/webpacker/pull/2608)
17
+ - `extract_css` option was removed. Webpacker will generate a separate `application.css` file for the default `application` pack, as supported by multiple files per entry introduced in 5.0.0. [#2608](https://github.com/rails/webpacker/pull/2608). However, CSS will be inlined when the webpack-dev-server is used with `hmr: true`. JS package exports `inliningCss`. This is useful to enable HMR for React.
16
18
  - Webpacker's wrapper to the `splitChunks()` API will now default `runtimeChunk: 'single'` which will help prevent potential issues when using multiple entry points per page [#2708](https://github.com/rails/webpacker/pull/2708).
17
19
  - Changes `@babel/preset-env` modules option to `'auto'` per recommendation in the Babel docs [#2709](https://github.com/rails/webpacker/pull/2709)
18
20
  - Adds experimental Yarn 2 support. Note you must manually set `nodeLinker: node-modules` in your `.yarnrc.yml`.
19
-
20
21
  - Fixes dev server issues [#2898](https://github.com/rails/webpacker/pull/2898)
22
+ - Update static files path to from `media/` to `static/`.
21
23
 
22
24
  ### Breaking changes
23
-
24
- - Simple webpack config
25
25
  - Removed integration installers
26
26
  - Splitchunks enabled by default
27
- - CSS extraction enabled by default
28
- - Optional CSS support
27
+ - CSS extraction enabled by default, except when devServer is configured and running
28
+
29
+ ## [[5.4.3]](https://github.com/rails/webpacker/compare/v5.4.2...v5.4.3) - 2021-09-14
30
+
31
+ - Specify webpack-dev-server to be v3, to avoid getting webpack-dev-server v4 ([#3121](https://github.com/rails/webpacker/pull/3121))
32
+
33
+ ## [[5.4.2]](https://github.com/rails/webpacker/compare/v5.4.1...v5.4.2) - 2021-08-20
34
+
35
+ - Fix babel warning about private-methods in `@babel/plugin-proposal-private-property-in-object` as well ([67fa6edf](https://github.com/rails/webpacker/commit/67fa6edf697340cbd5a5518afebac871ef74769b)).
36
+
37
+ ## [[5.4.1]](https://github.com/rails/webpacker/compare/v5.4.0...v5.4.1) - 2021-08-20
38
+
39
+ - Update all dependencies within the same major version ([#3120](https://github.com/rails/webpacker/pull/3120))
40
+ - Fix babel warning about private-methods ([#3016](https://github.com/rails/webpacker/pull/3016))
41
+
42
+ ## [[5.4.0]](https://github.com/rails/webpacker/compare/v5.3.0...v5.4.0) - 2021-05-18
43
+
44
+ - Fix compatibility with Psych 4 ([ceaf826d](https://github.com/rails/webpacker/commit/ceaf826d84230aaadbefdbaaf560d474a96affcc))
45
+
46
+ ## [[5.3.0]](https://github.com/rails/webpacker/compare/v5.2.1...v5.3.0) - 2021-04-27
47
+
48
+ - Adds experimental Yarn 2 support. Note you must manually set `nodeLinker: node-modules` in your `.yarnrc.yml`.
49
+ - Keep backups, even when they're old [#2912](https://github.com/rails/webpacker/pull/2912)
50
+
51
+ ## [[5.2.2]](https://github.com/rails/webpacker/compare/v5.2.1...v5.2.2) - 2021-04-27
29
52
 
30
- Please see upgrade [guide](./6_0_upgrade.md)
53
+ - Bump deps and remove node-sass [#2997](https://github.com/rails/webpacker/pull/2997).
31
54
 
32
- ## [[5.2.1]](https://github.com/rails/webpacker/compare/v5.2.0...5.2.1) - 2020-08-17
55
+ ## [[5.2.1]](https://github.com/rails/webpacker/compare/v5.2.0...v5.2.1) - 2020-08-17
33
56
 
34
57
  - Revert [#1311](https://github.com/rails/webpacker/pull/1311).
35
58
 
36
- ## [[5.2.0]](https://github.com/rails/webpacker/compare/v5.1.1...5.2.0) - 2020-08-16
59
+ ## [[5.2.0]](https://github.com/rails/webpacker/compare/v5.1.1...v5.2.0) - 2020-08-16
37
60
 
38
61
  - Bump dependencies and fixes. See [diff](https://github.com/rails/webpacker/compare/v5.1.1...5-x-stable) for changes.
39
62
 
@@ -412,7 +435,7 @@ See changes: https://github.com/rails/webpacker/compare/e8b197e36c77181ca2e4765c
412
435
 
413
436
  ### Added
414
437
 
415
- - On CI, sort files & check modified w/ digest intead of mtime[#1522](https://github.com/rails/webpacker/pull/1522)
438
+ - On CI, sort files & check modified w/ digest instead of mtime[#1522](https://github.com/rails/webpacker/pull/1522)
416
439
 
417
440
  ## [3.5.3] - 2018-05-03
418
441
 
@@ -806,11 +829,11 @@ yarn add coffeescript
806
829
 
807
830
  ### Added
808
831
 
809
- - `resolved_paths` option to allow adding additional paths webpack should lookup when resolving modules
832
+ - `resolved_paths` option to allow adding additional paths webpack should look up when resolving modules
810
833
 
811
834
  ```yml
812
835
  # config/webpacker.yml
813
- # Additional paths webpack should lookup modules
836
+ # Additional paths webpack should look up modules
814
837
  resolved_paths: [] # empty by default
815
838
  ```
816
839
 
data/CONTRIBUTING.md CHANGED
@@ -3,31 +3,50 @@
3
3
  1. Install [Yarn](https://yarnpkg.com/)
4
4
 
5
5
  2. Run the following commands to set up the development environment.
6
+
6
7
  ```
7
8
  bundle install
8
9
  yarn
9
10
  ```
10
11
 
11
12
  ## Making sure your changes pass all tests
13
+
12
14
  There are a number of automated checks which run on GitHub Actions when a pull request is created.
15
+
13
16
  You can run those checks on your own locally to make sure that your changes would not break the CI build.
14
17
 
15
18
  ### 1. Check the code for JavaScript style violations
19
+
16
20
  ```
17
21
  yarn lint
18
22
  ```
19
23
 
20
24
  ### 2. Check the code for Ruby style violations
25
+
21
26
  ```
22
27
  bundle exec rubocop
23
28
  ```
24
29
 
25
30
  ### 3. Run the JavaScript test suite
31
+
26
32
  ```
27
33
  yarn test
28
34
  ```
29
35
 
30
36
  ### 4. Run the Ruby test suite
37
+
31
38
  ```
32
39
  bundle exec rake test
33
40
  ```
41
+
42
+ #### 4.1 Run a single ruby test file
43
+
44
+ ```
45
+ bundle exec rake test TEST=test/rake_tasks_test.rb
46
+ ```
47
+
48
+ #### 4.2 Run a single ruby test
49
+
50
+ ```
51
+ ruby -I test test/rake_tasks_test.rb -n test_rake_webpacker_install
52
+ ```