react_on_rails 14.0.0 → 14.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 37cf3a6fba0b83dec923947d8cc8f883f3f4f8ff06c51760347bbe41a79ee35a
4
- data.tar.gz: 522f25ca29ebd985f975d9f8dd7ab8947ef4ccacc7591f28db176b0c2964f444
3
+ metadata.gz: 87289fa53128766e9295ad92d57015cafddfc9668324e62977d90ace31cbac83
4
+ data.tar.gz: 7f1d8b3e048ff7e93d4b0506bc2421ae25d5b0961d24c1972c2ca78b26e87edf
5
5
  SHA512:
6
- metadata.gz: 873fc4c65b407b3982ef2761d0e5e346ef8eb04dc9468b074db188f641537634578b057b59a3b4b12135a988bd725207ded6a20e9b4a97ca42f39c31ea934928
7
- data.tar.gz: 6f46192a308e4d636bbe954e3c34bc256aab07c9b42bf177c9254fde495e37726a46b285df1124ef2ebc859b2311cf77afca8bb16158f39a5eb9fec013d714b2
6
+ metadata.gz: c1832bb6fbfe649168ff1de8a8d1a1f86f93ba52cf59c90fb2a2d23d28776240327521efc2d674b8d566f10bf1fa52da4390cc2b008b7c42c00901eea2a6a9e0
7
+ data.tar.gz: 8a7c5df6bcf809ee854e1b42b48219c46b4e0607e1f22f7a3f4a97cd30f5ef279a3a189d3055b118702d02bac4efc225693966b27a2d864932dd6065d0aadd3e
data/CHANGELOG.md CHANGED
@@ -4,9 +4,12 @@ All notable changes to this project's source code will be documented in this fil
4
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
  ## Want to Save Time Updating?
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).
8
7
 
