react_on_rails_pro 16.4.0 → 16.5.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 60409cc43b525dfd549f76e44c06415eb08c73922949a48c978b637896c673f4
4
- data.tar.gz: 81d82eef38a26b39bf815cdcd441cef9b6f3d90d1fec6b652c2634ac3bd4c581
3
+ metadata.gz: 555e14ff0b3a9fe0dbdf0d03195d25512f535ce488f426f8258af5dde9e93fa3
4
+ data.tar.gz: 2aa2508ce583c9b6c3907f990d8a07ce151c122a610524f89ea8a4b5fc75218c
5
5
  SHA512:
6
- metadata.gz: c22f283f9287aace4be8cada790b66ac5dde64855a5b5c1de610f89bf9d1498db6709f5b8d90829124f9a9a9bcbf328798762603bcb42fb12877261cf2c96aa2
7
- data.tar.gz: 2d81b86dabbc427b7902c105982bae739390277fc6904950017a8db3253e65f61d198e194e8ba60eb99479a087cfa62a76bea8eaa38ec73a15e619e55e82e469
6
+ metadata.gz: 58c950e2ace03c47a86777a398e8260d1ab67a0d28a9838431be74e181c6345af08e8ecf99d8500a179a4c62c9e871af9aa1ceef5991f199452cc2c3cdea0b6a
7
+ data.tar.gz: 8df15aa0b502450842d744049f7f17aff8843b0afddccf0d97cdb926d0497fdf26cb6e834ca781ec4bd532e9ddf01bc237d14643a088eb8f854d1ea969bb840f
data/CONTRIBUTING.md CHANGED
@@ -22,9 +22,9 @@ See the example apps under `/spec`
22
22
 
23
23
  For non-doc fixes:
24
24
 
