react_on_rails 12.1.0 → 12.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +12 -10
  3. data/.rubocop.yml +2 -1
  4. data/CHANGELOG.md +39 -17
  5. data/Gemfile.development_dependencies +1 -1
  6. data/NEWS.md +9 -4
  7. data/README.md +18 -316
  8. data/Rakefile +1 -1
  9. data/SUMMARY.md +12 -12
  10. data/docs/additional-details/generator-details.md +1 -1
  11. data/docs/additional-details/manual-installation-overview.md +2 -2
  12. data/docs/api/view-helpers-api.md +4 -4
  13. data/docs/contributor-info/linters.md +1 -1
  14. data/docs/contributor-info/pull-requests.md +1 -1
  15. data/docs/{basics → guides}/client-vs-server-rendering.md +1 -1
  16. data/docs/{basics → guides}/configuration.md +5 -2
  17. data/docs/{basics → guides}/deployment.md +1 -1
  18. data/docs/guides/getting-started.md +183 -0
  19. data/docs/{basics → guides}/hmr-and-hot-reloading-with-the-webpack-dev-server.md +0 -0
  20. data/docs/{basics → guides}/how-react-on-rails-works.md +3 -1
  21. data/docs/guides/how-to-conditionally-server-render-based-on-device-type.md +39 -0
  22. data/docs/guides/how-to-use-different-files-for-client-and-server-rendering.md +98 -0
  23. data/docs/{basics → guides}/i18n.md +0 -0
  24. data/docs/{basics → guides}/installation-into-an-existing-rails-app.md +3 -3
  25. data/docs/{basics → guides}/minitest-configuration.md +0 -0
  26. data/docs/{rails-webpacker-react-integration-options.md → guides/rails-webpacker-react-integration-options.md} +1 -1
  27. data/docs/guides/react-on-rails-overview.md +30 -0
  28. data/docs/{basics → guides}/react-server-rendering.md +2 -2
  29. data/docs/{basics → guides}/render-functions-and-railscontext.md +0 -0
  30. data/docs/{basics → guides}/rspec-configuration.md +2 -2
  31. data/docs/{basics → guides}/tutorial.md +2 -4
  32. data/docs/{basics → guides}/upgrading-react-on-rails.md +1 -1
  33. data/docs/{basics → guides}/webpack-configuration.md +1 -1
  34. data/docs/home.md +19 -378
  35. data/docs/javascript/code-splitting.md +2 -2
  36. data/docs/misc/articles.md +1 -1
  37. data/docs/misc/doctrine.md +3 -3
  38. data/docs/outdated/rails-assets-relative-paths.md +2 -2
  39. data/docs/outdated/rails-assets.md +1 -1
  40. data/docs/rails/convert-rails-5-api-only-app.md +1 -1
  41. data/docs/rails/rails-engine-integration.md +3 -12
  42. data/docs/rails/turbolinks.md +13 -1
  43. data/docs/react-on-rails-pro/react-on-rails-pro.md +43 -0
  44. data/docs/testimonials/testimonials.md +4 -4
  45. data/lib/generators/react_on_rails/base_generator.rb +1 -1
  46. data/lib/react_on_rails/helper.rb +21 -2
  47. data/lib/react_on_rails/locales/base.rb +7 -9
  48. data/lib/react_on_rails/react_component/render_options.rb +16 -7
  49. data/lib/react_on_rails/server_rendering_pool/ruby_embedded_java_script.rb +11 -0
  50. data/lib/react_on_rails/version.rb +1 -1
  51. data/lib/tasks/assets.rake +3 -1
  52. data/package.json +1 -1
  53. data/rakelib/release.rake +3 -3
  54. data/yarn.lock +469 -401
  55. metadata +22 -18
  56. data/.release-it.json +0 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1ff3b26eb01a206fc2f0a4e3a623463d88a4216c95a36c90b2fa55c5717a308c
4
- data.tar.gz: 28b373978a8eb7502c018e03aeec17058ba65d6ced76a50aa932894c76f835df
3
+ metadata.gz: 4ab995812150b12121f864f9826f1467bc4fa557b7b63a50a253d222558cce33
4
+ data.tar.gz: 3b58277fba79aa38cec6b99782146758cfa5a294f571ed64630b0275ca8e512b
5
5
  SHA512:
