tiny-lite-sys 0.0.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 (177) hide show
  1. checksums.yaml +7 -0
  2. data/tiny-lite-sys.gemspec +11 -0
  3. data/webpacker-5.4.4/CHANGELOG.md +1074 -0
  4. data/webpacker-5.4.4/CONTRIBUTING.md +33 -0
  5. data/webpacker-5.4.4/Gemfile +13 -0
  6. data/webpacker-5.4.4/Gemfile.lock +183 -0
  7. data/webpacker-5.4.4/MIT-LICENSE +20 -0
  8. data/webpacker-5.4.4/README.md +427 -0
  9. data/webpacker-5.4.4/Rakefile +11 -0
  10. data/webpacker-5.4.4/docs/assets.md +119 -0
  11. data/webpacker-5.4.4/docs/cloud9.md +310 -0
  12. data/webpacker-5.4.4/docs/css.md +308 -0
  13. data/webpacker-5.4.4/docs/deployment.md +130 -0
  14. data/webpacker-5.4.4/docs/docker.md +68 -0
  15. data/webpacker-5.4.4/docs/engines.md +213 -0
  16. data/webpacker-5.4.4/docs/env.md +63 -0
  17. data/webpacker-5.4.4/docs/es6.md +72 -0
  18. data/webpacker-5.4.4/docs/folder-structure.md +66 -0
  19. data/webpacker-5.4.4/docs/integrations.md +220 -0
  20. data/webpacker-5.4.4/docs/misc.md +23 -0
  21. data/webpacker-5.4.4/docs/props.md +223 -0
  22. data/webpacker-5.4.4/docs/target.md +22 -0
  23. data/webpacker-5.4.4/docs/testing.md +136 -0
  24. data/webpacker-5.4.4/docs/troubleshooting.md +158 -0
  25. data/webpacker-5.4.4/docs/typescript.md +190 -0
  26. data/webpacker-5.4.4/docs/v4-upgrade.md +142 -0
  27. data/webpacker-5.4.4/docs/webpack-dev-server.md +92 -0
  28. data/webpacker-5.4.4/docs/webpack.md +364 -0
  29. data/webpacker-5.4.4/docs/yarn.md +23 -0
  30. data/webpacker-5.4.4/gemfiles/Gemfile-rails-edge +12 -0
  31. data/webpacker-5.4.4/gemfiles/Gemfile-rails.5.2.x +9 -0
  32. data/webpacker-5.4.4/gemfiles/Gemfile-rails.6.0.x +9 -0
  33. data/webpacker-5.4.4/lib/install/angular.rb +23 -0
  34. data/webpacker-5.4.4/lib/install/bin/webpack +18 -0
  35. data/webpacker-5.4.4/lib/install/bin/webpack-dev-server +18 -0
  36. data/webpacker-5.4.4/lib/install/binstubs.rb +4 -0
  37. data/webpacker-5.4.4/lib/install/coffee.rb +25 -0
  38. data/webpacker-5.4.4/lib/install/config/babel.config.js +82 -0
  39. data/webpacker-5.4.4/lib/install/config/postcss.config.js +12 -0
  40. data/webpacker-5.4.4/lib/install/config/webpack/development.js +5 -0
  41. data/webpacker-5.4.4/lib/install/config/webpack/environment.js +3 -0
  42. data/webpacker-5.4.4/lib/install/config/webpack/production.js +5 -0
  43. data/webpacker-5.4.4/lib/install/config/webpack/test.js +5 -0
  44. data/webpacker-5.4.4/lib/install/config/webpacker.yml +92 -0
  45. data/webpacker-5.4.4/lib/install/elm.rb +39 -0
  46. data/webpacker-5.4.4/lib/install/erb.rb +25 -0
  47. data/webpacker-5.4.4/lib/install/examples/angular/hello_angular/app/app.component.ts +9 -0
  48. data/webpacker-5.4.4/lib/install/examples/angular/hello_angular/app/app.module.ts +16 -0
  49. data/webpacker-5.4.4/lib/install/examples/angular/hello_angular/index.ts +8 -0
  50. data/webpacker-5.4.4/lib/install/examples/angular/hello_angular/polyfills.ts +73 -0
  51. data/webpacker-5.4.4/lib/install/examples/angular/hello_angular.js +7 -0
  52. data/webpacker-5.4.4/lib/install/examples/coffee/hello_coffee.coffee +4 -0
  53. data/webpacker-5.4.4/lib/install/examples/elm/Main.elm +55 -0
  54. data/webpacker-5.4.4/lib/install/examples/elm/hello_elm.js +16 -0
  55. data/webpacker-5.4.4/lib/install/examples/erb/hello_erb.js.erb +6 -0
  56. data/webpacker-5.4.4/lib/install/examples/react/babel.config.js +99 -0
  57. data/webpacker-5.4.4/lib/install/examples/react/hello_react.jsx +26 -0
  58. data/webpacker-5.4.4/lib/install/examples/react/tsconfig.json +21 -0
  59. data/webpacker-5.4.4/lib/install/examples/stimulus/application.js +1 -0
  60. data/webpacker-5.4.4/lib/install/examples/stimulus/controllers/hello_controller.js +18 -0
  61. data/webpacker-5.4.4/lib/install/examples/stimulus/controllers/index.js +9 -0
  62. data/webpacker-5.4.4/lib/install/examples/svelte/app.svelte +11 -0
  63. data/webpacker-5.4.4/lib/install/examples/svelte/hello_svelte.js +20 -0
  64. data/webpacker-5.4.4/lib/install/examples/typescript/hello_typescript.ts +4 -0
  65. data/webpacker-5.4.4/lib/install/examples/typescript/tsconfig.json +24 -0
  66. data/webpacker-5.4.4/lib/install/examples/vue/app.vue +22 -0
  67. data/webpacker-5.4.4/lib/install/examples/vue/hello_vue.js +72 -0
  68. data/webpacker-5.4.4/lib/install/javascript/packs/application.js +18 -0
  69. data/webpacker-5.4.4/lib/install/loaders/coffee.js +6 -0
  70. data/webpacker-5.4.4/lib/install/loaders/elm.js +25 -0
  71. data/webpacker-5.4.4/lib/install/loaders/erb.js +11 -0
  72. data/webpacker-5.4.4/lib/install/loaders/svelte.js +9 -0
  73. data/webpacker-5.4.4/lib/install/loaders/vue.js +6 -0
  74. data/webpacker-5.4.4/lib/install/react.rb +18 -0
  75. data/webpacker-5.4.4/lib/install/stimulus.rb +12 -0
  76. data/webpacker-5.4.4/lib/install/svelte.rb +29 -0
  77. data/webpacker-5.4.4/lib/install/template.rb +63 -0
  78. data/webpacker-5.4.4/lib/install/typescript.rb +39 -0
  79. data/webpacker-5.4.4/lib/install/vue.rb +49 -0
  80. data/webpacker-5.4.4/lib/tasks/installers.rake +42 -0
  81. data/webpacker-5.4.4/lib/tasks/webpacker/binstubs.rake +13 -0
  82. data/webpacker-5.4.4/lib/tasks/webpacker/check_binstubs.rake +12 -0
  83. data/webpacker-5.4.4/lib/tasks/webpacker/check_node.rake +31 -0
  84. data/webpacker-5.4.4/lib/tasks/webpacker/check_yarn.rake +30 -0
  85. data/webpacker-5.4.4/lib/tasks/webpacker/clean.rake +25 -0
  86. data/webpacker-5.4.4/lib/tasks/webpacker/clobber.rake +20 -0
  87. data/webpacker-5.4.4/lib/tasks/webpacker/compile.rake +43 -0
  88. data/webpacker-5.4.4/lib/tasks/webpacker/info.rake +19 -0
  89. data/webpacker-5.4.4/lib/tasks/webpacker/install.rake +13 -0
  90. data/webpacker-5.4.4/lib/tasks/webpacker/verify_install.rake +13 -0
  91. data/webpacker-5.4.4/lib/tasks/webpacker/yarn_install.rake +16 -0
  92. data/webpacker-5.4.4/lib/tasks/webpacker.rake +28 -0
  93. data/webpacker-5.4.4/lib/webpacker/commands.rb +74 -0
  94. data/webpacker-5.4.4/lib/webpacker/compiler.rb +111 -0
  95. data/webpacker-5.4.4/lib/webpacker/configuration.rb +128 -0
  96. data/webpacker-5.4.4/lib/webpacker/dev_server.rb +66 -0
  97. data/webpacker-5.4.4/lib/webpacker/dev_server_proxy.rb +33 -0
  98. data/webpacker-5.4.4/lib/webpacker/dev_server_runner.rb +72 -0
  99. data/webpacker-5.4.4/lib/webpacker/env.rb +43 -0
  100. data/webpacker-5.4.4/lib/webpacker/helper.rb +195 -0
  101. data/webpacker-5.4.4/lib/webpacker/instance.rb +37 -0
  102. data/webpacker-5.4.4/lib/webpacker/manifest.rb +118 -0
  103. data/webpacker-5.4.4/lib/webpacker/railtie.rb +55 -0
  104. data/webpacker-5.4.4/lib/webpacker/runner.rb +23 -0
  105. data/webpacker-5.4.4/lib/webpacker/version.rb +4 -0
  106. data/webpacker-5.4.4/lib/webpacker/webpack_runner.rb +32 -0
  107. data/webpacker-5.4.4/lib/webpacker.rb +46 -0
  108. data/webpacker-5.4.4/package/__tests__/config.js +66 -0
  109. data/webpacker-5.4.4/package/__tests__/dev_server.js +45 -0
  110. data/webpacker-5.4.4/package/__tests__/development.js +43 -0
  111. data/webpacker-5.4.4/package/__tests__/env.js +46 -0
  112. data/webpacker-5.4.4/package/__tests__/production.js +29 -0
  113. data/webpacker-5.4.4/package/__tests__/staging.js +29 -0
  114. data/webpacker-5.4.4/package/__tests__/test.js +26 -0
  115. data/webpacker-5.4.4/package/config.js +40 -0
  116. data/webpacker-5.4.4/package/configPath.js +3 -0
  117. data/webpacker-5.4.4/package/config_types/__tests__/config_list.js +118 -0
  118. data/webpacker-5.4.4/package/config_types/__tests__/config_object.js +43 -0
  119. data/webpacker-5.4.4/package/config_types/config_list.js +75 -0
  120. data/webpacker-5.4.4/package/config_types/config_object.js +55 -0
  121. data/webpacker-5.4.4/package/config_types/index.js +7 -0
  122. data/webpacker-5.4.4/package/dev_server.js +20 -0
  123. data/webpacker-5.4.4/package/env.js +18 -0
  124. data/webpacker-5.4.4/package/environments/__tests__/base.js +101 -0
  125. data/webpacker-5.4.4/package/environments/base.js +176 -0
  126. data/webpacker-5.4.4/package/environments/development.js +53 -0
  127. data/webpacker-5.4.4/package/environments/production.js +77 -0
  128. data/webpacker-5.4.4/package/environments/test.js +3 -0
  129. data/webpacker-5.4.4/package/index.js +24 -0
  130. data/webpacker-5.4.4/package/rules/babel.js +28 -0
  131. data/webpacker-5.4.4/package/rules/css.js +3 -0
  132. data/webpacker-5.4.4/package/rules/file.js +21 -0
  133. data/webpacker-5.4.4/package/rules/index.js +20 -0
  134. data/webpacker-5.4.4/package/rules/module.css.js +3 -0
  135. data/webpacker-5.4.4/package/rules/module.sass.js +8 -0
  136. data/webpacker-5.4.4/package/rules/node_modules.js +22 -0
  137. data/webpacker-5.4.4/package/rules/sass.js +17 -0
  138. data/webpacker-5.4.4/package/utils/__tests__/deep_assign.js +32 -0
  139. data/webpacker-5.4.4/package/utils/__tests__/deep_merge.js +10 -0
  140. data/webpacker-5.4.4/package/utils/__tests__/get_style_rule.js +65 -0
  141. data/webpacker-5.4.4/package/utils/__tests__/objectify.js +9 -0
  142. data/webpacker-5.4.4/package/utils/deep_assign.js +22 -0
  143. data/webpacker-5.4.4/package/utils/deep_merge.js +22 -0
  144. data/webpacker-5.4.4/package/utils/get_style_rule.js +45 -0
  145. data/webpacker-5.4.4/package/utils/helpers.js +58 -0
  146. data/webpacker-5.4.4/package/utils/objectify.js +3 -0
  147. data/webpacker-5.4.4/package.json +82 -0
  148. data/webpacker-5.4.4/test/command_test.rb +33 -0
  149. data/webpacker-5.4.4/test/compiler_test.rb +80 -0
  150. data/webpacker-5.4.4/test/configuration_test.rb +109 -0
  151. data/webpacker-5.4.4/test/dev_server_runner_test.rb +51 -0
  152. data/webpacker-5.4.4/test/dev_server_test.rb +47 -0
  153. data/webpacker-5.4.4/test/env_test.rb +23 -0
  154. data/webpacker-5.4.4/test/helper_test.rb +157 -0
  155. data/webpacker-5.4.4/test/manifest_test.rb +73 -0
  156. data/webpacker-5.4.4/test/rake_tasks_test.rb +80 -0
  157. data/webpacker-5.4.4/test/test_app/Rakefile +3 -0
  158. data/webpacker-5.4.4/test/test_app/app/javascript/packs/application.js +10 -0
  159. data/webpacker-5.4.4/test/test_app/app/javascript/packs/multi_entry.css +4 -0
  160. data/webpacker-5.4.4/test/test_app/app/javascript/packs/multi_entry.js +4 -0
  161. data/webpacker-5.4.4/test/test_app/bin/webpack +14 -0
  162. data/webpacker-5.4.4/test/test_app/bin/webpack-dev-server +14 -0
  163. data/webpacker-5.4.4/test/test_app/config/application.rb +11 -0
  164. data/webpacker-5.4.4/test/test_app/config/environment.rb +4 -0
  165. data/webpacker-5.4.4/test/test_app/config/webpack/development.js +0 -0
  166. data/webpacker-5.4.4/test/test_app/config/webpacker.yml +103 -0
  167. data/webpacker-5.4.4/test/test_app/config/webpacker_public_root.yml +19 -0
  168. data/webpacker-5.4.4/test/test_app/config.ru +5 -0
  169. data/webpacker-5.4.4/test/test_app/package.json +13 -0
  170. data/webpacker-5.4.4/test/test_app/public/packs/manifest.json +32 -0
  171. data/webpacker-5.4.4/test/test_app/yarn.lock +11 -0
  172. data/webpacker-5.4.4/test/test_helper.rb +33 -0
  173. data/webpacker-5.4.4/test/webpack_runner_test.rb +51 -0
  174. data/webpacker-5.4.4/test/webpacker_test.rb +13 -0
  175. data/webpacker-5.4.4/webpacker.gemspec +31 -0
  176. data/webpacker-5.4.4/yarn.lock +8271 -0
  177. metadata +215 -0