25
- - Provide changelog entry in the [unreleased section of the CHANGELOG.md](https://github.com/shakacode/react_on_rails/blob/master/react_on_rails_pro/CHANGELOG.md#unreleased).
25
+ - Provide changelog entry in the [unreleased section of the CHANGELOG.md](https://github.com/shakacode/react_on_rails/blob/main/react_on_rails_pro/CHANGELOG.md#unreleased).
26
26
  - Ensure CI passes and that you added a test that passes with the fix and fails without the fix.
27
- - Squash all commits down to one with a nice commit message _ONLY_ once final review is given. Make sure this single commit is rebased on top of master.
27
+ - Squash all commits down to one with a nice commit message _ONLY_ once final review is given. Make sure this single commit is rebased on top of main.
28
28
  - Please address all code review comments.
29
29
  - Ensure that docs are updated accordingly if a feature is added.
30
30
 
@@ -46,7 +46,7 @@ From [How to Write a Git Commit Message](http://chris.beams.io/posts/git-commit/
46
46
 
47
47
  ## Doc Changes
48
48
 
49
- When making doc changes, we want the change to work on both [the React on Rails docs site](https://reactonrails.com/docs/pro/react-on-rails-pro/) and when browsing the GitHub repo.
49
+ When making doc changes, we want the change to work on both [the React on Rails docs site](https://reactonrails.com/docs/pro) and when browsing the GitHub repo.
50
50
  For links from docs pages to non-doc files, use full GitHub URLs so links resolve correctly in both contexts.
51
51
 
52
52
  ### Links to other docs:
@@ -55,7 +55,7 @@ For links from docs pages to non-doc files, use full GitHub URLs so links resolv
55
55
  `[Installation Guide](../docs/pro/installation.md)`
56
56
 
57
57
  - When making references to source code files, use a full url path like:
58
- `[spec/dummy/config/initializers/react_on_rails.rb](https://github.com/shakacode/react_on_rails/tree/master/react_on_rails_pro/spec/dummy/config/initializers/react_on_rails.rb)`
58
+ `[spec/dummy/config/initializers/react_on_rails.rb](https://github.com/shakacode/react_on_rails/tree/main/react_on_rails_pro/spec/dummy/config/initializers/react_on_rails.rb)`
59
59
 
60
60
  ## To run tests:
61
61
 
@@ -70,7 +70,7 @@ React on Rails Pro shares the optimized CI pipeline with the main gem. The CI sy
70
70
  ### CI Behavior
71
71
 
72
72
  - **On PRs/Branches**: Runs reduced test matrix (latest Ruby/Node versions only) for faster feedback
73
- - **On Master**: Runs full test matrix (all Ruby/Node/dependency combinations) for complete coverage
73
+ - **On Main**: Runs full test matrix (all Ruby/Node/dependency combinations) for complete coverage
74
74
  - **Docs-only changes**: CI skips entirely when only `.md` files or `docs/` directory change
75
75
 
76
76
  ### Local CI Tools
@@ -88,7 +88,7 @@ cd ..
88
88
  # Auto-detect what to test (includes Pro tests if Pro files changed)
89
89
  bin/ci-local
90
90
 
91
- # Run all CI checks (same as master branch)
91
+ # Run all CI checks (same as main branch)
92
92
  bin/ci-local --all
93
93
 
94
94
  # Quick check - only fast tests
@@ -103,7 +103,7 @@ Analyzes changes to both main gem and Pro:
103
103
 
104
104
  ```bash
105
105
  # From repository root
106
- script/ci-changes-detector origin/master
106
+ script/ci-changes-detector origin/main
107
107
  ```
108
108
 
109
109
  ### CI Best Practices for Pro
@@ -20,7 +20,7 @@ gem "pg"
20
20
 
21
21
  # Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
22
22
  gem "turbolinks"
23
- gem "sqlite3", "~> 1.4"
23
+ gem "sqlite3", "~> 2.0"
24
24
  gem "jquery-rails"
25
25
  gem "sprockets"
26
26
  gem "sass-rails"
data/Gemfile.lock CHANGED
@@ -9,7 +9,7 @@ GIT
9
9
  PATH
10
10
  remote: ..
11
11
  specs:
12
- react_on_rails (16.4.0)
12
+ react_on_rails (16.5.1)
13
13
  addressable
14
14
  connection_pool
15
15
  execjs (~> 2.5)
@@ -20,16 +20,16 @@ PATH
20
20
  PATH
21
21
  remote: .
22
22
  specs:
23
- react_on_rails_pro (16.4.0)
23
+ react_on_rails_pro (16.5.1)
24
24
  addressable
25
- async (>= 2.6)
25
+ async (>= 2.29)
26
26
  connection_pool
27
27
  execjs (~> 2.9)
28
28
  http-2 (>= 1.1.1)
29
29
  httpx (~> 1.5)
30
30
  jwt (~> 2.7)
31
31
  rainbow
32
- react_on_rails (= 16.4.0)
32
+ react_on_rails (= 16.5.1)
33
33
 
34
34
  GEM
35
35
  remote: https://rubygems.org/
@@ -440,9 +440,9 @@ GEM
440
440
  actionpack (>= 6.1)
441
441
  activesupport (>= 6.1)
442
442
  sprockets (>= 3.0.0)
443
- sqlite3 (1.7.3-arm64-darwin)
444
- sqlite3 (1.7.3-x86_64-darwin)
445
- sqlite3 (1.7.3-x86_64-linux)
443
+ sqlite3 (2.9.2-arm64-darwin)
444
+ sqlite3 (2.9.2-x86_64-darwin)
445
+ sqlite3 (2.9.2-x86_64-linux-gnu)
446
446
  stringio (3.2.0)
447
447
  sync (0.5.0)
448
448
  term-ansicolor (1.10.2)
@@ -538,7 +538,7 @@ DEPENDENCIES
538
538
  spring
539
539
  spring-watcher-listen
540
540
  sprockets
541
- sqlite3 (~> 1.4)
541
+ sqlite3 (~> 2.0)
542
542
  turbolinks
543
543
  web-console
544
544
  webdrivers (= 5.3.0)
data/LICENSE_SETUP.md CHANGED
@@ -217,7 +217,7 @@ jobs:
217
217
  `**Status:** ${status}`,
218
218
  `**Days remaining:** ${days}`,
219
219
  '',
220
- 'Renew at https://www.shakacode.com/react-on-rails-pro/',
220
+ 'Renew at https://pro.reactonrails.com/',
221
221
  'or contact support@shakacode.com',
222
222
  ].join('\n');
223
223
 
data/README.md CHANGED
@@ -267,9 +267,11 @@ end
267
267
 
268
268
  | React on Rails Pro | React on Rails | Rails | Ruby | React |
269
269
  | ------------------ | -------------- | ------ | ------ | ------- |
270
- | 4.x | >= 16.0 | >= 7.0 | >= 3.2 | >= 18 |
270
+ | 16.x | >= 16.0 | >= 7.0 | >= 3.2 | >= 18 |
271
271
  | 3.x | >= 13.0 | >= 6.0 | >= 3.0 | >= 16.8 |
272
272
 
273
+ > **Note:** Pro version numbers were aligned with the core gem starting at 16.2.0. Pro 16.x is the direct successor to Pro 3.x/4.x.
274
+
273
275
  **📖 Check compatibility**: See [CHANGELOG.md](./CHANGELOG.md) for version-specific requirements
274
276
 
275
277
  ---
@@ -286,15 +288,7 @@ Since React on Rails Pro is part of the public monorepo, you can install it dire
286
288
 
287
289
  ```ruby
288
290
  # Gemfile
289
- gem 'react_on_rails_pro', '~> 4.0'
290
- ```
291
-
292
- Or use a specific version/tag:
293
-
294
- ```ruby
295
- gem 'react_on_rails_pro', git: 'https://github.com/shakacode/react_on_rails.git',
296
- glob: 'react_on_rails_pro/*.gemspec',
297
- tag: 'v4.0.0'
291
+ gem 'react_on_rails_pro', '~> 16.0'
298
292
  ```
299
293
 
300
294
  Then run:
@@ -5,6 +5,7 @@
5
5
  # 2. Keep all #{some_var} fully to the left so that all indentation is done evenly in that var
6
6
 
7
7
  require "react_on_rails/helper"
8
+ require "async/promise"
8
9
 
9
10
  # rubocop:disable Metrics/ModuleLength
10
11
  module ReactOnRailsProHelper
@@ -183,7 +184,7 @@ module ReactOnRailsProHelper
183
184
  # `rsc_payload_route` helper function. The returned data from this function is used internally by
184
185
  # components registered using the `registerServerComponent` function. Don't use it unless you need
185
186
  # more control over the RSC payload generation. To know more about RSC payload, see the following link:
186
- # @see https://www.shakacode.com/react-on-rails-pro/docs/how-react-server-components-works.md
187
+ # @see https://reactonrails.com/docs/pro/react-server-components/how-react-server-components-work
187
188
  # for technical details about the RSC payload format
188
189
  def rsc_payload_react_component(component_name, options = {})
189
190
  # rsc_payload_react_component doesn't have the prerender option
@@ -428,71 +429,63 @@ module ReactOnRailsProHelper
428
429
  end
429
430
 
430
431
  def consumer_stream_async(on_complete:)
431
- require "async/variable"
432
-
433
432
  if @async_barrier.nil?
434
433
  raise ReactOnRails::Error,
435
434
  "You must call stream_view_containing_react_components to render the view containing the react component"
436
435
  end
437
436
 
438
- # Create a variable to hold the first chunk for synchronous return
439
- first_chunk_var = Async::Variable.new
437
+ # Create a promise to hold the first chunk for synchronous return.
438
+ # Async::Promise replaces Async::Variable (deprecated in async v2.29.0).
439
+ first_chunk_promise = Async::Promise.new
440
440
  all_chunks = [] if on_complete # Only collect if callback provided
441
441
 
442
442
  # Start an async task on the barrier to stream all chunks
443
443
  @async_barrier.async do
444
444
  stream = yield
445
- fully_consumed = process_stream_chunks(stream, first_chunk_var, all_chunks)
445
+ fully_consumed = process_stream_chunks(stream, first_chunk_promise, all_chunks)
446
446
  on_complete&.call(all_chunks) if fully_consumed
447
447
  rescue StandardError => e
448
- # Propagate the error to the calling fiber via the variable.
449
- # Async::Variable can only be resolved once — if it was already resolved
450
- # (first chunk was returned successfully), the assignment raises and we
451
- # fall through to re-raise so barrier.wait propagates the error later.
452
- begin
453
- first_chunk_var.value = e
454
- # Variable accepted the error — this is a pre-first-chunk failure (e.g., shell error).
455
- # The caller will detect the Exception value and raise it synchronously,
456
- # BEFORE the response is committed, enabling a proper HTTP redirect.
457
- # Do NOT re-raise here: the caller owns the error now.
458
- rescue StandardError
459
- # Variable was already resolved — the first chunk was returned successfully.
460
- # This is a post-first-chunk error. Re-raise so barrier.wait propagates it
461
- # (the response is already committed at that point, so only JS redirect is possible).
462
- raise e
463
- end
448
+ # Propagate the error to the calling fiber via the promise.
449
+ # A promise can only be resolved/rejected once — check before acting.
450
+ # resolved? returns true for both fulfilled and rejected states ("settled").
451
+ # Safe without a lock: only this task can reject here, and Async uses
452
+ # cooperative scheduling so no fiber switch can occur between resolved?
453
+ # and reject/raise below.
454
+ # If already settled, the first chunk was returned successfully.
455
+ # This is a post-first-chunk error. Re-raise so barrier.wait propagates it
456
+ # (the response is already committed at that point, so only JS redirect is possible).
457
+ raise if first_chunk_promise.resolved?
458
+
459
+ # Promise not yet resolved — this is a pre-first-chunk failure (e.g., shell error).
460
+ # Reject the promise so .wait auto-raises in the caller,
461
+ # BEFORE the response is committed, enabling a proper HTTP redirect.
462
+ # Do NOT re-raise here: the caller owns the error now.
463
+ first_chunk_promise.reject(e)
464
464
  end
465
465
 
466
466
  # Wait for and return the first chunk (blocking).
467
- # Async::Variable#wait blocks until resolved, then returns the stored value.
468
- result = first_chunk_var.wait
469
-
470
- # If the async task stored an exception (pre-first-chunk error), raise it now.
471
- # This happens BEFORE response.stream.write(template_string) in
472
- # stream_view_containing_react_components, so the response is NOT yet committed
473
- # and rescue_from can perform a proper HTTP redirect.
474
- raise result if result.is_a?(StandardError)
475
-
476
- result
467
+ # Async::Promise#wait blocks until resolved, then returns the stored value.
468
+ # If the promise was rejected, .wait automatically re-raises the exception.
469
+ first_chunk_promise.wait
477
470
  end
478
471
 
479
472
  # Returns true if the stream was fully consumed, false if aborted (client disconnect).
480
473
  # When false, callers must NOT invoke on_complete to avoid caching partial data.
481
- def process_stream_chunks(stream, first_chunk_var, all_chunks)
474
+ def process_stream_chunks(stream, first_chunk_promise, all_chunks)
482
475
  is_first = true
483
476
 
484
477
  stream.each_chunk do |chunk|
485
478
  # Client disconnected — abort without caching partial results
486
479
  if response.stream.closed?
487
- first_chunk_var.value = nil if is_first
480
+ first_chunk_promise.resolve(nil) if is_first
488
481
  return false
489
482
  end
490
483
 
491
484
  all_chunks&.push(chunk)
492
485
 
493
486
  if is_first
494
- # Store first chunk in variable for synchronous return
495
- first_chunk_var.value = chunk
487
+ # Store first chunk in promise for synchronous return
488
+ first_chunk_promise.resolve(chunk)
496
489
  is_first = false
497
490
  else
498
491
  # Enqueue remaining chunks to main output queue
@@ -501,7 +494,7 @@ module ReactOnRailsProHelper
501
494
  end
502
495
 
503
496
  # Handle case where stream has no chunks
504
- first_chunk_var.value = nil if is_first
497
+ first_chunk_promise.resolve(nil) if is_first
505
498
  true
506
499
  end
507
500
 
@@ -6,7 +6,7 @@ require "timeout"
6
6
  module ReactOnRailsPro
7
7
  class CompressionMiddlewareGuard
8
8
  COMPATIBILITY_GUIDE_PATH =
9
- "https://www.shakacode.com/react-on-rails/docs/building-features/" \
9
+ "https://reactonrails.com/docs/building-features/" \
10
10
  "streaming-server-rendering/#compression-middleware-compatibility"
11
11
  PROBLEMATIC_MIDDLEWARES = %w[Rack::Deflater Rack::Brotli].freeze
12
12
  PROBE_TIMEOUT_SECONDS = 1
@@ -4,7 +4,7 @@ require "rails/railtie"
4
4
 
5
5
  module ReactOnRailsPro
6
6
  class Engine < Rails::Engine
7
- LICENSE_URL = "https://www.shakacode.com/react-on-rails-pro/"
7
+ LICENSE_URL = "https://pro.reactonrails.com/"
8
8
  # TODO: Remove this legacy migration warning path after 16.5.0 stable release (target: 2026-05-31).
9
9
  LEGACY_LICENSE_FILE = "config/react_on_rails_pro_license.key"
10
10
  private_constant :LICENSE_URL
@@ -64,9 +64,9 @@ module ReactOnRailsPro
64
64
 
65
65
  puts ""
66
66
  if info[:status] == :expired
67
- puts "WARNING: License has expired. Renew at https://www.shakacode.com/react-on-rails-pro/"
67
+ puts "WARNING: License has expired. Renew at https://pro.reactonrails.com/"
68
68
  else
69
- puts "WARNING: License expires within 30 days. Renew at https://www.shakacode.com/react-on-rails-pro/"
69
+ puts "WARNING: License expires within 30 days. Renew at https://pro.reactonrails.com/"
70
70
  end
71
71
  end
72
72
  end
@@ -44,7 +44,8 @@ module ReactOnRailsPro
44
44
  def upload_assets
45
45
  Rails.logger.info { "[ReactOnRailsPro] Uploading assets" }
46
46
 
47
- # Check if server bundle exists before trying to upload assets
47
+ # Early checks with descriptive messages. add_bundle_to_form(check_bundle: true) also
48
+ # validates existence, but these provide clearer context for the rake task user.
48
49
  server_bundle_path = ReactOnRails::Utils.server_bundle_js_file_path
49
50
  unless File.exist?(server_bundle_path)
50
51
  raise ReactOnRailsPro::Error, "Server bundle not found at #{server_bundle_path}. " \
@@ -66,6 +67,12 @@ module ReactOnRailsPro
66
67
  end
67
68
 
68
69
  form = form_with_assets_and_bundle
70
+ # TODO: targetBundles is only kept for backward compatibility with older node renderers
71
+ # (protocol 2.0.0) that require it. The new node renderer derives target directories from
72
+ # the bundle_<hash> form keys and ignores this field. Remove at the next breaking version.
73
+ # Note: it's not mandatory to keep this until then — users are expected to upgrade the
74
+ # node renderer and react_on_rails gem to the same version together — but it's an easy
75
+ # backward compatibility safeguard.
69
76
  form["targetBundles"] = target_bundles
70
77
 
71
78
  perform_request("/upload-assets", form: form)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ReactOnRailsPro
4
- VERSION = "16.4.0"
4
+ VERSION = "16.5.1"
5
5
  PROTOCOL_VERSION = "2.0.0"
6
6
  end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "active_support"
4
+
5
+ namespace :react_on_rails_pro do
6
+ desc "Copy assets to local node-renderer"
7
+ task pre_stage_bundle_for_node_renderer: :environment do
8
+ ReactOnRailsPro::PrepareNodeRenderBundles.call
9
+ end
10
+
11
+ desc "Copy assets to remote node-renderer"
12
+ task copy_assets_to_remote_vm_renderer: :environment do
13
+ puts "[ReactOnRailsPro] Copying assets to remote node-renderer #{ReactOnRailsPro.configuration.renderer_url}"
14
+ ReactOnRailsPro::Request.upload_assets
15
+ end
16
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "react_on_rails_pro/license_task_formatter"
4
+
5
+ namespace :react_on_rails_pro do
6
+ desc "Verify the React on Rails Pro license and display its status"
7
+ task verify_license: :environment do
8
+ format = ENV.fetch("FORMAT", "text")
9
+ info = ReactOnRailsPro::LicenseValidator.license_info
10
+ result = ReactOnRailsPro::LicenseTaskFormatter.build_result(info)
11
+
12
+ if format.casecmp("json").zero?
13
+ require "json"
14
+ puts JSON.pretty_generate(result)
15
+ else
16
+ ReactOnRailsPro::LicenseTaskFormatter.print_text(result, info)
17
+ end
18
+
19
+ raise "License verification failed: #{info[:status]}" if info[:status] != :valid
20
+ end
21
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "react_on_rails_pro/v8_log_processor"
4
+
5
+ namespace :react_on_rails_pro do
6
+ desc <<-DESC
7
+ Processes V8 log files by moving them to a specified directory, generating a combined
8
+ V8 profile, and optionally deleting the original log files. The resulting profile.v8log.json file
9
+ can be analyzed using tools like Speed Scope (https://www.speedscope.app) or Chrome Developer Tools
10
+ to visualize and analyze performance metrics.
11
+
12
+ @param keep_files [String] 'true' to keep the original log files, 'false' to delete them.
13
+ @param output_dir [String] The directory where log files are moved and the profile is saved.
14
+ DESC
15
+ task :process_v8_logs, %i[keep_files output_dir] => [:environment] do |_, args|
16
+ args.with_defaults(keep_files: "false", output_dir: "v8_profiles")
17
+ keep_files = args.keep_files == "true"
18
+ ReactOnRailsPro::V8LogProcessor.process_v8_logs(keep_files, args.output_dir)
19
+ end
20
+ end
@@ -22,7 +22,7 @@ Gem::Specification.new do |s|
22
22
 
23
23
  s.files = Dir.chdir(__dir__) do
24
24
  `git ls-files -z`.split("\x0").reject do |f|
25
- f.match(%r{^(test|spec|features|tmp|node_modules|packages|coverage|Gemfile.lock|lib/tasks)/})
25
+ f.match(%r{^(test|spec|features|tmp|node_modules|packages|coverage|Gemfile.lock)/})
26
26
  end
27
27
  end
28
28
  s.bindir = "exe"
@@ -39,7 +39,7 @@ Gem::Specification.new do |s|
39
39
  # https://github.com/HoneyryderChuck/httpx/issues/118
40
40
  s.add_runtime_dependency "http-2", ">= 1.1.1"
41
41
  s.add_runtime_dependency "jwt", "~> 2.7"
42
- s.add_runtime_dependency "async", ">= 2.6"
42
+ s.add_runtime_dependency "async", ">= 2.29"
43
43
  s.add_runtime_dependency "rainbow"
44
44
  s.add_runtime_dependency "react_on_rails", ReactOnRails::VERSION
45
45
  s.add_development_dependency "bundler"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: react_on_rails_pro
3
3
  version: !ruby/object:Gem::Version
4
- version: 16.4.0
4
+ version: 16.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Gordon
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-03-17 00:00:00.000000000 Z
11
+ date: 2026-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
@@ -100,14 +100,14 @@ dependencies:
100
100
  requirements:
101
101
  - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: '2.6'
103
+ version: '2.29'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - ">="
109
109
  - !ruby/object:Gem::Version
110
- version: '2.6'
110
+ version: '2.29'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rainbow
113
113
  requirement: !ruby/object:Gem::Requirement
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - '='
130
130
  - !ruby/object:Gem::Version
131
- version: 16.4.0
131
+ version: 16.5.1
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - '='
137
137
  - !ruby/object:Gem::Version
138
- version: 16.4.0
138
+ version: 16.5.1
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: bundler
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -254,6 +254,9 @@ files:
254
254
  - lib/react_on_rails_pro/utils.rb
255
255
  - lib/react_on_rails_pro/v8_log_processor.rb
256
256
  - lib/react_on_rails_pro/version.rb
257
+ - lib/tasks/assets.rake
258
+ - lib/tasks/license.rake
259
+ - lib/tasks/v8_log_processor.rake
257
260
  - package-scripts.yml
258
261
  - package.json
259
262
  - rakelib/dummy_apps.rake