6
- metadata.gz: ccb1f3c3d34b9ddbca43e8fe349a2cb3ee27892a1b52d9fe938070f2947ed402fef03d7328041f4f02a7d0b5401b90cdcdc1141230d96efd2ced6da2bc0668b7
7
- data.tar.gz: 488f77190eee0fb0ca008535d7fbb8f5a43c380c31c9d4bdacf8d563383a0dc87b0e643eafde37a7d9ffc36e093d8a648c3c95f6b238bf567dcf76caf078027b
6
+ metadata.gz: d4abb58e8412368943531aa9ce0c875d5332714b86877a85b0a7ddbf9cf85233df9fe91e6014929041ddf0bc25a0c40e58e0a51082838f9ef2e409aebf552e73
7
+ data.tar.gz: 4da65a8f4d3b55b5d0f68e4a639e3e931f5c3babd96012cac4b1822d9416fdecb2e0f32830f5ca6e1910770c3c450ce5549fa3715e07ecec8ddbe00476d85718
data/.circleci/config.yml CHANGED
@@ -69,25 +69,25 @@ aliases:
69
69
  - &restore-package-node-modules-cache
70
70
  name: Restore cached node_modules directory
71
71
  keys:
72
- - v4-package-node-modules-cache-{{ checksum "yarn.lock" }}
72
+ - v5-package-node-modules-cache-{{ checksum "yarn.lock" }}
73
73
 
74
74
  # Restore spec/dummy/node_modules dir from cache using yarn.lock checksum as a key.
75
75
  - &restore-dummy-app-node-modules-cache
76
76
  name: Restore cached spec/dummy/node_modules directory
77
77
  keys:
78
- - v4-dummy-app-node-modules-cache-{{ checksum "spec/dummy/yarn.lock" }}
78
+ - v5-dummy-app-node-modules-cache-{{ checksum "spec/dummy/yarn.lock" }}
79
79
 
80
80
  # Restore vendor/bundle dir from cache using Gemfile.lock checksum as a key.
81
81
  - &restore-dummy-app-gem-cache
82
82
  name: Restore cached Ruby Gems for dummy app
83
83
  keys:
84
- - v4-dummy-app-gem-cache-{{ checksum "spec/dummy/Gemfile.lock" }}
84
+ - v5-dummy-app-gem-cache-{{ checksum "spec/dummy/Gemfile.lock" }}
85
85
 
86
86
  # Restore vendor/bundle dir from cache using react_on_rails.gemspec checksum as a key.
87
87
  - &restore-package-gem-cache
88
88
  name: Restore cached Ruby Gems for package
89
89
  keys:
90
- - v4-package-app-gem-cache-{{ checksum "react_on_rails.gemspec" }}
90
+ - v5-package-app-gem-cache-{{ checksum "react_on_rails.gemspec" }}
91
91
 
92
92
  # NOTE: Sometimes CI generated docker images are not updated in time to keep up with the minimum required
93
93
  # by chromedriver versions of Chrome. Just bump here Chrome version if chromedriver raises errors
@@ -139,7 +139,7 @@ jobs:
139
139
  - run: *install-package-node-modules
140
140
  - save_cache:
141
141
  name: Save root node_modules to cache
142
- key: v4-package-node-modules-cache-{{ checksum "yarn.lock" }}
142
+ key: v5-package-node-modules-cache-{{ checksum "yarn.lock" }}
143
143
  paths:
144
144
  - node_modules
145
145
 
@@ -157,7 +157,7 @@ jobs:
157
157
  - run: *install-dummy-app-node-modules
158
158
  - save_cache:
159
159
  name: Save spec/dummy/node_modules to cache
160
- key: v4-dummy-app-node-modules-cache-{{ checksum "spec/dummy/yarn.lock" }}
160
+ key: v5-dummy-app-node-modules-cache-{{ checksum "spec/dummy/yarn.lock" }}
161
161
  paths:
162
162
  - spec/dummy/node_modules
163
163
  - spec/dummy/node_modules
@@ -172,7 +172,7 @@ jobs:
172
172
  - run: *install-package-ruby-gems
173
173
  - save_cache:
174
174
  name: Save dummy app ruby gems to cache
175
- key: v4-package-app-gem-cache-{{ checksum "react_on_rails.gemspec" }}
175
+ key: v5-package-app-gem-cache-{{ checksum "react_on_rails.gemspec" }}
176
176
  paths:
177
177
  - vendor/bundle
178
178
 