9
- We specialize in helping companies quickly and efficiently update client-side dependencies, allowing developers to focus on features and bug fixes rather than addressing tech-debt from old dependencies. ShakaCode also maintains Shakapacker, the successor to Webpacker.
8
+ If you need help upgrading `react_on_rails`, `webpacker` to `shakapacker`, or JS packages, contact justin@shakacode.com. We can upgrade your project and improve your development and customer experiences, allowing you to focus on building new features or fixing bugs instead.
9
+
10
+ For an overview of working with us, see our [Client Engagement Model](https://www.shakacode.com/blog/client-engagement-model/) article and [how we bill for time](https://www.shakacode.com/blog/shortcut-jira-trello-github-toggl-time-and-task-tracking/).
11
+
12
+ If you think ShakaCode can help your project, [click here](https://meetings.hubspot.com/justingordon/30-minute-consultation) to book a call with [Justin Gordon](mailto:justin@shakacode.com), the creator of React on Rails and Shakapacker.
10
13
 
11
14
  ## Contributors
12
15
  Please follow the recommendations outlined at [keepachangelog.com](http://keepachangelog.com/). Please use the existing headings and styling as a guide, and add a link for the version diff at the bottom of the file. Also, please update the `Unreleased` link to compare to the latest release version.
@@ -15,6 +18,16 @@ Please follow the recommendations outlined at [keepachangelog.com](http://keepac
15
18
  ### [Unreleased]
16
19
  Changes since the last non-beta release.
17
20
 
21
+ ### [14.0.2] - 2024-06-11
22
+
23
+ #### Fixed
24
+ - Project initialization with Shakapacker v8+ fixed [PR 1629](https://github.com/shakacode/react_on_rails/pull/1629) by [vaukalak](https://github.com/vaukalak)
25
+
26
+ ### [14.0.1] - 2024-05-16
27
+
28
+ #### Fixed
29
+ - Pack Generation: Added functionality that will add an import statement, if missing, to the server bundle entry point even if the auto-bundle generated files still exist [PR 1610](https://github.com/shakacode/react_on_rails/pull/1610) by [judahmeek](https://github.com/judahmeek).
30
+
18
31
  ### [14.0.0] - 2024-04-03
19
32
  _Major bump because dropping support for Ruby 2.7 and deprecated `webpackConfigLoader.js`._
20
33
 
@@ -25,11 +38,7 @@ _Major bump because dropping support for Ruby 2.7 and deprecated `webpackConfigL
25
38
  #### Fixed
26
39
  - Trimmed the Gem to remove package.json which could cause superflous security warnings. [PR 1605](https://github.com/shakacode/react_on_rails/pull/1605) by [justin808](https://github.com/justin808).
27
40
  - Prevent displaying the deprecation message for using `webpacker_precompile?` method and `webpacker:clean` rake task when using Shakapacker v7+ [PR 1592](https://github.com/shakacode/react_on_rails/pull/1592) by [ahangarha](https://github.com/ahangarha).
28
-
29
- ### [13.4.1]
30
- #### Fixed
31
41
  - Fixed Typescript types for ServerRenderResult, ReactComponent, RenderFunction, and RailsContext interfaces. [PR 1582](https://github.com/shakacode/react_on_rails/pull/1582) & [PR 1585](https://github.com/shakacode/react_on_rails/pull/1585) by [kotarella1110](https://github.com/kotarella1110)
32
-
33
42
  - Removed a workaround in `JsonOutput#escape` for an no-longer supported Rails version. Additionally, removed `Utils.rails_version_less_than_4_1_1`
34
43
  which was only used in the workaround. [PR 1580](https://github.com/shakacode/react_on_rails/pull/1580) by [wwahammy](https://github.com/wwahammy)
35
44
 
@@ -1124,9 +1133,10 @@ Best done with Object destructing:
1124
1133
  ##### Fixed
1125
1134
  - Fix several generator-related issues.
1126
1135
 
1127
- [Unreleased]: https://github.com/shakacode/react_on_rails/compare/14.0.0...master
1128
- [14.0.0]: https://github.com/shakacode/react_on_rails/compare/13.4.1...14.0.0
1129
- [13.4.1]: https://github.com/shakacode/react_on_rails/compare/13.4.0...13.4.1
1136
+ [Unreleased]: https://github.com/shakacode/react_on_rails/compare/14.0.2...master
1137
+ [14.0.2]: https://github.com/shakacode/react_on_rails/compare/14.0.1...14.0.2
1138
+ [14.0.1]: https://github.com/shakacode/react_on_rails/compare/14.0.0...14.0.1
1139
+ [14.0.0]: https://github.com/shakacode/react_on_rails/compare/13.4.0...14.0.0
1130
1140
  [13.4.0]: https://github.com/shakacode/react_on_rails/compare/13.3.5...13.4.0
1131
1141
  [13.3.5]: https://github.com/shakacode/react_on_rails/compare/13.3.4...13.3.5
1132
1142
  [13.3.4]: https://github.com/shakacode/react_on_rails/compare/13.3.3...13.3.4
@@ -4,12 +4,11 @@ gem "shakapacker", "7.2.1"
4
4
  gem "bootsnap", require: false
5
5
  gem "rails", "~> 7.1"
6
6
 
7
- gem "sqlite3"
7
+ gem "sqlite3", "~> 1.6"
8
8
  gem "sass-rails", "~> 6.0"
9
9
  gem "uglifier"
10
10
  gem "jquery-rails"
11
11
  gem "puma", "~> 6.0"
12
- gem "bundler", "2.5.3"
13
12
 
14
13
  # Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
15
14
  gem "turbolinks" if ENV["DISABLE_TURBOLINKS"].nil? || ENV["DISABLE_TURBOLINKS"].strip.empty?
@@ -30,7 +29,7 @@ group :development, :test do
30
29
  gem "pry-doc"
31
30
  gem "pry-rails"
32
31
  gem "pry-rescue"
33
- gem "rubocop", "~>1.59", require: false
32
+ gem "rubocop", "1.61.0", require: false
34
33
  gem "rubocop-performance", "~>1.20.0", require: false
35
34
  gem "rubocop-rspec", "~>2.26", require: false
36
35
  gem "scss_lint", require: false
data/Gemfile.lock ADDED
@@ -0,0 +1,434 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ react_on_rails (14.0.0)
5
+ addressable
6
+ connection_pool
7
+ execjs (~> 2.5)
8
+ rails (>= 5.2)
9
+ rainbow (~> 3.0)
10
+
11
+ GEM
12
+ remote: https://rubygems.org/
13
+ specs:
14
+ actioncable (7.1.3.2)
15
+ actionpack (= 7.1.3.2)
16
+ activesupport (= 7.1.3.2)
17
+ nio4r (~> 2.0)
18
+ websocket-driver (>= 0.6.1)
19
+ zeitwerk (~> 2.6)
20
+ actionmailbox (7.1.3.2)
21
+ actionpack (= 7.1.3.2)
22
+ activejob (= 7.1.3.2)
23
+ activerecord (= 7.1.3.2)
24
+ activestorage (= 7.1.3.2)
25
+ activesupport (= 7.1.3.2)
26
+ mail (>= 2.7.1)
27
+ net-imap
28
+ net-pop
29
+ net-smtp
30
+ actionmailer (7.1.3.2)
31
+ actionpack (= 7.1.3.2)
32
+ actionview (= 7.1.3.2)
33
+ activejob (= 7.1.3.2)
34
+ activesupport (= 7.1.3.2)
35
+ mail (~> 2.5, >= 2.5.4)
36
+ net-imap
37
+ net-pop
38
+ net-smtp
39
+ rails-dom-testing (~> 2.2)
40
+ actionpack (7.1.3.2)
41
+ actionview (= 7.1.3.2)
42
+ activesupport (= 7.1.3.2)
43
+ nokogiri (>= 1.8.5)
44
+ racc
45
+ rack (>= 2.2.4)
46
+ rack-session (>= 1.0.1)
47
+ rack-test (>= 0.6.3)
48
+ rails-dom-testing (~> 2.2)
49
+ rails-html-sanitizer (~> 1.6)
50
+ actiontext (7.1.3.2)
51
+ actionpack (= 7.1.3.2)
52
+ activerecord (= 7.1.3.2)
53
+ activestorage (= 7.1.3.2)
54
+ activesupport (= 7.1.3.2)
55
+ globalid (>= 0.6.0)
56
+ nokogiri (>= 1.8.5)
57
+ actionview (7.1.3.2)
58
+ activesupport (= 7.1.3.2)
59
+ builder (~> 3.1)
60
+ erubi (~> 1.11)
61
+ rails-dom-testing (~> 2.2)
62
+ rails-html-sanitizer (~> 1.6)
63
+ activejob (7.1.3.2)
64
+ activesupport (= 7.1.3.2)
65
+ globalid (>= 0.3.6)
66
+ activemodel (7.1.3.2)
67
+ activesupport (= 7.1.3.2)
68
+ activerecord (7.1.3.2)
69
+ activemodel (= 7.1.3.2)
70
+ activesupport (= 7.1.3.2)
71
+ timeout (>= 0.4.0)
72
+ activestorage (7.1.3.2)
73
+ actionpack (= 7.1.3.2)
74
+ activejob (= 7.1.3.2)
75
+ activerecord (= 7.1.3.2)
76
+ activesupport (= 7.1.3.2)
77
+ marcel (~> 1.0)
78
+ activesupport (7.1.3.2)
79
+ base64
80
+ bigdecimal
81
+ concurrent-ruby (~> 1.0, >= 1.0.2)
82
+ connection_pool (>= 2.2.5)
83
+ drb
84
+ i18n (>= 1.6, < 2)
85
+ minitest (>= 5.1)
86
+ mutex_m
87
+ tzinfo (~> 2.0)
88
+ addressable (2.8.6)
89
+ public_suffix (>= 2.0.2, < 6.0)
90
+ amazing_print (1.6.0)
91
+ ast (2.4.2)
92
+ base64 (0.2.0)
93
+ bigdecimal (3.1.8)
94
+ bootsnap (1.18.3)
95
+ msgpack (~> 1.2)
96
+ builder (3.2.4)
97
+ byebug (11.1.3)
98
+ capybara (3.40.0)
99
+ addressable
100
+ matrix
101
+ mini_mime (>= 0.1.3)
102
+ nokogiri (~> 1.11)
103
+ rack (>= 1.6.0)
104
+ rack-test (>= 0.6.3)
105
+ regexp_parser (>= 1.5, < 3.0)
106
+ xpath (~> 3.2)
107
+ capybara-screenshot (1.0.26)
108
+ capybara (>= 1.0, < 4)
109
+ launchy
110
+ childprocess (5.0.0)
111
+ coderay (1.1.3)
112
+ concurrent-ruby (1.2.3)
113
+ connection_pool (2.4.1)
114
+ coveralls (0.8.23)
115
+ json (>= 1.8, < 3)
116
+ simplecov (~> 0.16.1)
117
+ term-ansicolor (~> 1.3)
118
+ thor (>= 0.19.4, < 2.0)
119
+ tins (~> 1.6)
120
+ crass (1.0.6)
121
+ date (3.3.4)
122
+ diff-lcs (1.5.1)
123
+ docile (1.4.0)
124
+ drb (2.2.1)
125
+ equivalent-xml (0.6.0)
126
+ nokogiri (>= 1.4.3)
127
+ erubi (1.12.0)
128
+ execjs (2.9.1)
129
+ ffi (1.16.3)
130
+ gem-release (2.2.2)
131
+ generator_spec (0.10.0)
132
+ activesupport (>= 3.0.0)
133
+ railties (>= 3.0.0)
134
+ globalid (1.2.1)
135
+ activesupport (>= 6.1)
136
+ i18n (1.14.5)
137
+ concurrent-ruby (~> 1.0)
138
+ interception (0.5)
139
+ io-console (0.7.2)
140
+ irb (1.13.1)
141
+ rdoc (>= 4.0.0)
142
+ reline (>= 0.4.2)
143
+ jbuilder (2.12.0)
144
+ actionview (>= 5.0.0)
145
+ activesupport (>= 5.0.0)
146
+ jquery-rails (4.6.0)
147
+ rails-dom-testing (>= 1, < 3)
148
+ railties (>= 4.2.0)
149
+ thor (>= 0.14, < 2.0)
150
+ json (2.7.2)
151
+ language_server-protocol (3.17.0.3)
152
+ launchy (3.0.1)
153
+ addressable (~> 2.8)
154
+ childprocess (~> 5.0)
155
+ listen (3.9.0)
156
+ rb-fsevent (~> 0.10, >= 0.10.3)
157
+ rb-inotify (~> 0.9, >= 0.9.10)
158
+ loofah (2.22.0)
159
+ crass (~> 1.0.2)
160
+ nokogiri (>= 1.12.0)
161
+ mail (2.8.1)
162
+ mini_mime (>= 0.1.1)
163
+ net-imap
164
+ net-pop
165
+ net-smtp
166
+ marcel (1.0.4)
167
+ matrix (0.4.2)
168
+ method_source (1.1.0)
169
+ mini_mime (1.1.5)
170
+ mini_portile2 (2.8.6)
171
+ minitest (5.23.0)
172
+ msgpack (1.7.2)
173
+ mutex_m (0.2.0)
174
+ net-imap (0.4.11)
175
+ date
176
+ net-protocol
177
+ net-pop (0.1.2)
178
+ net-protocol
179
+ net-protocol (0.2.2)
180
+ timeout
181
+ net-smtp (0.5.0)
182
+ net-protocol
183
+ nio4r (2.7.3)
184
+ nokogiri (1.16.5)
185
+ mini_portile2 (~> 2.8.2)
186
+ racc (~> 1.4)
187
+ package_json (0.1.0)
188
+ parallel (1.24.0)
189
+ parser (3.3.1.0)
190
+ ast (~> 2.4.1)
191
+ racc
192
+ pry (0.14.2)
193
+ coderay (~> 1.1)
194
+ method_source (~> 1.0)
195
+ pry-byebug (3.10.1)
196
+ byebug (~> 11.0)
197
+ pry (>= 0.13, < 0.15)
198
+ pry-doc (1.5.0)
199
+ pry (~> 0.11)
200
+ yard (~> 0.9.11)
201
+ pry-rails (0.3.9)
202
+ pry (>= 0.10.4)
203
+ pry-rescue (1.6.0)
204
+ interception (>= 0.5)
205
+ pry (>= 0.12.0)
206
+ psych (5.1.2)
207
+ stringio
208
+ public_suffix (5.0.5)
209
+ puma (6.4.2)
210
+ nio4r (~> 2.0)
211
+ racc (1.7.3)
212
+ rack (3.0.11)
213
+ rack-proxy (0.7.7)
214
+ rack
215
+ rack-session (2.0.0)
216
+ rack (>= 3.0.0)
217
+ rack-test (2.1.0)
218
+ rack (>= 1.3)
219
+ rackup (2.1.0)
220
+ rack (>= 3)
221
+ webrick (~> 1.8)
222
+ rails (7.1.3.2)
223
+ actioncable (= 7.1.3.2)
224
+ actionmailbox (= 7.1.3.2)
225
+ actionmailer (= 7.1.3.2)
226
+ actionpack (= 7.1.3.2)
227
+ actiontext (= 7.1.3.2)
228
+ actionview (= 7.1.3.2)
229
+ activejob (= 7.1.3.2)
230
+ activemodel (= 7.1.3.2)
231
+ activerecord (= 7.1.3.2)
232
+ activestorage (= 7.1.3.2)
233
+ activesupport (= 7.1.3.2)
234
+ bundler (>= 1.15.0)
235
+ railties (= 7.1.3.2)
236
+ rails-dom-testing (2.2.0)
237
+ activesupport (>= 5.0.0)
238
+ minitest
239
+ nokogiri (>= 1.6)
240
+ rails-html-sanitizer (1.6.0)
241
+ loofah (~> 2.21)
242
+ nokogiri (~> 1.14)
243
+ railties (7.1.3.2)
244
+ actionpack (= 7.1.3.2)
245
+ activesupport (= 7.1.3.2)
246
+ irb
247
+ rackup (>= 1.0.0)
248
+ rake (>= 12.2)
249
+ thor (~> 1.0, >= 1.2.2)
250
+ zeitwerk (~> 2.6)
251
+ rainbow (3.1.1)
252
+ rake (13.2.1)
253
+ rb-fsevent (0.11.2)
254
+ rb-inotify (0.10.1)
255
+ ffi (~> 1.0)
256
+ rdoc (6.6.3.1)
257
+ psych (>= 4.0.0)
258
+ regexp_parser (2.9.2)
259
+ reline (0.5.7)
260
+ io-console (~> 0.5)
261
+ rexml (3.2.7)
262
+ strscan (>= 3.0.9)
263
+ rspec-core (3.13.0)
264
+ rspec-support (~> 3.13.0)
265
+ rspec-expectations (3.13.0)
266
+ diff-lcs (>= 1.2.0, < 2.0)
267
+ rspec-support (~> 3.13.0)
268
+ rspec-mocks (3.13.1)
269
+ diff-lcs (>= 1.2.0, < 2.0)
270
+ rspec-support (~> 3.13.0)
271
+ rspec-rails (6.1.2)
272
+ actionpack (>= 6.1)
273
+ activesupport (>= 6.1)
274
+ railties (>= 6.1)
275
+ rspec-core (~> 3.13)
276
+ rspec-expectations (~> 3.13)
277
+ rspec-mocks (~> 3.13)
278
+ rspec-support (~> 3.13)
279
+ rspec-retry (0.6.2)
280
+ rspec-core (> 3.3)
281
+ rspec-support (3.13.1)
282
+ rspec_junit_formatter (0.6.0)
283
+ rspec-core (>= 2, < 4, != 2.12.0)
284
+ rubocop (1.61.0)
285
+ json (~> 2.3)
286
+ language_server-protocol (>= 3.17.0)
287
+ parallel (~> 1.10)
288
+ parser (>= 3.3.0.2)
289
+ rainbow (>= 2.2.2, < 4.0)
290
+ regexp_parser (>= 1.8, < 3.0)
291
+ rexml (>= 3.2.5, < 4.0)
292
+ rubocop-ast (>= 1.30.0, < 2.0)
293
+ ruby-progressbar (~> 1.7)
294
+ unicode-display_width (>= 2.4.0, < 3.0)
295
+ rubocop-ast (1.31.3)
296
+ parser (>= 3.3.1.0)
297
+ rubocop-capybara (2.20.0)
298
+ rubocop (~> 1.41)
299
+ rubocop-factory_bot (2.25.1)
300
+ rubocop (~> 1.41)
301
+ rubocop-performance (1.20.2)
302
+ rubocop (>= 1.48.1, < 2.0)
303
+ rubocop-ast (>= 1.30.0, < 2.0)
304
+ rubocop-rspec (2.29.2)
305
+ rubocop (~> 1.40)
306
+ rubocop-capybara (~> 2.17)
307
+ rubocop-factory_bot (~> 2.22)
308
+ rubocop-rspec_rails (~> 2.28)
309
+ rubocop-rspec_rails (2.28.3)
310
+ rubocop (~> 1.40)
311
+ ruby-progressbar (1.13.0)
312
+ rubyzip (2.3.2)
313
+ sass (3.7.4)
314
+ sass-listen (~> 4.0.0)
315
+ sass-listen (4.0.0)
316
+ rb-fsevent (~> 0.9, >= 0.9.4)
317
+ rb-inotify (~> 0.9, >= 0.9.7)
318
+ sass-rails (6.0.0)
319
+ sassc-rails (~> 2.1, >= 2.1.1)
320
+ sassc (2.4.0)
321
+ ffi (~> 1.9)
322
+ sassc-rails (2.1.2)
323
+ railties (>= 4.0.0)
324
+ sassc (>= 2.0)
325
+ sprockets (> 3.0)
326
+ sprockets-rails
327
+ tilt
328
+ scss_lint (0.60.0)
329
+ sass (~> 3.5, >= 3.5.5)
330
+ sdoc (2.6.1)
331
+ rdoc (>= 5.0)
332
+ selenium-webdriver (4.9.0)
333
+ rexml (~> 3.2, >= 3.2.5)
334
+ rubyzip (>= 1.2.2, < 3.0)
335
+ websocket (~> 1.0)
336
+ semantic_range (3.0.0)
337
+ shakapacker (7.2.1)
338
+ activesupport (>= 5.2)
339
+ package_json
340
+ rack-proxy (>= 0.6.1)
341
+ railties (>= 5.2)
342
+ semantic_range (>= 2.3.0)
343
+ simplecov (0.16.1)
344
+ docile (~> 1.1)
345
+ json (>= 1.8, < 3)
346
+ simplecov-html (~> 0.10.0)
347
+ simplecov-html (0.10.2)
348
+ spring (4.2.1)
349
+ sprockets (4.2.1)
350
+ concurrent-ruby (~> 1.0)
351
+ rack (>= 2.2.4, < 4)
352
+ sprockets-rails (3.4.2)
353
+ actionpack (>= 5.2)
354
+ activesupport (>= 5.2)
355
+ sprockets (>= 3.0.0)
356
+ sqlite3 (1.7.3)
357
+ mini_portile2 (~> 2.8.0)
358
+ stringio (3.1.0)
359
+ strscan (3.1.0)
360
+ sync (0.5.0)
361
+ term-ansicolor (1.8.0)
362
+ tins (~> 1.0)
363
+ thor (1.3.1)
364
+ tilt (2.3.0)
365
+ timeout (0.4.1)
366
+ tins (1.33.0)
367
+ bigdecimal
368
+ sync
369
+ turbolinks (5.2.1)
370
+ turbolinks-source (~> 5.2)
371
+ turbolinks-source (5.2.0)
372
+ tzinfo (2.0.6)
373
+ concurrent-ruby (~> 1.0)
374
+ uglifier (4.2.0)
375
+ execjs (>= 0.3.0, < 3)
376
+ unicode-display_width (2.5.0)
377
+ webdrivers (5.3.0)
378
+ nokogiri (~> 1.6)
379
+ rubyzip (>= 1.3.0)
380
+ selenium-webdriver (~> 4.0, < 4.11)
381
+ webrick (1.8.1)
382
+ websocket (1.2.10)
383
+ websocket-driver (0.7.6)
384
+ websocket-extensions (>= 0.1.0)
385
+ websocket-extensions (0.1.5)
386
+ xpath (3.2.0)
387
+ nokogiri (~> 1.8)
388
+ yard (0.9.36)
389
+ zeitwerk (2.6.14)
390
+
391
+ PLATFORMS
392
+ ruby
393
+
394
+ DEPENDENCIES
395
+ amazing_print
396
+ bootsnap
397
+ capybara
398
+ capybara-screenshot
399
+ coveralls
400
+ equivalent-xml
401
+ gem-release
402
+ generator_spec
403
+ jbuilder
404
+ jquery-rails
405
+ launchy
406
+ listen
407
+ pry
408
+ pry-byebug
409
+ pry-doc
410
+ pry-rails
411
+ pry-rescue
412
+ puma (~> 6.0)
413
+ rails (~> 7.1)
414
+ react_on_rails!
415
+ rspec-rails
416
+ rspec-retry
417
+ rspec_junit_formatter
418
+ rubocop (= 1.61.0)
419
+ rubocop-performance (~> 1.20.0)
420
+ rubocop-rspec (~> 2.26)
421
+ sass-rails (~> 6.0)
422
+ scss_lint
423
+ sdoc
424
+ selenium-webdriver (= 4.9.0)
425
+ shakapacker (= 7.2.1)
426
+ spring (~> 4.0)
427
+ sprockets (~> 4.0)
428
+ sqlite3 (~> 1.6)
429
+ turbolinks
430
+ uglifier
431
+ webdrivers (= 5.3.0)
432
+
433
+ BUNDLED WITH
434
+ 2.5.9
data/README.md CHANGED
@@ -24,17 +24,25 @@
24
24
 
25
25
  *These are the docs for React on Rails 13. To see the older docs: [v12](https://github.com/shakacode/react_on_rails/tree/12.6.0) and [v11](https://github.com/shakacode/react_on_rails/tree/11.3.0).*
26
26
 
27
- #### About
28
- React on Rails integrates Rails with (server rendering of) Facebook's [React](https://github.com/facebook/react) front-end framework.
27
+ # About
28
+ React on Rails integrates Rails with (server rendering of) [React](https://github.com/facebook/react).
29
29
 
30
- This project is maintained by the software consulting firm [ShakaCode](https://www.shakacode.com). We focus on Ruby on Rails applications with React front-ends, often using TypeScript or ReScript (ReasonML). We also build React Native apps and Gatsby sites. See [our recent work](https://www.shakacode.com/recent-work) for examples of what we do. ShakaCode.com (HiChee.com) is [hiring developers that like working on open-source](https://www.shakacode.com/career/).
30
+ This project is maintained by [ShakaCode](https://www.shakacode.com).
31
31
 
32
- Are you interested in optimizing your webpack setup for React on Rails including code
33
- splitting with [react-router](https://github.com/ReactTraining/react-router#readme) and
34
- [loadable-components](https://loadable-components.com/) with server-side rendering for SEO and hot-reloading for developers?
35
- We did this for Popmenu, [lowering Heroku costs 20-25% while getting a 73% decrease in average response times](https://www.shakacode.com/recent-work/popmenu/). Several years later, Popmenu is serving millions of SSR requests per day with React on Rails.
32
+ ## ShakaCode Upgrade Support
33
+ ShakaCode focuses on helping Ruby on Rails teams better use React and Webpack. We can upgrade your project and improve your development and customer experiences, allowing you to focus on building new features or fixing bugs instead.
36
34
 
37
- Check out [React on Rails Pro](https://www.shakacode.com/react-on-rails-pro/). For more information, feel free to contact Justin Gordon, [justin@shakacode.com](mailto:justin@shakacode.com), maintainer of React on Rails.
35
+ For an overview of working with us, see our [Client Engagement Model](https://www.shakacode.com/blog/client-engagement-model/) article and [how we bill for time](https://www.shakacode.com/blog/shortcut-jira-trello-github-toggl-time-and-task-tracking/).
36
+
37
+ We also specialize in helping development teams lower infrastructure and CI costs. Check out our project [Control Plane Flow](https://github.com/shakacode/control-plane-flow/), which can allow you to get the ease of Heroku with the power of Kubernetes and big cost savings.
38
+
39
+ If you think ShakaCode can help your project, [click here](https://meetings.hubspot.com/justingordon/30-minute-consultation) to book a call with [Justin Gordon](mailto:justin@shakacode.com), the creator of React on Rails.
40
+
41
+ ## React on Rails Pro
42
+ Are you interested in optimizing your webpack setup for React on Rails, including code splitting with [react-router](https://github.com/ReactTraining/react-router#readme) and [loadable-components](https://loadable-components.com/) with server-side rendering for SEO and hot-reloading for developers?
43
+ We did this for Popmenu, [lowering Heroku costs 20-25% while getting a 73% decrease in average response times](https://www.shakacode.com/recent-work/popmenu/). Several years later, Popmenu serves tens of millions of SSR requests daily with React on Rails Pro.
44
+
45
+ If you're interested, read more about [React on Rails Pro](https://www.shakacode.com/react-on-rails-pro/) and [book a call](https://meetings.hubspot.com/justingordon/30-minute-consultation).
38
46
 
39
47
  # Documentation
40
48
 
@@ -42,16 +50,16 @@ See the documentation at **[shakacode.com/react-on-rails/docs](https://www.shaka
42
50
 
43
51
  ## Project Objective
44
52
 
45
- To provide a high performance framework for integrating Ruby on Rails with React via the [**Webpacker**](https://github.com/rails/webpacker) gem, especially regarding React Server-Side Rendering for better SEO and improved performance.
53
+ To provide a high-performance framework for integrating Ruby on Rails with React, especially regarding React Server-Side Rendering for better SEO and improved performance.
46
54
 
47
55
  ## Features and Why React on Rails?
48
56
 
49
- Given that `rails/webpacker` gem already provides basic React integration, why would you use "React on Rails"?
57
+ Given that `shakacode/shakapacker` gem already provides basic React integration, why would you use "React on Rails"?
50
58
 
51
59
  1. Automatic configuration of what bundles are added to the page based on what React components are on the page. This results in faster browser loading time via smaller bundle sizes.
52
- 1. Keep up with the latest changes of different versions of React. React 18 is supported.
60
+ 1. Keep up with the latest changes in different versions of React. React 18 is supported.
53
61
  1. Easy passing of props directly from your Rails view to your React components rather than having your Rails view load and then make a separate request to your API.
54
- Tight integration with [shakapacker](https://github.com/shakacode/shakapacker) (or it's predecessor [rails/webpacker](https://github.com/rails/webpacker)).
62
+ Tight integration with [shakapacker](https://github.com/shakacode/shakapacker) (or its predecessor [rails/webpacker](https://github.com/rails/webpacker)).
55
63
  1. Server-Side Rendering (SSR), often used for SEO crawler indexing and UX performance.
56
64
  1. [Automated optimized entry-point creation and bundle inclusion when placing a component on a page. With this feature, you no longer need to configure `javascript_pack_tags` and `stylesheet_pack_tags` on your layouts based on what’s shown. “It just works!”](https://www.shakacode.com/react-on-rails/docs/guides/file-system-based-automated-bundle-generation/)
57
65
  1. [Redux](https://github.com/reactjs/redux) and [React Router](https://github.com/ReactTraining/react-router#readme) integration with server-side-rendering.
@@ -87,7 +95,7 @@ Ruby on Rails >=5, rails/webpacker >= 4.2 or shakapacker > 6, Ruby >= 3.0.0
87
95
 
88
96
  ## Contributing
89
97
 
90
- Bug reports and pull requests are welcome. See [Contributing](https://github.com/shakacode/react_on_rails/tree/master/CONTRIBUTING.md) to get started, and the [list of help wanted issues](https://github.com/shakacode/react_on_rails/labels/contributions%3A%20up%20for%20grabs%21).
98
+ Bug reports and pull requests are welcome. To get started, see [Contributing](https://github.com/shakacode/react_on_rails/tree/master/CONTRIBUTING.md) and the [list of help wanted issues](https://github.com/shakacode/react_on_rails/labels/contributions%3A%20up%20for%20grabs%21).
91
99
 
92
100
  # Work with Us
93
101
  ShakaCode is **[hiring passionate software engineers](http://www.shakacode.com/career)** to work on our projects, including [HiChee](https://hichee.com)!
@@ -98,7 +106,7 @@ The gem is available as open source under the terms of the [MIT License](https:/
98
106
 
99
107
  # Supporters
100
108
 
101
- The following companies support our open source projects, and ShakaCode uses their products!
109
+ The following companies support our open-source projects, and ShakaCode uses their products!
102
110
 
103
111
  <br />
104
112
  <br />
@@ -113,7 +121,7 @@ The following companies support our open source projects, and ShakaCode uses the
113
121
  <img alt="ScoutAPM" src="https://user-images.githubusercontent.com/4244251/184881152-9f2d8fba-88ac-4ba6-873b-22387f8711c5.png" height="120px">
114
122
  </picture>
115
123
  </a>
116
- <a href="https://controlplane.com">
124
+ <a href="https://shakacode.controlplane.com">
117
125
  <picture>
118
126
  <img alt="Control Plane" src="https://github.com/shakacode/.github/assets/20628911/90babd87-62c4-4de3-baa4-3d78ef4bec25" height="120px">
119
127
  </picture>
@@ -40,8 +40,7 @@ module ReactOnRails
40
40
  def copy_js_bundle_files
41
41
  base_path = "base/base/"
42
42
  base_files = %w[app/javascript/packs/server-bundle.js
43
- app/javascript/bundles/HelloWorld/components/HelloWorldServer.js
44
- app/javascript/bundles/HelloWorld/components/HelloWorld.module.css]
43
+ app/javascript/bundles/HelloWorld/components/HelloWorldServer.js]
45
44
  base_files.each { |file| copy_file("#{base_path}#{file}", file) }
46
45
  end
47
46
 
@@ -92,14 +91,7 @@ module ReactOnRails
92
91
 
93
92
  puts "Adding CSS handlers"
94
93
 
95
- # css_minimizer_webpack_plugin version 6 only supports Nodejs v18+
96
- # When we bump our minimum Nodejs version to 18, we can remove this logic
97
- # and install css_minimizer_webpack_plugin directly.
98
- node_major_version = `node -v`.match(/^v(\d{,2})\./)[1]&.to_i
99
- css_minimizer_webpack_plugin_version = node_major_version >= 18 ? "" : "@<6.0.0"
100
- css_minimizer_webpack_plugin = "css-minimizer-webpack-plugin#{css_minimizer_webpack_plugin_version}"
101
-
102
- run "yarn add css-loader '#{css_minimizer_webpack_plugin}' mini-css-extract-plugin style-loader"
94
+ run "yarn add css-loader css-minimizer-webpack-plugin mini-css-extract-plugin style-loader@"
103
95
 
104
96
  puts "Adding dev dependencies"
105
97
  run "yarn add -D @pmmmwh/react-refresh-webpack-plugin react-refresh"
@@ -54,7 +54,7 @@ module ReactOnRails
54
54
  invoke "react_on_rails:react_no_redux"
55
55
  end
56
56
 
57
- invoke "react_on_rails:adapt_for_older_shakapacker" unless using_shakapacker_7?
57
+ invoke "react_on_rails:adapt_for_older_shakapacker" unless using_shakapacker_7_or_above?
58
58
  end
59
59
 
60
60
  # NOTE: other requirements for existing files such as .gitignore or application.
@@ -95,7 +95,7 @@ module ReactOnRails
95
95
 
96
96
  def add_post_install_message
97
97
  message = GeneratorMessages.helpful_message_after_installation
98
- unless using_shakapacker_7?
98
+ unless using_shakapacker_7_or_above?
99
99
  message = message.gsub("config/shakapacker", "config/webpacker")
100
100
  message = message.gsub("bin/shakapacker", "bin/webpacker")
101
101
  end
@@ -103,9 +103,9 @@ module ReactOnRails
103
103
  GeneratorMessages.add_info(message)
104
104
  end
105
105
 
106
- def using_shakapacker_7?
106
+ def using_shakapacker_7_or_above?
107
107
  shakapacker_gem = Gem::Specification.find_by_name("shakapacker")
108
- shakapacker_gem.version.segments.first == 7
108
+ shakapacker_gem.version.segments.first >= 7
109
109
  rescue Gem::MissingSpecError
110
110
  # In case using Webpacker
111
111
  false
@@ -4,7 +4,7 @@ require "English"
4
4
 
5
5
  module ReactOnRails
6
6
  module GitUtils
7
- def self.uncommitted_changes?(message_handler, git_installed = true)
7
+ def self.uncommitted_changes?(message_handler, git_installed: true)
8
8
  return false if ENV["COVERAGE"] == "true"
9
9
 
10
10
  status = `git status --porcelain`
@@ -441,11 +441,10 @@ module ReactOnRails
441
441
  "data-trace" => (render_options.trace ? true : nil),
442
442
  "data-dom-id" => render_options.dom_id)
443
443
 
444
+ load_pack_for_generated_component(react_component_name, render_options)
444
445
  # Create the HTML rendering part
445
446
  result = server_rendered_react_component(render_options)
446
447
 
447
- load_pack_for_generated_component(react_component_name, render_options)
448
-
449
448
  {
450
449
  render_options: render_options,
451
450
  tag: component_specification_tag,
@@ -15,6 +15,7 @@ module ReactOnRails
15
15
  def generate_packs_if_stale
16
16
  return unless ReactOnRails.configuration.auto_load_bundle
17
17
 
18
+ add_generated_pack_to_server_bundle
18
19
  are_generated_files_present_and_up_to_date = Dir.exist?(generated_packs_directory_path) &&
19
20
  File.exist?(generated_server_bundle_file_path) &&
20
21
  !stale_or_missing_packs?
@@ -99,8 +100,8 @@ module ReactOnRails
99
100
  def generated_server_bundle_file_path
100
101
  return server_bundle_entrypoint if ReactOnRails.configuration.make_generated_server_bundle_the_entrypoint
101
102
 
102
- generated_server_bundle_file_path = server_bundle_entrypoint.sub(".js", "-generated.js")
103
- generated_server_bundle_file_name = component_name(generated_server_bundle_file_path)
103
+ generated_interim_server_bundle_path = server_bundle_entrypoint.sub(".js", "-generated.js")
104
+ generated_server_bundle_file_name = component_name(generated_interim_server_bundle_path)
104
105
  source_entrypoint_parent = Pathname(ReactOnRails::WebpackerUtils.webpacker_source_entry_path).parent
105
106
  generated_nonentrypoints_path = "#{source_entrypoint_parent}/generated"
106
107
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ReactOnRails
4
- VERSION = "14.0.0"
4
+ VERSION = "14.0.2"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: react_on_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 14.0.0
4
+ version: 14.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Gordon
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-04-03 00:00:00.000000000 Z
11
+ date: 2024-06-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
@@ -106,6 +106,7 @@ files:
106
106
  - Dockerfile_tests
107
107
  - Gemfile
108
108
  - Gemfile.development_dependencies
109
+ - Gemfile.lock
109
110
  - KUDOS.md
110
111
  - LICENSE.md
111
112
  - NEWS.md
@@ -219,7 +220,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
219
220
  - !ruby/object:Gem::Version
220
221
  version: '0'
221
222
  requirements: []
222
- rubygems_version: 3.4.21
223
+ rubygems_version: 3.5.11
223
224
  signing_key:
224
225
  specification_version: 4
225
226
  summary: Rails with react server rendering with webpack.