@@ -0,0 +1,1074 @@
1
+ **Please note that Webpacker 3.1.0 and 3.1.1 have some serious bugs so please consider using either 3.0.2 or 3.2.0**
2
+
3
+ **Please note that Webpacker 4.1.0 has an installer bug. Please use 4.2.0 or above**
4
+
5
+ ## [[5.4.4]](https://github.com/rails/webpacker/compare/v5.4.3...v5.4.4) - 2023-01-31
6
+
7
+ - Fix compatibility with Ruby 3.2. (#3306)
8
+
9
+ ## [[5.4.3]](https://github.com/rails/webpacker/compare/v5.4.2...v5.4.3) - 2021-09-14
10
+
11
+ - Specify webpack-dev-server to be v3, to avoid getting webpack-dev-server v4 (#3121)
12
+
13
+ ## [[5.4.2]](https://github.com/rails/webpacker/compare/v5.4.1...v5.4.2) - 2021-08-20
14
+
15
+ - Fix babel warning about private-methods in @babel/plugin-proposal-private-property-in-object as well.
16
+
17
+ ## [[5.4.1]](https://github.com/rails/webpacker/compare/v5.4.0...v5.4.1) - 2021-08-20
18
+
19
+ - Update all dependencies within the same major version (#3120)
20
+
21
+ - Fix babel warning about private-methods (#3016)
22
+
23
+ ## [[5.4.0]](https://github.com/rails/webpacker/compare/v5.3.0...v5.4.0) - 2021-05-18
24
+
25
+ - Fix compatibility with Psych 4
26
+
27
+ ## [[5.3.0]](https://github.com/rails/webpacker/compare/v5.2.1...v5.3.0) - 2021-04-27
28
+
29
+ - Adds experimental Yarn 2 support. Note you must manually set `nodeLinker: node-modules` in your `.yarnrc.yml`.
30
+
31
+ - Keep backups, even when they're old [#2912](https://github.com/rails/webpacker/pull/2912)
32
+
33
+ ## [[5.2.2]](https://github.com/rails/webpacker/compare/v5.2.1...v5.2.2) - 2021-04-27
34
+
35
+ - Bump deps and remove node-sass [#2997](https://github.com/rails/webpacker/pull/2997).
36
+
37
+ ## [[5.2.1]](https://github.com/rails/webpacker/compare/v5.2.0...v5.2.1) - 2020-08-17
38
+
39
+ - Revert [#1311](https://github.com/rails/webpacker/pull/1311).
40
+
41
+ ## [[5.2.0]](https://github.com/rails/webpacker/compare/v5.1.1...v5.2.0) - 2020-08-16
42
+
43
+ - Bump dependencies and fixes. See [diff](https://github.com/rails/webpacker/compare/v5.1.1...5-x-stable) for changes.
44
+
45
+ ## [[5.1.1]](https://github.com/rails/webpacker/compare/v5.1.0...v5.1.1) - 2020-04-20
46
+
47
+ - Update [TypeScript documentation](https://github.com/rails/webpacker/blob/master/docs/typescript.md) and installer to use babel-loader for typescript.[(#2541](https://github.com/rails/webpacker/pull/2541)
48
+
49
+ ## [[5.1.0]](https://github.com/rails/webpacker/compare/v5.0.1...v5.1.0) - 2020-04-19
50
+
51
+ - Remove yarn integrity check [#2518](https://github.com/rails/webpacker/pull/2518)
52
+ - Switch from ts-loader to babel-loader [#2449](https://github.com/rails/webpacker/pull/2449)
53
+ Please see the [TypeScript documentation](https://github.com/rails/webpacker/blob/master/docs/typescript.md) to upgrade existing projects to use typescript with 5.1
54
+ - Resolve multi-word snakecase WEBPACKER_DEV_SERVER env values [#2528](https://github.com/rails/webpacker/pull/2528)
55
+
56
+ ## [[5.0.1]](https://github.com/rails/webpacker/compare/v5.0.0...v5.0.1) - 2020-03-22
57
+
58
+ - Upgrade deps and fix sass loader config options bug [#2508](https://github.com/rails/webpacker/pull/2508)
59
+
60
+ ## [[5.0.0]](https://github.com/rails/webpacker/compare/v4.2.2...v5.0.0) - 2020-03-22
61
+
62
+ - Bump minimum node version [#2428](https://github.com/rails/webpacker/pull/2428)
63
+ - Bump minimum ruby/rails version [#2415](https://github.com/rails/webpacker/pull/2415)
64
+ - Add support for multiple files per entry [#2476](https://github.com/rails/webpacker/pull/2476)
65
+
66
+ ```js
67
+ entry: {
68
+ home: ['./home.js', './home.scss'],
69
+ account: ['./account.js', './account.scss']
70
+ }
71
+ ```
72
+
73
+ You can now have two entry files with same names inside packs folder, `home.scss` and `home.js`
74
+
75
+ And, other minor fixes, please see a list of changes [here](https://github.com/rails/webpacker/compare/v4.2.2...v5.0.0)
76
+
77
+ ## [[4.2.2]](https://github.com/rails/webpacker/compare/v4.2.1...v4.2.2) - 2019-12-09
78
+
79
+ - Fixed issue with webpack clean task for nested assets [#2391](https://github.com/rails/webpacker/pull/2391)
80
+
81
+ ## [[4.2.1]](https://github.com/rails/webpacker/compare/v4.2.0...v4.2.1) - 2019-12-09
82
+
83
+ - Fixed issue with webpack clean task [#2389](https://github.com/rails/webpacker/pull/2389)
84
+
85
+ ## [[4.2.0]](https://github.com/rails/webpacker/compare/v4.1.0...v4.2.0) - 2019-11-12
86
+
87
+ - Fixed installer bug [#2366](https://github.com/rails/webpacker/pull/2366)
88
+
89
+ ## [[4.1.0]](https://github.com/rails/webpacker/compare/v4.0.7...v4.1.0) - 2019-11-12
90
+
91
+ - Added favicon_pack_tag to generate favicon links [#2281](https://github.com/rails/webpacker/pull/2281)
92
+ - Add support for Brotli compression [#2273](https://github.com/rails/webpacker/pull/2273)
93
+ - Support .(sass|scss).erb [#2259](https://github.com/rails/webpacker/pull/2259)
94
+ - Elm: Enable production optimizations when compiling in production [#2234](https://github.com/rails/webpacker/pull/2234)
95
+ - fixes webpacker:clean erroring because of nested hashes [#2318](https://github.com/rails/webpacker/pull/2318)
96
+ - Revert of production env enforcement [#2341](https://github.com/rails/webpacker/pull/2341)
97
+ - Add a preload_pack_asset helper [#2124](https://github.com/rails/webpacker/pull/2124)
98
+ - Record the compilation digest even on webpack error [#2117](https://github.com/rails/webpacker/pull/2117)
99
+ - See more changes [here](https://github.com/rails/webpacker/compare/v4.0.7...v4.1.0)
100
+
101
+ ## [[4.0.7]](https://github.com/rails/webpacker/compare/v4.0.6...v4.0.7) - 2019-06-03
102
+
103
+ - Prevent `@babel/plugin-transform-runtime` from rewriting babel helpers in core-js. Remove unneeded runtime `@babel/runtime-corejs3` [#2116](https://github.com/rails/webpacker/pull/2116)
104
+ - Fix for: [#2109 Uncaught TypeError: **webpack_require**(...) is not a function](https://github.com/rails/webpacker/issues/2109): **If you are upgrading**, please check your `babel.config.js` against the [default `babel.config.js`](https://github.com/rails/webpacker/blob/master/lib/install/config/babel.config.js):
105
+ - `@babel/preset-env` should contain `corejs: 3`
106
+ - `@babel/plugin-transform-runtime` should contain `corejs: false`
107
+ - Removed unneeded runtime `@babel/runtime-corejs3`
108
+
109
+ ## [[4.0.6]](https://github.com/rails/webpacker/compare/v4.0.5...v4.0.6) - 2019-05-30
110
+
111
+ - Webpack should not be transpiled [#2111](https://github.com/rails/webpacker/pull/2111)
112
+
113
+ ## [[4.0.5]](https://github.com/rails/webpacker/compare/v4.0.4...v4.0.5) - 2019-05-30
114
+
115
+ - Don't let babel & core-js transpile each other [#2110](https://github.com/rails/webpacker/pull/2110)
116
+
117
+ ## [[4.0.4]](https://github.com/rails/webpacker/compare/v4.0.3...v4.0.4) - 2019-05-28
118
+
119
+ - Remove bundler version constraint
120
+
121
+ ## [[4.0.3]](https://github.com/rails/webpacker/compare/v4.0.2...v4.0.3) - 2019-05-28
122
+
123
+ Please see the diff
124
+
125
+ ##### Breaking changes (for pre-existing apps)
126
+
127
+ - [`@babel/polyfill`](https://babeljs.io/docs/en/next/babel-polyfill.html) [doesn't make it possible to provide a smooth migration path from `core-js@2` to `core-js@3`](https://github.com/zloirock/core-js/blob/master/docs/2019-03-19-core-js-3-babel-and-a-look-into-the-future.md#babelpolyfill): for this reason, it was decided to deprecate `@babel/polyfill` in favor of separate inclusion of required parts of `core-js` and `regenerator-runtime`. [#2031](https://github.com/rails/webpacker/pull/2031)
128
+
129
+ In each of your `/packs/*.js` files, change this:
130
+
131
+ ```js
132
+ import '@babel/polyfill'
133
+ ```
134
+
135
+ to this:
136
+
137
+ ```js
138
+ import 'core-js/stable'
139
+ import 'regenerator-runtime/runtime'
140
+ ```
141
+
142
+ Don't forget to install those dependencies directly!
143
+
144
+ ```sh
145
+ yarn add core-js regenerator-runtime
146
+ ```
147
+
148
+ ## [4.0.2] - 2019-03-06
149
+
150
+ - Bump the version on npm
151
+
152
+ ## [4.0.1] - 2019-03-04
153
+
154
+ ### Fixed
155
+
156
+ - Pre-release version installer
157
+
158
+ ## [4.0.0] - 2019-03-04
159
+
160
+ No changes in this release. See RC releases for changes.
161
+
162
+ ## [4.0.0.rc.8] - 2019-03-03
163
+
164
+ ### Fixed
165
+
166
+ - Re-enable source maps in production to make debugging in production
167
+ easier. Enabling source maps doesn't have drawbacks for most of the
168
+ applications since maps are compressed by default and aren't loaded
169
+ by browsers unless Dev Tools are opened.
170
+
171
+ Source maps can be disabled in any environment configuration, e.g:
172
+
173
+ ```js
174
+ // config/webpack/production.js
175
+
176
+ const environment = require('./environment')
177
+ environment.config.merge({ devtool: 'none' })
178
+
179
+ module.exports = environment.toWebpackConfig()
180
+ ```
181
+
182
+ - Reintroduced `context` to the file loader. Reverting the simpler paths change
183
+
184
+ - Updated file loader to have filename based on the path. This change
185
+ keeps the old behaviour intact i.e. let people use namespaces for media
186
+ inside `app/javascript` and also include media outside of `app/javascript`
187
+ with simpler paths, for example from `node_modules` or `app/assets`
188
+
189
+ ```bash
190
+ # Files inside app/javascript (i.e. packs source path)
191
+ # media/[full_path_relative_to_app_javascript]/name_of_the_asset_with_digest
192
+ media/images/google-97e897b3851e415bec4fd30c265eb3ce.jpg
193
+ media/images/rails-45b116b1f66cc5e6f9724e8f9a2db73d.png
194
+ media/images/some_namespace/google-97e897b3851e415bec4fd30c265eb3ce.jpg
195
+
196
+ # Files outside app/javascript (i.e. packs source path)
197
+ # media/[containing_folder_name]/name_of_the_asset_with_digest
198
+ media/some_assets/rails_assets-f0f7bbb5.png
199
+ media/webfonts/fa-brands-400-4b115e11.woff2
200
+ ```
201
+
202
+ This change is done so we don't end up paths like `media/_/assets/images/rails_assets-f0f7bbb5ef00110a0dcef7c2cb7d34a6.png` or `media/_/_/node_modules/foo-f0f7bbb5ef00110a0dcef7c2cb7d34a6.png` for media outside of
203
+ `app/javascript`
204
+
205
+ ## [4.0.0.rc.7] - 2019-01-25
206
+
207
+ ### Fixed
208
+
209
+ - Webpacker builds test app assets [#1908](https://github.com/rails/webpacker/issues/1908)
210
+
211
+ ## [4.0.0.rc.6] - 2019-01-25
212
+
213
+ ### Fixed
214
+
215
+ - Remove `context` from file loader in favour of simpler paths
216
+
217
+ ```rb
218
+ # before
219
+ "_/assets/images/avatar.png": "/packs/_/assets/images/avatar-057862c747f0fdbeae506bdd0516cad1.png"
220
+
221
+ # after
222
+ "media/avatar.png": "/packs/media/avatar-057862c747f0fdbeae506bdd0516cad1.png"
223
+ ```
224
+
225
+ To get old behaviour:
226
+
227
+ ```js
228
+ // config/webpack/environment.js
229
+
230
+ const { environment, config } = require('@rails/webpacker')
231
+ const { join } = require('path')
232
+
233
+ const fileLoader = environment.loaders.get('file')
234
+ fileLoader.use[0].options.name = '[path][name]-[hash].[ext]'
235
+ fileLoader.use[0].options.context = join(config.source_path) // optional if you don't want to expose full paths
236
+ ```
237
+
238
+ ### Added
239
+
240
+ - Namespaces for compiled packs in the public directory
241
+
242
+ ```rb
243
+ # before
244
+ "runtime~hello_react" => "/packs/runtime~hello_react-da2baf7fd07b0e8b6d17.js"
245
+
246
+ # after
247
+ "runtime~hello_react" => "/packs/js/runtime~hello_react-da2baf7fd07b0e8b6d17.js"
248
+ ```
249
+
250
+ ## [4.0.0.rc.5] - 2019-01-21
251
+
252
+ ### Updated
253
+
254
+ - Gems and node dependencies
255
+
256
+ ## [4.0.0.rc.4] - 2019-01-21
257
+
258
+ ### Added
259
+
260
+ - `stylesheet_packs_with_chunks_tag` helper, similar to javascript helper but for
261
+ loading stylesheets chunks.
262
+
263
+ ```erb
264
+ <%= stylesheet_packs_with_chunks_tag 'calendar', 'map', 'data-turbolinks-track': 'reload' %>
265
+
266
+ <link rel="stylesheet" media="screen" href="/packs/3-8c7ce31a.chunk.css" />
267
+ <link rel="stylesheet" media="screen" href="/packs/calendar-8c7ce31a.chunk.css" />
268
+ <link rel="stylesheet" media="screen" href="/packs/map-8c7ce31a.chunk.css" />
269
+ ```
270
+
271
+ **Important:** Pass all your pack names when using `stylesheet_packs_with_chunks_tag`
272
+ helper otherwise you will get duplicated chunks on the page.
273
+
274
+ ```erb
275
+ <%# DO %>
276
+ # <%= stylesheet_packs_with_chunks_tag 'calendar', 'map' %>
277
+ <%# DON'T %>
278
+ # <%= stylesheet_packs_with_chunks_tag 'calendar' %>
279
+ # <%= stylesheet_packs_with_chunks_tag 'map' %>
280
+ ```
281
+
282
+ ## [4.0.0.rc.3] - 2019-01-17
283
+
284
+ ### Fixed
285
+
286
+ - Issue with javascript_pack_tag asset duplication [#1898](https://github.com/rails/webpacker/pull/1898)
287
+
288
+ ### Added
289
+
290
+ - `javascript_packs_with_chunks_tag` helper, which creates html tags
291
+ for a pack and all the dependent chunks, when using splitchunks.
292
+
293
+ ```erb
294
+ <%= javascript_packs_with_chunks_tag 'calendar', 'map', 'data-turbolinks-track': 'reload' %>
295
+
296
+ <script src="/packs/vendor-16838bab065ae1e314.js" data-turbolinks-track="reload"></script>
297
+ <script src="/packs/calendar~runtime-16838bab065ae1e314.js" data-turbolinks-track="reload"></script>
298
+ <script src="/packs/calendar-1016838bab065ae1e314.js" data-turbolinks-track="reload"></script>
299
+ <script src="/packs/map~runtime-16838bab065ae1e314.js" data-turbolinks-track="reload"></script>
300
+ <script src="/packs/map-16838bab065ae1e314.js" data-turbolinks-track="reload"></script>
301
+ ```
302
+
303
+ **Important:** Pass all your pack names when using `javascript_packs_with_chunks_tag`
304
+ helper otherwise you will get duplicated chunks on the page.
305
+
306
+ ```erb
307
+ <%# DO %>
308
+ <%= javascript_packs_with_chunks_tag 'calendar', 'map' %>
309
+
310
+ <%# DON'T %>
311
+ <%= javascript_packs_with_chunks_tag 'calendar' %>
312
+ <%= javascript_packs_with_chunks_tag 'map' %>
313
+ ```
314
+
315
+ ## [4.0.0.rc.2] - 2018-12-15
316
+
317
+ ### Fixed
318
+
319
+ - Disable integrity hash generation [#1835](https://github.com/rails/webpacker/issues/1835)
320
+
321
+ ## [4.0.0.rc.1] - 2018-12-14
322
+
323
+ ### Breaking changes
324
+
325
+ - Order of rules changed so you might have to change append to prepend,
326
+ depending on how you want to process packs [#1823](https://github.com/rails/webpacker/pull/1823)
327
+
328
+ ```js
329
+ environment.loaders.prepend()
330
+ ```
331
+
332
+ - Separate CSS extraction from build environment [#1625](https://github.com/rails/webpacker/pull/1625)
333
+
334
+ ```yml
335
+ # Extract and emit a css file
336
+ extract_css: true
337
+ ```
338
+
339
+ - Separate rule to compile node modules
340
+ (fixes cases where ES6 libraries were included in the app code) [#1823](https://github.com/rails/webpacker/pull/1823).
341
+
342
+ In previous versions only application code was transpiled. Now everything in `node_modules` is transpiled with Babel. In some cases it could break your build (known issue with `mapbox-gl` package being broken by Babel, https://github.com/mapbox/mapbox-gl-js/issues/3422).
343
+
344
+ [`nodeModules` loader](https://github.com/rails/webpacker/pull/1823/files#diff-456094c8451b5774db50028dfecf4aa8) ignores `config.babel.js` and uses hard-coded `'@babel/preset-env', { modules: false }` config.
345
+
346
+ To keep previous behavior, remove `nodeModules` loader specifying `environment.loaders.delete('nodeModules');` in your `config/webpack/environment.js` file.
347
+
348
+ - File loader extensions API [#1823](https://github.com/rails/webpacker/pull/1823)
349
+
350
+ ```yml
351
+ # webpacker.yml
352
+ static_assets_extensions:
353
+ - .pdf
354
+ # etc..
355
+ ```
356
+
357
+ ### Added
358
+
359
+ - Move `.babelrc` and `.postcssrc` to `.js` variant [#1822](https://github.com/rails/webpacker/pull/1822)
360
+ - Use postcss safe parser when optimising css assets [#1822](https://github.com/rails/webpacker/pull/1822)
361
+ - Add split chunks api (undocumented)
362
+
363
+ ```js
364
+ const { environment } = require('@rails/webpacker')
365
+ // Enable with default config
366
+ environment.splitChunks()
367
+ // Configure via a callback
368
+ environment.splitChunks((config) =>
369
+ Object.assign({}, config, { optimization: { splitChunks: false } })
370
+ )
371
+ ```
372
+
373
+ - Allow changing static file extensions using webpacker.yml (undocumented)
374
+
375
+ ## [4.0.0-pre.3] - 2018-10-01
376
+
377
+ ### Added
378
+
379
+ - Move supported browsers configuration to [.browserslistrc](https://github.com/browserslist/browserslist#queries)
380
+
381
+ ### Breaking changes
382
+
383
+ - postcss-next is replaced with postcss-preset-env
384
+ - babel@7
385
+
386
+ ### Fixed
387
+
388
+ - Bring back test env [#1563](https://github.com/rails/webpacker/pull/1563)
389
+
390
+ Please see a list of [commits](https://github.com/rails/webpacker/compare/2dd68f0273074aadb3f869c4c30369d5e4e3fea7...master)
391
+
392
+ ## [4.0.0-pre.2] - 2018-04-2
393
+
394
+ ### Fixed
395
+
396
+ - Webpack dev server version in installer
397
+
398
+ ## [4.0.0-pre.1] - 2018-04-2
399
+
400
+ Pre-release to try out webpack 4.0 support
401
+
402
+ ### Added
403
+
404
+ - Webpack 4.0 support [#1376](https://github.com/rails/webpacker/pull/1316)
405
+
406
+ ### Fixed
407
+
408
+ - Remove compilation digest file if webpack command fails[#1398](https://github.com/rails/webpacker/issues/1398)
409
+
410
+ ## [3.6.0] - 2019-03-06
411
+
412
+ See changes: https://github.com/rails/webpacker/compare/88a253ed42966eb2d5c997435e9396881513bce1...3-x-stable
413
+
414
+ ## [3.5.5] - 2018-07-09
415
+
416
+ See changes: https://github.com/rails/webpacker/compare/e8b197e36c77181ca2e4765c620faea59dcd0351...3-x-stable
417
+
418
+ ### Added
419
+
420
+ - On CI, sort files & check modified w/ digest intead of mtime[#1522](https://github.com/rails/webpacker/pull/1522)
421
+
422
+ ## [3.5.3] - 2018-05-03
423
+
424
+ ### Fixed
425
+
426
+ - Relax Javascript package dependencies [#1466](https://github.com/rails/webpacker/pull/1466#issuecomment-386336605)
427
+
428
+ ## [3.5.2] - 2018-04-29
429
+
430
+ - Pin Javascript package to 3.5.x
431
+
432
+ ## [3.5.1] - 2018-04-29
433
+
434
+ - Upgraded gems and Javascript packages
435
+
436
+ ## [3.5.0] - 2018-04-29
437
+
438
+ ### Fixed
439
+
440
+ - Remove compilation digest file if webpack command fails [#1399](https://github.com/rails/webpacker/pull/1399)
441
+ - Handle http dev_server setting properly in the proxy [#1420](https://github.com/rails/webpacker/pull/1420)
442
+ - Use correct protocol [#1425](https://github.com/rails/webpacker/pull/1425)
443
+
444
+ ### Added
445
+
446
+ - `image_pack_tag` helper [#1400](https://github.com/rails/webpacker/pull/1400)
447
+ - devserver proxy for custom environments [#1415](https://github.com/rails/webpacker/pull/1415)
448
+ - Rails webpacker:info task [#1416](https://github.com/rails/webpacker/pull/1416)
449
+ - Include `RAILS_RELATIVE_URL_ROOT` environment variable in publicPath [#1428](https://github.com/rails/webpacker/pull/1428)
450
+
451
+ Complete list of changes: [#1464](https://github.com/rails/webpacker/pull/1464)
452
+
453
+ ## [3.4.3] - 2018-04-3
454
+
455
+ ### Fixed
456
+
457
+ - Lock webpacker version in installer [#1401](https://github.com/rails/webpacker/issues/1401)
458
+
459
+ ## [3.4.1] - 2018-03-24
460
+
461
+ ### Fixed
462
+
463
+ - Yarn integrity check in development [#1374](https://github.com/rails/webpacker/issues/1374)
464
+
465
+ ## [3.4.0] - 2018-03-23
466
+
467
+ **Please use 3.4.1 instead**
468
+
469
+ ### Added
470
+
471
+ - Support for custom Rails environments [#1359](https://github.com/rails/webpacker/pull/1359)
472
+
473
+ _This could break the compilation if you set NODE_ENV to custom environment. Now, NODE_ENV only understands production or development mode_
474
+
475
+ ## [3.3.1] - 2018-03-12
476
+
477
+ ### Fixed
478
+
479
+ - Use webpack dev server 2.x until webpacker supports webpack 4.x [#1338](https://github.com/rails/webpacker/issues/1338)
480
+
481
+ ## [3.3.0] - 2018-03-03
482
+
483
+ ### Added
484
+
485
+ - Separate task for installing/updating binstubs
486
+ - CSS modules support [#1248](https://github.com/rails/webpacker/pull/1248)
487
+ - Pass `relative_url_root` to webpacker config [#1236](https://github.com/rails/webpacker/pull/1236)
488
+
489
+ ### Breaking changes
490
+
491
+ - Fixes [#1281](https://github.com/rails/webpacker/issues/1281) by installing binstubs only as local executables. To upgrade:
492
+
493
+ ```
494
+ bundle exec rails webpacker:binstubs
495
+ ```
496
+
497
+ - set function is now removed from plugins and loaders, please use `append` or `prepend`
498
+
499
+ ```js
500
+ // config/webpack/environment.js
501
+ const { environment } = require('@rails/webpacker')
502
+
503
+ environment.loaders.append('json', {
504
+ test: /\.json$/,
505
+ use: 'json-loader'
506
+ })
507
+ ```
508
+
509
+ ### Fixed
510
+
511
+ - Limit ts-loader to 3.5.0 until webpack 4 support [#1308](https://github.com/rails/webpacker/pull/1308)
512
+ - Custom env support [#1304](https://github.com/rails/webpacker/pull/1304)
513
+
514
+ ## [3.2.2] - 2018-02-11
515
+
516
+ ### Added
517
+
518
+ - Stimulus example [https://stimulusjs.org/](https://stimulusjs.org/)
519
+
520
+ ```bash
521
+ bundle exec rails webpacker:install:stimulus
522
+ ```
523
+
524
+ - Upgrade gems and npm packages [#1254](https://github.com/rails/webpacker/pull/1254)
525
+
526
+ And, bunch of bug fixes [See changes](https://github.com/rails/webpacker/compare/v3.2.1...v3.2.2)
527
+
528
+ ## [3.2.1] - 2018-01-21
529
+
530
+ - Disable dev server running? check if no dev server config is present in that environment [#1179](https://github.com/rails/webpacker/pull/1179)
531
+
532
+ - Fix checking 'webpack' binstub on Windows [#1123](https://github.com/rails/webpacker/pull/1123)
533
+
534
+ - silence yarn output if checking is successful [#1131](https://github.com/rails/webpacker/pull/1131)
535
+
536
+ - Update uglifyJs plugin to support ES6 [#1194](https://github.com/rails/webpacker/pull/1194)
537
+
538
+ - Add typescript installer [#1145](https://github.com/rails/webpacker/pull/1145)
539
+
540
+ - Update default extensions and move to installer [#1181](https://github.com/rails/webpacker/pull/1181)
541
+
542
+ - Revert file loader [#1196](https://github.com/rails/webpacker/pull/1196)
543
+
544
+ ## [3.2.0] - 2017-12-16
545
+
546
+ ### To upgrade:
547
+
548
+ ```bash
549
+ bundle update webpacker
550
+ yarn upgrade @rails/webpacker
551
+ ```
552
+
553
+ ### Breaking changes
554
+
555
+ If you are using react, vue, angular, elm, erb or coffeescript inside your
556
+ `packs/` please re-run the integration installers as described in the README.
557
+
558
+ ```bash
559
+ bundle exec rails webpacker:install:react
560
+ bundle exec rails webpacker:install:vue
561
+ bundle exec rails webpacker:install:angular
562
+ bundle exec rails webpacker:install:elm
563
+ bundle exec rails webpacker:install:erb
564
+ bundle exec rails webpacker:install:coffee
565
+ ```
566
+
567
+ Or simply copy required loaders used in your app from
568
+ https://github.com/rails/webpacker/tree/master/lib/install/loaders
569
+ into your `config/webpack/loaders/`
570
+ directory and add it to webpack build from `config/webpack/environment.js`
571
+
572
+ ```js
573
+ const erb = require('./loaders/erb')
574
+ const elm = require('./loaders/elm')
575
+ const typescript = require('./loaders/typescript')
576
+ const vue = require('./loaders/vue')
577
+ const coffee = require('./loaders/coffee')
578
+
579
+ environment.loaders.append('coffee', coffee)
580
+ environment.loaders.append('vue', vue)
581
+ environment.loaders.append('typescript', typescript)
582
+ environment.loaders.append('elm', elm)
583
+ environment.loaders.append('erb', erb)
584
+ ```
585
+
586
+ In `.postcssrc.yml` you need to change the plugin name from `postcss-smart-import` to `postcss-import`:
587
+
588
+ ```yml
589
+ plugins:
590
+ postcss-import: {}
591
+ postcss-cssnext: {}
592
+ ```
593
+
594
+ ### Added (npm module)
595
+
596
+ - Upgrade gems and webpack dependencies
597
+
598
+ - `postcss-import` in place of `postcss-smart-import`
599
+
600
+ ### Removed (npm module)
601
+
602
+ - `postcss-smart-import`, `coffee-loader`, `url-loader`, `rails-erb-loader` as dependencies
603
+
604
+ - `publicPath` from file loader [#1107](https://github.com/rails/webpacker/pull/1107)
605
+
606
+ ### Fixed (npm module)
607
+
608
+ - Return native array type for `ConfigList` [#1098](https://github.com/rails/webpacker/pull/1098)
609
+
610
+ ### Added (Gem)
611
+
612
+ - New `asset_pack_url` helper [#1102](https://github.com/rails/webpacker/pull/1102)
613
+
614
+ - New installers for coffee and erb
615
+
616
+ ```bash
617
+ bundle exec rails webpacker:install:erb
618
+ bundle exec rails webpacker:install:coffee
619
+ ```
620
+
621
+ - Resolved paths from webpacker.yml to compiler watched list
622
+
623
+ ## [3.1.1] - 2017-12-11
624
+
625
+ ### Fixed
626
+
627
+ - Include default webpacker.yml config inside npm package
628
+
629
+ ## [3.1.0] - 2017-12-11
630
+
631
+ ### Added (npm module)
632
+
633
+ - Expose base config from environment
634
+
635
+ ```js
636
+ environment.config.set('resolve.extensions', ['.foo', '.bar'])
637
+ environment.config.set('output.filename', '[name].js')
638
+ environment.config.delete('output.chunkFilename')
639
+ environment.config.get('resolve')
640
+ environment.config.merge({
641
+ output: {
642
+ filename: '[name].js'
643
+ }
644
+ })
645
+ ```
646
+
647
+ - Expose new API's for loaders and plugins to insert at position
648
+
649
+ ```js
650
+ const jsonLoader = {
651
+ test: /\.json$/,
652
+ exclude: /node_modules/,
653
+ loader: 'json-loader'
654
+ }
655
+
656
+ environment.loaders.append('json', jsonLoader)
657
+ environment.loaders.prepend('json', jsonLoader)
658
+ environment.loaders.insert('json', jsonLoader, { after: 'style' })
659
+ environment.loaders.insert('json', jsonLoader, { before: 'babel' })
660
+
661
+ // Update a plugin
662
+ const manifestPlugin = environment.plugins.get('Manifest')
663
+ manifestPlugin.opts.writeToFileEmit = false
664
+
665
+ // Update coffee loader to use coffeescript 2
666
+ const babelLoader = environment.loaders.get('babel')
667
+ environment.loaders.insert(
668
+ 'coffee',
669
+ {
670
+ test: /\.coffee(\.erb)?$/,
671
+ use: babelLoader.use.concat(['coffee-loader'])
672
+ },
673
+ { before: 'json' }
674
+ )
675
+ ```
676
+
677
+ - Expose `resolve.modules` paths like loaders and plugins
678
+
679
+ ```js
680
+ environment.resolvedModules.append('vendor', 'vendor')
681
+ ```
682
+
683
+ - Enable sourcemaps in `style` and `css` loader
684
+
685
+ - Separate `css` and `sass` loader for easier configuration. `style` loader is now
686
+ `css` loader, which resolves `.css` files and `sass` loader resolves `.scss` and `.sass`
687
+ files.
688
+
689
+ ```js
690
+ // Enable css modules with sass loader
691
+ const sassLoader = environment.loaders.get('sass')
692
+ const cssLoader = sassLoader.use.find(
693
+ (loader) => loader.loader === 'css-loader'
694
+ )
695
+
696
+ cssLoader.options = Object.assign({}, cssLoader.options, {
697
+ modules: true,
698
+ localIdentName: '[path][name]__[local]--[hash:base64:5]'
699
+ })
700
+ ```
701
+
702
+ - Expose rest of configurable dev server options from webpacker.yml
703
+
704
+ ```yml
705
+ quiet: false
706
+ headers:
707
+ 'Access-Control-Allow-Origin': '*'
708
+ watch_options:
709
+ ignored: /node_modules/
710
+ ```
711
+
712
+ - `pretty` option to disable/enable color and progress output when running dev server
713
+
714
+ ```yml
715
+ dev_server:
716
+ pretty: false
717
+ ```
718
+
719
+ - Enforce deterministic loader order in desc order, starts processing from top to bottom
720
+
721
+ - Enforce the entire path of all required modules match the exact case of the actual path on disk using [case sensitive paths plugin](https://github.com/Urthen/case-sensitive-paths-webpack-plugin).
722
+
723
+ - Add url loader to process and embed smaller static files
724
+
725
+ ### Removed
726
+
727
+ - resolve url loader [#1042](https://github.com/rails/webpacker/issues/1042)
728
+
729
+ ### Added (Gem)
730
+
731
+ - Allow skipping webpacker compile using an env variable
732
+
733
+ ```bash
734
+ WEBPACKER_PRECOMPILE=no|false|n|f
735
+ WEBPACKER_PRECOMPILE=false bundle exec rails assets:precompile
736
+ ```
737
+
738
+ - Use `WEBPACKER_ASSET_HOST` instead of `ASSET_HOST` for CDN
739
+
740
+ - Alias `webpacker:compile` task to `assets:precompile` if is not defined so it works
741
+ without sprockets
742
+
743
+ ## [3.0.2] - 2017-10-04
744
+
745
+ ### Added
746
+
747
+ - Allow dev server connect timeout (in seconds) to be configurable, default: 0.01
748
+
749
+ ```rb
750
+ # Change to 1s
751
+ Webpacker.dev_server.connect_timeout = 1
752
+ ```
753
+
754
+ - Restrict the source maps generated in production [#770](https://github.com/rails/webpacker/pull/770)
755
+
756
+ - Binstubs [#833](https://github.com/rails/webpacker/pull/833)
757
+
758
+ - Allow dev server settings to be overridden by env variables [#843](https://github.com/rails/webpacker/pull/843)
759
+
760
+ - A new `lookup` method to manifest to perform lookup without raise and return `nil`
761
+
762
+ ```rb
763
+ Webpacker.manifest.lookup('foo.js')
764
+ # => nil
765
+ Webpacker.manifest.lookup!('foo.js')
766
+ # => raises Webpacker::Manifest::MissingEntryError
767
+ ```
768
+
769
+ - Catch all exceptions in `DevServer.running?` and return false [#878](https://github.com/rails/webpacker/pull/878)
770
+
771
+ ### Removed
772
+
773
+ - Inline CLI args for dev server binstub, use env variables instead
774
+
775
+ - Coffeescript as core dependency. You have to manually add coffeescript now, if you are using
776
+ it in your app.
777
+
778
+ ```bash
779
+ yarn add coffeescript@1.12.7
780
+
781
+ # OR coffeescript 2.0
782
+ yarn add coffeescript
783
+ ```
784
+
785
+ ## [3.0.1] - 2017-09-01
786
+
787
+ ### Fixed
788
+
789
+ - Missing `node_modules/.bin/*` files by bumping minimum Yarn version to 0.25.2 [#727](https://github.com/rails/webpacker/pull/727)
790
+
791
+ - `webpacker:compile` task so that fails properly when webpack compilation fails [#728](https://github.com/rails/webpacker/pull/728)
792
+
793
+ - Rack dev server proxy middleware when served under another proxy (example: pow), which uses `HTTP_X_FORWARDED_HOST` header resulting in `404` for webpacker assets
794
+
795
+ - Make sure tagged logger works with rails < 5 [#716](https://github.com/rails/webpacker/pull/716)
796
+
797
+ ### Added
798
+
799
+ - Allow webpack dev server listen host/ip to be configurable using additional `--listen-host` option
800
+
801
+ ```bash
802
+ ./bin/webpack-dev-server --listen-host 0.0.0.0 --host localhost
803
+ ```
804
+
805
+ ### Removed
806
+
807
+ - `watchContentBase` from devServer config so it doesn't unncessarily trigger
808
+ live reload when manifest changes. If you have applied this workaround from [#724](https://github.com/rails/webpacker/issues/724), please revert the change from `config/webpack/development.js` since this is now fixed.
809
+
810
+ ## [3.0.0] - 2017-08-30
811
+
812
+ ### Added
813
+
814
+ - `resolved_paths` option to allow adding additional paths webpack should lookup when resolving modules
815
+
816
+ ```yml
817
+ # config/webpacker.yml
818
+ # Additional paths webpack should lookup modules
819
+ resolved_paths: [] # empty by default
820
+ ```
821
+
822
+ - `Webpacker::Compiler.fresh?` and `Webpacker::Compiler.stale?` answer the question of whether compilation is needed.
823
+ The old `Webpacker::Compiler.compile?` predicate is deprecated.
824
+
825
+ - Dev server config class that exposes config options through singleton.
826
+
827
+ ```rb
828
+ Webpacker.dev_server.running?
829
+ ```
830
+
831
+ - Rack middleware proxies webpacker requests to dev server so we can always serve from same-origin and the lookup works out of the box - no more paths prefixing
832
+
833
+ - `env` attribute on `Webpacker::Compiler` allows setting custom environment variables that the compilation is being run with
834
+
835
+ ```rb
836
+ Webpacker::Compiler.env['FRONTEND_API_KEY'] = 'your_secret_key'
837
+ ```
838
+
839
+ ### Breaking changes
840
+
841
+ **Note:** requires running `bundle exec rails webpacker:install`
842
+
843
+ `config/webpack/**/*.js`:
844
+
845
+ - The majority of this config moved to the [@rails/webpacker npm package](https://www.npmjs.com/package/@rails/webpacker). `webpacker:install` only creates `config/webpack/{environment,development,test,production}.js` now so if you're upgrading from a previous version you can remove all other files.
846
+
847
+ `webpacker.yml`:
848
+
849
+ - Move dev-server config options under defaults so it's transparently available in all environments
850
+
851
+ - Add new `HMR` option for hot-module-replacement
852
+
853
+ - Add HTTPS
854
+
855
+ ### Removed
856
+
857
+ - Host info from manifest.json, now looks like this:
858
+
859
+ ```json
860
+ {
861
+ "hello_react.js": "/packs/hello_react.js"
862
+ }
863
+ ```
864
+
865
+ ### Fixed
866
+
867
+ - Update `webpack-dev-server.tt` to respect RAILS_ENV and NODE_ENV values [#502](https://github.com/rails/webpacker/issues/502)
868
+ - Use `0.0.0.0` as default listen address for `webpack-dev-server`
869
+ - Serve assets using `localhost` from dev server - [#424](https://github.com/rails/webpacker/issues/424)
870
+
871
+ ```yml
872
+ dev_server:
873
+ host: localhost
874
+ ```
875
+
876
+ - On Windows, `ruby bin/webpacker` and `ruby bin/webpacker-dev-server` will now bypass yarn, and execute via `node_modules/.bin` directly - [#584](https://github.com/rails/webpacker/pull/584)
877
+
878
+ ### Breaking changes
879
+
880
+ - Add `compile` and `cache_path` options to `config/webpacker.yml` for configuring lazy compilation of packs when a file under tracked paths is changed [#503](https://github.com/rails/webpacker/pull/503). To enable expected behavior, update `config/webpacker.yml`:
881
+
882
+ ```yaml
883
+ default: &default
884
+ cache_path: tmp/cache/webpacker
885
+ test:
886
+ compile: true
887
+
888
+ development:
889
+ compile: true
890
+
891
+ production:
892
+ compile: false
893
+ ```
894
+
895
+ - Make test compilation cacheable and configurable so that the lazy compilation
896
+ only triggers if files are changed under tracked paths.
897
+ Following paths are watched by default -
898
+
899
+ ```rb
900
+ ["app/javascript/**/*", "yarn.lock", "package.json", "config/webpack/**/*"]
901
+ ```
902
+
903
+ To add more paths:
904
+
905
+ ```rb
906
+ # config/initializers/webpacker.rb or config/application.rb
907
+ Webpacker::Compiler.watched_paths << 'bower_components'
908
+ ```
909
+
910
+ ## [2.0] - 2017-05-24
911
+
912
+ ### Fixed
913
+
914
+ - Update `.babelrc` to fix compilation issues - [#306](https://github.com/rails/webpacker/issues/306)
915
+
916
+ - Duplicated asset hosts - [#320](https://github.com/rails/webpacker/issues/320), [#397](https://github.com/rails/webpacker/pull/397)
917
+
918
+ - Missing asset host when defined as a `Proc` or on `ActionController::Base.asset_host` directly - [#397](https://github.com/rails/webpacker/pull/397)
919
+
920
+ - Incorrect asset host when running `webpacker:compile` or `bin/webpack` in development mode - [#397](https://github.com/rails/webpacker/pull/397)
921
+
922
+ - Update `webpacker:compile` task to use `stdout` and `stderr` for better logging - [#395](https://github.com/rails/webpacker/issues/395)
923
+
924
+ - ARGV support for `webpack-dev-server` - [#286](https://github.com/rails/webpacker/issues/286)
925
+
926
+ ### Added
927
+
928
+ - [Elm](http://elm-lang.org) support. You can now add Elm support via the following methods:
929
+
930
+ - New app: `rails new <app> --webpack=elm`
931
+ - Within an existing app: `rails webpacker:install:elm`
932
+
933
+ - Support for custom `public_output_path` paths independent of `source_entry_path` in `config/webpacker.yml`. `output` is also now relative to `public/`. - [#397](https://github.com/rails/webpacker/pull/397)
934
+
935
+ Before (compile to `public/packs`):
936
+
937
+ ```yaml
938
+ source_entry_path: packs
939
+ public_output_path: packs
940
+ ```
941
+
942
+ After (compile to `public/sweet/js`):
943
+
944
+ ```yaml
945
+ source_entry_path: packs
946
+ public_output_path: sweet/js
947
+ ```
948
+
949
+ - `https` option to use `https` mode, particularly on platforms like - https://community.c9.io/t/running-a-rails-app/1615 or locally - [#176](https://github.com/rails/webpacker/issues/176)
950
+
951
+ - [Babel] Dynamic import() and Class Fields and Static Properties babel plugin to `.babelrc`
952
+
953
+ ```json
954
+ {
955
+ "presets": [
956
+ [
957
+ "env",
958
+ {
959
+ "modules": false,
960
+ "targets": {
961
+ "browsers": "> 1%",
962
+ "uglify": true
963
+ },
964
+ "useBuiltIns": true
965
+ }
966
+ ]
967
+ ],
968
+
969
+ "plugins": [
970
+ "syntax-dynamic-import",
971
+ "transform-class-properties",
972
+ { "spec": true }
973
+ ]
974
+ }
975
+ ```
976
+
977
+ - Source-map support for production bundle
978
+
979
+ #### Breaking Change
980
+
981
+ - Consolidate and flatten `paths.yml` and `development.server.yml` config into one file - `config/webpacker.yml` - [#403](https://github.com/rails/webpacker/pull/403). This is a breaking change and requires you to re-install webpacker and cleanup old configuration files.
982
+
983
+ ```bash
984
+ bundle update webpacker
985
+ bundle exec rails webpacker:install
986
+
987
+ # Remove old/unused configuration files
988
+ rm config/webpack/paths.yml
989
+ rm config/webpack/development.server.yml
990
+ rm config/webpack/development.server.js
991
+ ```
992
+
993
+ **Warning**: For now you also have to add a pattern in `.gitignore` by hand.
994
+
995
+ ```diff
996
+ /public/packs
997
+ +/public/packs-test
998
+ /node_modules
999
+ ```
1000
+
1001
+ ## [1.2] - 2017-04-27
1002
+
1003
+ Some of the changes made requires you to run below commands to install new changes.
1004
+
1005
+ ```
1006
+ bundle update webpacker
1007
+ bundle exec rails webpacker:install
1008
+ ```
1009
+
1010
+ ### Fixed
1011
+
1012
+ - Support Spring - [#205](https://github.com/rails/webpacker/issues/205)
1013
+
1014
+ ```ruby
1015
+ Spring.after_fork { Webpacker.bootstrap } if defined?(Spring)
1016
+ ```
1017
+
1018
+ - Check node version and yarn before installing webpacker - [#217](https://github.com/rails/webpacker/issues/217)
1019
+
1020
+ - Include webpacker helper to views - [#172](https://github.com/rails/webpacker/issues/172)
1021
+
1022
+ - Webpacker installer on windows - [#245](https://github.com/rails/webpacker/issues/245)
1023
+
1024
+ - Yarn duplication - [#278](https://github.com/rails/webpacker/issues/278)
1025
+
1026
+ - Add back Spring for `rails-erb-loader` - [#216](https://github.com/rails/webpacker/issues/216)
1027
+
1028
+ - Move babel presets and plugins to .babelrc - [#202](https://github.com/rails/webpacker/issues/202)
1029
+
1030
+ ### Added
1031
+
1032
+ - A changelog - [#211](https://github.com/rails/webpacker/issues/211)
1033
+ - Minimize CSS assets - [#218](https://github.com/rails/webpacker/issues/218)
1034
+ - Pack namespacing support - [#201](https://github.com/rails/webpacker/pull/201)
1035
+
1036
+ For example:
1037
+
1038
+ ```
1039
+ app/javascript/packs/admin/hello_vue.js
1040
+ app/javascript/packs/admin/hello.vue
1041
+ app/javascript/packs/hello_vue.js
1042
+ app/javascript/packs/hello.vue
1043
+ ```
1044
+
1045
+ - Add tree-shaking support - [#250](https://github.com/rails/webpacker/pull/250)
1046
+ - Add initial test case by @kimquy [#259](https://github.com/rails/webpacker/pull/259)
1047
+ - Compile assets before test:controllers and test:system
1048
+
1049
+ ### Removed
1050
+
1051
+ - Webpack watcher - [#295](https://github.com/rails/webpacker/pull/295)
1052
+
1053
+ ## [1.1] - 2017-03-24
1054
+
1055
+ This release requires you to run below commands to install new features.
1056
+
1057
+ ```
1058
+ bundle update webpacker
1059
+ bundle exec rails webpacker:install
1060
+
1061
+ # if installed react, vue or angular
1062
+ bundle exec rails webpacker:install:[react, angular, vue]
1063
+ ```
1064
+
1065
+ ### Added (breaking changes)
1066
+
1067
+ - Static assets support - [#153](https://github.com/rails/webpacker/pull/153)
1068
+ - Advanced webpack configuration - [#153](https://github.com/rails/webpacker/pull/153)
1069
+
1070
+ ### Removed
1071
+
1072
+ ```rb
1073
+ config.x.webpacker[:digesting] = true
1074
+ ```