@@ -186,7 +186,7 @@ jobs:
186
186
  - run: *install-dummy-app-ruby-gems
187
187
  - save_cache:
188
188
  name: Save dummy app ruby gems to cache
189
- key: v4-dummy-app-gem-cache-{{ checksum "spec/dummy/Gemfile.lock" }}
189
+ key: v5-dummy-app-gem-cache-{{ checksum "spec/dummy/Gemfile.lock" }}
190
190
  paths:
191
191
  - spec/dummy/vendor/bundle
192
192
 
@@ -209,7 +209,7 @@ jobs:
209
209
  command: cd spec/dummy && yarn run build:test
210
210
  - save_cache:
211
211
  name: Save test webpack bundles to cache (for build number checksum used by rspec job)
212
- key: v4-dummy-app-webpack-bundle-{{ .Revision }}
212
+ key: v5-dummy-app-webpack-bundle-{{ .Revision }}
213
213
  paths:
214
214
  - spec/dummy/public/webpack
215
215
  # Run JS unit tests for Renderer package.
@@ -249,7 +249,7 @@ jobs:
249
249
  - restore_cache: *restore-dummy-app-gem-cache
250
250
  - restore_cache:
251
251
  name: Restore cached webpack bundles for dummy app
252
- key: v4-dummy-app-webpack-bundle-{{ .Revision }}
252
+ key: v5-dummy-app-webpack-bundle-{{ .Revision }}
253
253
  - restore_cache: *restore-dummy-app-node-modules-cache
254
254
  - restore_cache: *restore-package-node-modules-cache
255
255
  - run: *install-package-node-modules
@@ -288,6 +288,8 @@ jobs:
288
288
  path: ~/rspec
289
289
  - store_artifacts:
290
290
  path: spec/dummy/tmp/capybara
291
+ - store_artifacts:
292
+ path: spec/dummy/tmp/screenshots
291
293
  - store_artifacts:
292
294
  path: spec/dummy/log/test.log
293
295
  - store_artifacts:
data/.rubocop.yml CHANGED
@@ -35,7 +35,8 @@ AllCops:
35
35
 
36
36
  Naming/FileName:
37
37
  Exclude:
38
- - 'Gemfile'
38
+ - '**/Gemfile'
39
+ - '**/Rakefile'
39
40
 
40
41
  Layout/LineLength:
41
42
  Max: 120
data/CHANGELOG.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Change Log
2
2
  All notable changes to this project's source code will be documented in this file. Items under `Unreleased` is upcoming features that will be out in next version. NOTE: major versions of the npm module and the gem must be kept in sync.
3
3
 
4
- Migration instructions for the major updates can be found [here](docs/basics/upgrading-react-on-rails.md#upgrading-to-version-9.md). Some smaller migration information can be found here.
4
+ Migration instructions for the major updates can be found [here](https://www.shakacode.com/react-on-rails/docs/guides/upgrading-react-on-rails#upgrading-to-version-9.md). Some smaller migration information can be found here.
5
5
 
6
6
  ## Need Help Migrating?
7
7
  If you would like help in migrating between React on Rails versions or help with implementing server rendering, please contact [justin@shakacode.com](mailto:justin@shakacode.com) for information about our [React on Rails Pro Support Options](https://www.shakacode.com/react-on-rails-pro).
@@ -17,16 +17,36 @@ Changes since last non-beta release.
17
17
 
18
18
  *Please add entries here for your pull requests that are not yet released.*
19
19
 
20
+ ### [12.4.0] - 2021-09-22
21
+ #### Added
22
+ - ScoutAPM tracing support for server rendering [PR 1379](https://github.com/shakacode/react_on_rails/pull/1379) by [justin808](https://github.com/justin808).
23
+
24
+ - Ability to stop React on Rails from modifying or creating the `assets:precompile` task. [PR 1371](https://github.com/shakacode/react_on_rails/pull/1371) by [justin808](https://github.com/justin808). Thanks to [elstgav](https://github.com/elstgav) for [the suggestion](https://github.com/shakacode/react_on_rails/issues/1368)!
25
+
26
+ - Ability to stop stubbing of setTimeout, setInterval, & clearTimeout conditional by setting `ReactOnRailsPro.config.include_execjs_polyfills = false` in the React on Rails Pro configuration file. Also, added the ability to have render functions return a promise to be awaited by React on Rails Pro Node Renderer. [PR 1380](https://github.com/shakacode/react_on_rails/pull/1380) by [judahmeek](https://github.com/judahmeek)
27
+
28
+ ### [12.3.0] - 2021-07-26
29
+ #### Added
30
+ - Ability to use with Turbo (@hotwired/turbo), as Turbolinks gets obsolete. [PR 1374](https://github.com/shakacode/react_on_rails/pull/1374) by [pgruener](https://github.com/pgruener) and [PR 1377](https://github.com/shakacode/react_on_rails/pull/1377) by [mdesantis](https://github.com/mdesantis).
31
+
32
+ To configure turbo the following option can be set:
33
+ `ReactOnRails.setOptions({ turbo: true })`
34
+
35
+ ### [12.2.0] - 2021-03-25
36
+ #### Added
37
+ - Ability to configure server react rendering to throw rather than just logging the error. Useful for
38
+ React on Rails Pro Node rendering [PR 1365](https://github.com/shakacode/react_on_rails/pull/1365) by [justin808](https://github.com/justin808).
39
+
20
40
  ### [12.1.0] - 2021-03-23
21
41
  #### Added
22
- - Added the ability to assign a module with a `call` method to `config.build_production_command`. See [the configuration docs](./docs/basics/configuration.md). [PR 1362: Accept custom module for config.build_production_command](https://github.com/shakacode/react_on_rails/pull/1362).
42
+ - Added the ability to assign a module with a `call` method to `config.build_production_command`. See [the configuration docs](https://www.shakacode.com/react-on-rails/docs/guides/configuration). [PR 1362: Accept custom module for config.build_production_command](https://github.com/shakacode/react_on_rails/pull/1362).
23
43
 
24
44
  #### Fixed
25
45
  - Stop setting NODE_ENV value during precompile, as it interferred with rails/webpacker's setting of NODE_ENV to production by default. Fixes [#1334](https://github.com/shakacode/react_on_rails/issues/1334). [PR 1356: Don't set NODE_ENV in assets.rake](https://github.com/shakacode/react_on_rails/pull/1356) by [alexrozanski](https://github.com/alexrozanski).
26
46
 
27
47
  ### [12.0.4] - 2020-11-14
28
48
  #### Fixed
29
- - Install generator now specifies the version. Fixes [React on Rails Generator installs the older npm package #1336](https://github.com/shakacode/react_on_rails/issues/1336). [PR 1338Fix Generator to use Exact NPM Version](https://github.com/shakacode/react_on_rails/pull/1338) by [justin808](https://github.com/justin808).
49
+ - Install generator now specifies the version. Fixes [React on Rails Generator installs the older npm package #1336](https://github.com/shakacode/react_on_rails/issues/1336). [PR 1338: Fix Generator to use Exact NPM Version](https://github.com/shakacode/react_on_rails/pull/1338) by [justin808](https://github.com/justin808).
30
50
 
31
51
  ### [12.0.3] - 2020-09-20
32
52
  #### Fixed
@@ -38,14 +58,14 @@ Changes since last non-beta release.
38
58
 
39
59
  ### [12.0.2] - 2020-07-09
40
60
  #### Fixed
41
- - Remove dependency upon Redux for Typescript types. [PR 1323](https://github.com/shakacode/react_on_rails/pull/1306) by [justin808](https://github.com/justin808).
61
+ - Remove dependency upon Redux for Typescript types. [PR 1323](https://github.com/shakacode/react_on_rails/pull/1323) by [justin808](https://github.com/justin808).
42
62
 
43
63
  ### [12.0.1] - 2020-07-09
44
64
  #### Fixed
45
65
  - Changed invocation of webpacker:clean to use a very large number of versions so it does not acidentally delete the server-bundle.js. [PR 1306](https://github.com/shakacode/react_on_rails/pull/1306) by By [justin808](https://github.com/justin808).
46
66
 
47
67
  ### [12.0.0] - 2020-07-08
48
- For upgrade instructions, see [docs/basics/upgrading-react-on-rails.md](./docs/basics/upgrading-react-on-rails.md).
68
+ For upgrade instructions, see [docs/guides/upgrading-react-on-rails.md](https://www.shakacode.com/react-on-rails/docs/guides/upgrading-react-on-rails).
49
69
 
50
70
  #### Major Improvements
51
71
  1. **React Hooks Support** for top level components
@@ -61,7 +81,7 @@ set JavaScript property `renderFunction` on the function for which you want to r
61
81
  invoked to return the React component. In that case, you won't need to pass any unused params.
62
82
  [PR 1268](https://github.com/shakacode/react_on_rails/pull/1268) by [justin808](https://github.com/justin808)
63
83
 
64
- See [docs/basics/upgrading-react-on-rails](./docs/basics/upgrading-react-on-rails.md#upgrading-to-v12)
84
+ See [docs/guides/upgrading-react-on-rails](https://www.shakacode.com/react-on-rails/docs/guides/upgrading-react-on-rails#upgrading-to-v12)
65
85
  for details.
66
86
 
67
87
  #### Other Updates
@@ -330,7 +350,7 @@ Updated React on Rails to depend on [rails/webpacker](https://github.com/rails/w
330
350
 
331
351
 
332
352
  #### 9.0 from 8.x. Upgrade Instructions
333
- Moved to [our documentation](docs/basics/upgrading-react-on-rails.md#upgrading-to-version-9).
353
+ Moved to [our documentation](https://www.shakacode.com/react-on-rails/docs/guides/upgrading-react-on-rails#upgrading-to-version-9).
334
354
 
335
355
  ### [8.0.7] - 2017-08-16
336
356
  #### Fixed
@@ -680,7 +700,7 @@ Here is the addition to the generated config file:
680
700
  ## [5.2.0] - 2016-04-08
681
701
  ##### Added
682
702
  - Support for React 15.0 to react_on_rails. See [#379](https://github.com/shakacode/react_on_rails/pull/379) by [brucek](https://github.com/brucek).
683
- - Support for Node.js server side rendering. See [#380](https://github.com/shakacode/react_on_rails/pull/380) by [alleycat](https://github.com/alleycat-at-git) and [doc](https://github.com/shakacode/react_on_rails/blob/master/docs/additional-reading/node-server-rendering.md)
703
+ - Support for Node.js server side rendering. See [#380](https://github.com/shakacode/react_on_rails/pull/380) by [alleycat](https://github.com/alleycat-at-git) and [doc](https://www.shakacode.com/react-on-rails/docs/react-on-rails-pro/react-on-rails-pro#pro-integration-with-nodejs-for-server-rendering)
684
704
 
685
705
  ##### Removed
686
706
  - Generator removals to simplify installer. See [#364](https://github.com/shakacode/react_on_rails/pull/364) by [jbhatab](https://github.com/jbhatab).
@@ -813,11 +833,11 @@ All 5.1.0 changes can be found in [#362](https://github.com/shakacode/react_on_r
813
833
  <%= react_component("ReduxSharedStoreApp", props: {}, prerender: false, trace: true) %>
814
834
  ```
815
835
  You'll get a deprecation message to change this.
816
- - Renamed `ReactOnRails.configure_rspec_to_compile_assets` to `ReactOnRails::TestHelper.configure_rspec_to_compile_assets`. The code has also been optimized to check for whether or not the compiled webpack bundles are up to date or not and will not run if not necessary. If you are using non-standard directories for your generated webpack assets (`app/assets/javascripts/generated` and `app/assets/stylesheets/generated`) or have additional directories you wish the helper to check, you need to update your ReactOnRails configuration accordingly. See [documentation](https://github.com/shakacode/react_on_rails/blob/master/docs/additional-reading/rspec_configuration.md) for how to do this. [#253](https://github.com/shakacode/react_on_rails/pull/253).
836
+ - Renamed `ReactOnRails.configure_rspec_to_compile_assets` to `ReactOnRails::TestHelper.configure_rspec_to_compile_assets`. The code has also been optimized to check for whether or not the compiled webpack bundles are up to date or not and will not run if not necessary. If you are using non-standard directories for your generated webpack assets (`app/assets/javascripts/generated` and `app/assets/stylesheets/generated`) or have additional directories you wish the helper to check, you need to update your ReactOnRails configuration accordingly. See [documentation](https://www.shakacode.com/react-on-rails/docs/guides/rspec_configuration) for how to do this. [#253](https://github.com/shakacode/react_on_rails/pull/253).
817
837
  - You have to call `ReactOnRails.register` to register react components. This was deprecated in v2. [#273](https://github.com/shakacode/react_on_rails/pull/273).
818
838
 
819
839
  ##### Migration Steps v2 to v3
820
- - [spec/dummy/spec/rails_helper.rb](https://github.com/shakacode/react_on_rails/blob/master/spec%2Fdummy%2Fspec%2Frails_helper.rb#L36..38) for an example. Add this line to your `rails_helper.rb`:
840
+ - See [these changes of spec/dummy/spec/rails_helper.rb](https://github.com/shakacode/react_on_rails/blob/master/spec/dummy/spec/rails_helper.rb#L36..38) for an example. Add this line to your `rails_helper.rb`:
821
841
  ```ruby
822
842
  RSpec.configure do |config|
823
843
  # Ensure that if we are running js tests, we are using latest webpack assets
@@ -833,7 +853,7 @@ RSpec.configure do |config|
833
853
 
834
854
  ## [2.2.0] - 2016-01-29
835
855
  ##### Added
836
- - New JavaScript API for debugging TurboLinks issues. Be sure to see [turbolinks docs](docs/additional-reading/turbolinks.md). `ReactOnRails.setOptions({ traceTurbolinks: true });`. Removed the file `debug_turbolinks` added in 2.1.1. See [#243](https://github.com/shakacode/react_on_rails/pull/243).
856
+ - New JavaScript API for debugging TurboLinks issues. Be sure to see [turbolinks docs](https://www.shakacode.com/react-on-rails/docs/rails/turbolinks). `ReactOnRails.setOptions({ traceTurbolinks: true });`. Removed the file `debug_turbolinks` added in 2.1.1. See [#243](https://github.com/shakacode/react_on_rails/pull/243).
837
857
 
838
858
  ## [2.1.1] - 2016-01-28
839
859
 
@@ -842,21 +862,21 @@ RSpec.configure do |config|
842
862
 
843
863
  ##### Added
844
864
  - `ReactOnRails.render` returns a virtualDomElement Reference to your React component's backing instance. See [#234](https://github.com/shakacode/react_on_rails/pull/234).
845
- - `debug_turbolinks` helper for debugging turbolinks issues. See [turbolinks](docs/additional-reading/turbolinks.md).
865
+ - `debug_turbolinks` helper for debugging turbolinks issues. See [turbolinks](https://www.shakacode.com/react-on-rails/docs/rails/turbolinks).
846
866
  - Enhanced regression testing for non-turbolinks apps. Runs all tests for dummy app with turbolinks both disabled and enabled.
847
867
 
848
868
  ## [2.1.0] - 2016-01-26
849
869
  ##### Added
850
- - Added EnsureAssetsCompiled feature so that you do not accidentally run tests without properly compiling the JavaScript bundles. Add a line to your `rails_helper.rb` file to check that the latest Webpack bundles have been generated prior to running tests that may depend on your client-side code. See [docs](docs/additional-reading/rspec_configuration.md) for more detailed instructions. [#222](https://github.com/shakacode/react_on_rails/pull/222)
851
- - Added [migration guide](https://github.com/shakacode/react_on_rails#migrate-from-react-rails) for migrating from React-Rails. [#219](https://github.com/shakacode/react_on_rails/pull/219)
852
- - Added [React on Rails Doctrine](docs/doctrine.md) to docs. Discusses the project's motivations, conventions, and principles. [#220](https://github.com/shakacode/react_on_rails/pull/220)
870
+ - Added EnsureAssetsCompiled feature so that you do not accidentally run tests without properly compiling the JavaScript bundles. Add a line to your `rails_helper.rb` file to check that the latest Webpack bundles have been generated prior to running tests that may depend on your client-side code. See [docs](https://www.shakacode.com/react-on-rails/docs/guides/rspec_configuration) for more detailed instructions. [#222](https://github.com/shakacode/react_on_rails/pull/222)
871
+ - Added [migration guide](https://www.shakacode.com/react-on-rails/docs/additional-details/migrating-from-react-rails) for migrating from React-Rails. [#219](https://github.com/shakacode/react_on_rails/pull/219)
872
+ - Added [React on Rails Doctrine](https://www.shakacode.com/react-on-rails/docs/misc/doctrine) to docs. Discusses the project's motivations, conventions, and principles. [#220](https://github.com/shakacode/react_on_rails/pull/220)
853
873
  - Added ability to skip `display:none` style in the generated content tag for a component. Some developers may want to disable inline styles for security reasons. See generated config [initializer file](lib/generators/react_on_rails/templates/base/base/config/initializers/react_on_rails.rb#L27) for example on setting `skip_display_none`. [#218](https://github.com/shakacode/react_on_rails/pull/218)
854
874
 
855
875
  ##### Changed
856
876
  - Changed message when running the dev (a.k.a. "express" server). [#227](https://github.com/shakacode/react_on_rails/commit/543ae70254d0c7b477e2c92af86f40746e58a431)
857
877
 
858
878
  ##### Fixed
859
- - Fixed handling of Turbolinks. Code was checking that Turbolinks was installed when it was not yet because some setups load Turbolinks after the bundles. The changes to the code will check if Turbolinks is installed after the page loaded event fires. Code was also added to allow easy debugging of Turbolinks, which should be useful when v5 of Turbolinks is released shortly. Details of how to configure Turbolinks with troubleshooting were added to docs/additional-reading/turbolinks.md. [#221](https://github.com/shakacode/react_on_rails/pull/221)
879
+ - Fixed handling of Turbolinks. Code was checking that Turbolinks was installed when it was not yet because some setups load Turbolinks after the bundles. The changes to the code will check if Turbolinks is installed after the page loaded event fires. Code was also added to allow easy debugging of Turbolinks, which should be useful when v5 of Turbolinks is released shortly. Details of how to configure Turbolinks with troubleshooting were added to `docs` directory. [#221](https://github.com/shakacode/react_on_rails/pull/221)
860
880
  - Fixed issue with already initialized constant warning appearing when starting a Rails server [#226](https://github.com/shakacode/react_on_rails/pull/226)
861
881
  - Fixed to make backwards compatible with Ruby v2.0 and updated all Ruby and Node dependencies.
862
882
 
@@ -954,7 +974,9 @@ Best done with Object destructing:
954
974
  ##### Fixed
955
975
  - Fix several generator related issues.
956
976
 
957
- [Unreleased]: https://github.com/shakacode/react_on_rails/compare/12.1.0...master
977
+ [Unreleased]: https://github.com/shakacode/react_on_rails/compare/12.3.0...master
978
+ [12.3.0]: https://github.com/shakacode/react_on_rails/compare/12.2.0...12.3.0
979
+ [12.2.0]: https://github.com/shakacode/react_on_rails/compare/12.1.0...12.2.0
958
980
  [12.1.0]: https://github.com/shakacode/react_on_rails/compare/12.0.4...12.1.0
959
981
  [12.0.4]: https://github.com/shakacode/react_on_rails/compare/12.0.3...12.0.4
960
982
  [12.0.3]: https://github.com/shakacode/react_on_rails/compare/12.0.2...12.0.3
@@ -29,7 +29,7 @@ group :development, :test do
29
29
  gem "pry-doc"
30
30
  gem "pry-rails"
31
31
  gem "pry-rescue"
32
- gem "rubocop", require: false
32
+ gem "rubocop", "1.14.0", require: false
33
33
  gem "rubocop-performance", require: false
34
34
  gem "rubocop-rspec", require: false
35
35
  gem "scss_lint", require: false
data/NEWS.md CHANGED
@@ -1,21 +1,27 @@
1
1
  # NEWS
2
2
 
3
- *We'll keep a history of the news. A few bullets at the top will also show on the [README.md](./README.md).*
3
+ *A history of the news. A few bullets at the top will also show on the [README.md](./README.md).*
4
4
 
5
+ * **October 14, 2020**: [RUBY ROGUES
6
+ RR 474: React on Rails V12 – Don’t Shave That Yak! with Justin Gordon](https://devchat.tv/ruby-rogues/rr-474-react-on-rails-v12-dont-shave-that-yak-with-justin-gordon/).
7
+
8
+ * **October 1, 2020**: See the [spec/dummy](https://github.com/shakacode/react_on_rails/tree/master/spec/dummy) example repo for a simple configuration of webpack via the rails/webpacker gem
9
+ that supports SSR.
10
+ * **August 2, 2020**: See the example repo of [React on Rails Tutorial With SSR, HMR fast refresh, and TypeScript](https://github.com/shakacode/react_on_rails_tutorial_with_ssr_and_hmr_fast_refresh) for a new way to setup the creation of your SSR bundle with `rails/webpacker`.
5
11
  * July 8, 2020: Release **v12**.
6
12
  1. **React Hooks Support** for top level components
7
13
  2. **Typescript bindings**
8
14
  3. **rails/webpacker** "just works" with React on Rails by default.
9
15
  4. i18n support for generating a JSON file rather than a JS file.
10
16
  * 2018-02-27: **Version 10.1.2** Supports the React API for ReactDOM.hydrate.
11
- * 2017-09-06: **VERSION 9.0.0 shipped!** This version depends on Webpacker directly. See [Upgrading React on Rails](./docs/basics/upgrading-react-on-rails.md) for more concise instructions on upgrading.
17
+ * 2017-09-06: **VERSION 9.0.0 shipped!** This version depends on Webpacker directly. See [Upgrading React on Rails](./docs/guides/upgrading-react-on-rails.md) for more concise instructions on upgrading.
12
18
  * Always see the [CHANGELOG.md](./CHANGELOG.md) for the latest project changes.
13
19
  * [VERSION 8.1.0](https://rubygems.org/gems/react_on_rails/) shipped with [webpacker_lite](https://github.com/shakacode/webpacker_lite) (soon [**webpacker**](https://github.com/rails/webpacker/issues/464#issuecomment-310986140) support! [react-webpack-rails-tutorial PR #395](https://github.com/shakacode/react-webpack-rails-tutorial/pull/395) shows the changes needed to migrate from the Asset Pipeline to Webpacker Lite. For more information, see my article: [Webpacker Lite: Why Fork Webpacker?](https://blog.shakacode.com/webpacker-lite-why-fork-webpacker-f0a7707fac92). Per recent discussions, we [will merge Webpacker Lite changes back into Webpacker](https://github.com/rails/webpacker/issues/464#issuecomment-310986140). There's no reason to wait for this. The upgrade will eventually be trivial.
14
20
  * 2017-04-25: 7.0.0 Shipped! Performance improvements! Please upgrade! Only "breaking" change is that you have to update both the node module and the Ruby gem.
15
21
  * 2017-04-09: 8.0.0 beta work to include webpacker_lite gem has begun. See [#786](https://github.com/shakacode/react_on_rails/issues/786).
16
22
  * 2017-04-03: 6.9.3 Released! Props rendered in JSON script tag. Page size is smaller now due to less escaping!
17
23
  * 2017-03-06: Updated to Webpack v2!
18
- * 2017-03-02: Demo of internationalization (i18n) is live at [reactrails.com](https://www.reactrails.com/). Docs [here](docs/basics/i18n.md).
24
+ * 2017-03-02: Demo of internationalization (i18n) is live at [reactrails.com](https://www.reactrails.com/). Docs [here](docs/guides/i18n.md).
19
25
  * 2017-02-28: See [discussions here on Webpacker](https://github.com/rails/webpacker/issues/139) regarding how Webpacker will allow React on Rails to avoid using the asset pipeline in the near future.
20
26
  * 2017-02-28: Upgrade to Webpack v2 or use the `--bail` option in your webpack script for test and production builds. See the discussion on [PR #730](https://github.com/shakacode/react_on_rails/pull/730).
21
27
  * 2016-11-03: Spoke at [LA Ruby: "React on Rails: Why, What, and How?"](http://www.meetup.com/laruby/events/234825187/). [Video and pictures in this article](https://blog.shakacode.com/my-react-on-rails-talk-at-the-la-ruby-rails-meetup-november-10-2016-eaaa83aff800#.ej6h4eglp).
@@ -54,4 +60,3 @@
54
60
  * React on Rails does not yet have *generator* support for building new apps that use CSS modules and hot reloading via the Rails server as is demonstrated in the [shakacode/react-webpack-rails-tutorial](https://github.com/shakacode/react-webpack-rails-tutorial/). *We do support this, but we don't generate the code.* If you did generate a fresh app from react_on_rails and want to move to CSS Modules, then see [PR 175: Babel 6 / CSS Modules / Rails hot reloading](https://github.com/shakacode/react-webpack-rails-tutorial/pull/175). Note, while there are probably fixes after this PR was accepted, this has the majority of the changes. See [the tutorial](https://github.com/shakacode/react-webpack-rails-tutorial/#news) for more information. Ping us if you want to help!
55
61
  * [ShakaCode](http://www.shakacode.com) is doing Skype plus Slack/Github based coaching for "React on Rails". [Click here](http://www.shakacode.com/work/index.html) for more information.
56
62
  * Be sure to read our article [The React on Rails Doctrine](https://medium.com/@railsonmaui/the-react-on-rails-doctrine-3c59a778c724).
57
-