2016-10-06 09:11:18 +08:00
|
|
|
GIT
|
|
|
|
remote: https://github.com/matthewd/websocket-client-simple.git
|
|
|
|
revision: e161305f1a466b9398d86df3b1731b03362da91b
|
|
|
|
branch: close-race
|
|
|
|
specs:
|
|
|
|
websocket-client-simple (0.3.0)
|
|
|
|
event_emitter
|
|
|
|
websocket
|
|
|
|
|
2024-01-29 20:28:28 +08:00
|
|
|
GIT
|
|
|
|
remote: https://github.com/nahi/httpclient.git
|
|
|
|
revision: d57cc6d5ffee1b566b5c189fe6dc8cc89570b812
|
|
|
|
branch: master
|
|
|
|
specs:
|
|
|
|
httpclient (2.8.3)
|
|
|
|
|
2024-05-23 04:06:10 +08:00
|
|
|
GIT
|
|
|
|
remote: https://github.com/rails/rdoc.git
|
|
|
|
revision: 7472b691920b65b9e0f9f4d1bd6ed757c71d5c70
|
|
|
|
branch: master
|
|
|
|
specs:
|
|
|
|
rdoc (6.6.3.1)
|
|
|
|
psych (>= 4.0.0)
|
|
|
|
|
2023-08-28 23:29:58 +08:00
|
|
|
GIT
|
|
|
|
remote: https://github.com/rails/sdoc.git
|
2024-01-23 02:43:03 +08:00
|
|
|
revision: e9bb867eba81f48c402a129e688e810ec1fa387c
|
2023-08-28 23:29:58 +08:00
|
|
|
branch: main
|
|
|
|
specs:
|
|
|
|
sdoc (3.0.0.alpha)
|
|
|
|
nokogiri
|
|
|
|
rdoc (>= 5.0)
|
|
|
|
rouge
|
|
|
|
|
2015-02-19 00:30:25 +08:00
|
|
|
PATH
|
|
|
|
remote: .
|
|
|
|
specs:
|
2024-05-14 00:44:50 +08:00
|
|
|
actioncable (8.0.0.alpha)
|
|
|
|
actionpack (= 8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
2016-12-29 11:45:39 +08:00
|
|
|
nio4r (~> 2.0)
|
2018-01-19 06:50:50 +08:00
|
|
|
websocket-driver (>= 0.6.1)
|
2022-06-14 05:43:42 +08:00
|
|
|
zeitwerk (~> 2.6)
|
2024-05-14 00:44:50 +08:00
|
|
|
actionmailbox (8.0.0.alpha)
|
|
|
|
actionpack (= 8.0.0.alpha)
|
|
|
|
activejob (= 8.0.0.alpha)
|
|
|
|
activerecord (= 8.0.0.alpha)
|
|
|
|
activestorage (= 8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
2024-01-09 20:25:36 +08:00
|
|
|
mail (>= 2.8.0)
|
2024-05-14 00:44:50 +08:00
|
|
|
actionmailer (8.0.0.alpha)
|
|
|
|
actionpack (= 8.0.0.alpha)
|
|
|
|
actionview (= 8.0.0.alpha)
|
|
|
|
activejob (= 8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
2024-01-10 03:41:52 +08:00
|
|
|
mail (>= 2.8.0)
|
2023-07-07 03:33:44 +08:00
|
|
|
rails-dom-testing (~> 2.2)
|
2024-05-14 00:44:50 +08:00
|
|
|
actionpack (8.0.0.alpha)
|
|
|
|
actionview (= 8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
2023-01-26 05:20:33 +08:00
|
|
|
nokogiri (>= 1.8.5)
|
2023-10-21 00:50:18 +08:00
|
|
|
racc
|
2023-01-25 23:25:49 +08:00
|
|
|
rack (>= 2.2.4)
|
2023-01-21 01:01:27 +08:00
|
|
|
rack-session (>= 1.0.1)
|
2017-07-20 07:04:53 +08:00
|
|
|
rack-test (>= 0.6.3)
|
2023-07-07 03:33:44 +08:00
|
|
|
rails-dom-testing (~> 2.2)
|
2023-05-25 00:47:52 +08:00
|
|
|
rails-html-sanitizer (~> 1.6)
|
2024-01-01 02:19:16 +08:00
|
|
|
useragent (~> 0.16)
|
2024-05-14 00:44:50 +08:00
|
|
|
actiontext (8.0.0.alpha)
|
|
|
|
actionpack (= 8.0.0.alpha)
|
|
|
|
activerecord (= 8.0.0.alpha)
|
|
|
|
activestorage (= 8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
2021-11-25 06:33:45 +08:00
|
|
|
globalid (>= 0.6.0)
|
2019-01-05 08:43:11 +08:00
|
|
|
nokogiri (>= 1.8.5)
|
2024-05-14 00:44:50 +08:00
|
|
|
actionview (8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
2015-02-19 00:30:25 +08:00
|
|
|
builder (~> 3.1)
|
2022-07-28 17:40:55 +08:00
|
|
|
erubi (~> 1.11)
|
2023-07-07 03:33:44 +08:00
|
|
|
rails-dom-testing (~> 2.2)
|
2023-05-25 00:47:52 +08:00
|
|
|
rails-html-sanitizer (~> 1.6)
|
2024-05-14 00:44:50 +08:00
|
|
|
activejob (8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
2015-12-18 08:20:19 +08:00
|
|
|
globalid (>= 0.3.6)
|
2024-05-14 00:44:50 +08:00
|
|
|
activemodel (8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
|
|
|
activerecord (8.0.0.alpha)
|
|
|
|
activemodel (= 8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
2023-06-28 21:56:36 +08:00
|
|
|
timeout (>= 0.4.0)
|
2024-05-14 00:44:50 +08:00
|
|
|
activestorage (8.0.0.alpha)
|
|
|
|
actionpack (= 8.0.0.alpha)
|
|
|
|
activejob (= 8.0.0.alpha)
|
|
|
|
activerecord (= 8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
2021-09-21 05:19:28 +08:00
|
|
|
marcel (~> 1.0)
|
2024-05-14 00:44:50 +08:00
|
|
|
activesupport (8.0.0.alpha)
|
Add `drb`, `mutex_m` and `base64` that are bundled gem candidates for Ruby 3.4
This commit adds `drb`, `mutex_m` and `base64` to `activesupport/activesupport.gemspec`
because 3.3.0dev shows warnings if bundled gem candidates are required
like `mutex_m will be not part of the default gems since Ruby 3.4.0. Add it to your Gemfile.`
- Example
```
$ ruby -v ; ruby generic_main.rb
ruby 3.3.0dev (2023-08-07T23:09:02Z master 0e5da05a32) [x86_64-linux]
Fetching https://github.com/rails/rails.git
Resolving dependencies...
Fetching gem metadata from https://rubygems.org/.......
/home/yahonda/.rbenv/versions/trunk/lib/ruby/gems/3.3.0+0/bundler/gems/rails-2942958827f1/activesupport/lib/active_support/notifications/fanout.rb:3: warning: mutex_m will be not part of the default gems since Ruby 3.4.0. Add it to your Gemfile.
/home/yahonda/.rbenv/versions/trunk/lib/ruby/gems/3.3.0+0/bundler/gems/rails-2942958827f1/activesupport/lib/active_support/message_encryptor.rb:4: warning: base64 will be not part of the default gems since Ruby 3.4.0. Add it to your Gemfile.
generic_main.rb:16: warning: drb will be not part of the default gems since Ruby 3.4.0. Add it to your inline Gemfile.
$
```
- generic_main.rb
```
require "bundler/inline"
gemfile(true) do
source "https://rubygems.org"
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
gem "rails", github: "rails/rails", branch: "main"
end
require "active_support"
require "minitest/autorun"
require "drb"
require "base64"
require "mutex_m"
```
These gems are chosen as follows.
- Bundled gems candidates for Ruby 3.4
```ruby
$ ruby -v ; ruby -e 'pp Gem::BUNDLED_GEMS::SINCE.select { |k,v| v == "3.4.0" }'
ruby 3.3.0dev (2023-08-07T23:09:02Z master 0e5da05a32) [x86_64-linux]
{"abbrev"=>"3.4.0",
"observer"=>"3.4.0",
"getoptlong"=>"3.4.0",
"resolv-replace"=>"3.4.0",
"rinda"=>"3.4.0",
"nkf"=>"3.4.0",
"syslog"=>"3.4.0",
"drb"=>"3.4.0",
"mutex_m"=>"3.4.0",
"csv"=>"3.4.0",
"base64"=>"3.4.0"}
$
```
- `drb`, `mutex_m` and `base64` are required by Rails
- "drb"
```ruby
$ git grep 'require "drb"'
activesupport/lib/active_support/testing/parallelization.rb:require "drb"
activesupport/lib/active_support/testing/parallelization/server.rb:require "drb"
```
- "mutex_m"
```ruby
$ git grep 'require "mutex_m"'
actionpack/lib/action_controller/metal/params_wrapper.rb: require "mutex_m"
activerecord/lib/active_record/attribute_methods.rb:require "mutex_m"
activerecord/lib/active_record/relation/delegation.rb:require "mutex_m"
activesupport/lib/active_support/notifications/fanout.rb:require "mutex_m"
```
- "base64" usage
```ruby
$ git grep 'require "base64"'
actioncable/Rakefile:require "base64"
actionmailer/lib/action_mailer/inline_preview_interceptor.rb:require "base64"
actionpack/lib/action_controller/metal/http_authentication.rb:require "base64"
actionview/Rakefile:require "base64"
activerecord/lib/active_record/encryption/message_serializer.rb:require "base64"
activerecord/lib/active_record/fixture_set/render_context.rb:require "base64"
activerecord/test/cases/encryption/message_serializer_test.rb:require "base64"
activesupport/lib/active_support/message_encryptor.rb:require "base64"
activesupport/lib/active_support/message_verifier.rb:require "base64"
activesupport/lib/active_support/xml_mini.rb:require "base64"
railties/test/application/mailer_previews_test.rb:require "base64"
```
- Dependency between Rails related modules
- "drb" is only required by Active Support
- "mutex_m" is required by Action Pack, Active Record and Active Support
Action Pack and Active Record depend on Active Support. Therefore, adding dependency to Active Support is fine.
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionpack/actionpack.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/activerecord/activerecord.gemspec#L38
- "base64" is required by Action Cable, Action Mailer, Action Pack, Action View,
Active Record, Active Support and Raillties.
Action Cable, Action Mailer, Action Pack, Action View and Active Record and Railties depend
on Active Support. Therefore, adding dependency to Active Support is fine.
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actioncable/actioncable.gemspec#L35
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionmailer/actionmailer.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionpack/actionpack.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionview/actionview.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionpack/actionpack.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/railties/railties.gemspec#L40
Refer to:
https://bugs.ruby-lang.org/issues/19776
https://github.com/ruby/ruby/pull/8126
https://github.com/rubygems/rubygems/pull/6840
2023-08-08 15:46:50 +08:00
|
|
|
base64
|
2023-12-17 14:05:47 +08:00
|
|
|
bigdecimal
|
2016-05-03 06:04:59 +08:00
|
|
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
2022-06-03 03:21:35 +08:00
|
|
|
connection_pool (>= 2.2.5)
|
Add `drb`, `mutex_m` and `base64` that are bundled gem candidates for Ruby 3.4
This commit adds `drb`, `mutex_m` and `base64` to `activesupport/activesupport.gemspec`
because 3.3.0dev shows warnings if bundled gem candidates are required
like `mutex_m will be not part of the default gems since Ruby 3.4.0. Add it to your Gemfile.`
- Example
```
$ ruby -v ; ruby generic_main.rb
ruby 3.3.0dev (2023-08-07T23:09:02Z master 0e5da05a32) [x86_64-linux]
Fetching https://github.com/rails/rails.git
Resolving dependencies...
Fetching gem metadata from https://rubygems.org/.......
/home/yahonda/.rbenv/versions/trunk/lib/ruby/gems/3.3.0+0/bundler/gems/rails-2942958827f1/activesupport/lib/active_support/notifications/fanout.rb:3: warning: mutex_m will be not part of the default gems since Ruby 3.4.0. Add it to your Gemfile.
/home/yahonda/.rbenv/versions/trunk/lib/ruby/gems/3.3.0+0/bundler/gems/rails-2942958827f1/activesupport/lib/active_support/message_encryptor.rb:4: warning: base64 will be not part of the default gems since Ruby 3.4.0. Add it to your Gemfile.
generic_main.rb:16: warning: drb will be not part of the default gems since Ruby 3.4.0. Add it to your inline Gemfile.
$
```
- generic_main.rb
```
require "bundler/inline"
gemfile(true) do
source "https://rubygems.org"
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
gem "rails", github: "rails/rails", branch: "main"
end
require "active_support"
require "minitest/autorun"
require "drb"
require "base64"
require "mutex_m"
```
These gems are chosen as follows.
- Bundled gems candidates for Ruby 3.4
```ruby
$ ruby -v ; ruby -e 'pp Gem::BUNDLED_GEMS::SINCE.select { |k,v| v == "3.4.0" }'
ruby 3.3.0dev (2023-08-07T23:09:02Z master 0e5da05a32) [x86_64-linux]
{"abbrev"=>"3.4.0",
"observer"=>"3.4.0",
"getoptlong"=>"3.4.0",
"resolv-replace"=>"3.4.0",
"rinda"=>"3.4.0",
"nkf"=>"3.4.0",
"syslog"=>"3.4.0",
"drb"=>"3.4.0",
"mutex_m"=>"3.4.0",
"csv"=>"3.4.0",
"base64"=>"3.4.0"}
$
```
- `drb`, `mutex_m` and `base64` are required by Rails
- "drb"
```ruby
$ git grep 'require "drb"'
activesupport/lib/active_support/testing/parallelization.rb:require "drb"
activesupport/lib/active_support/testing/parallelization/server.rb:require "drb"
```
- "mutex_m"
```ruby
$ git grep 'require "mutex_m"'
actionpack/lib/action_controller/metal/params_wrapper.rb: require "mutex_m"
activerecord/lib/active_record/attribute_methods.rb:require "mutex_m"
activerecord/lib/active_record/relation/delegation.rb:require "mutex_m"
activesupport/lib/active_support/notifications/fanout.rb:require "mutex_m"
```
- "base64" usage
```ruby
$ git grep 'require "base64"'
actioncable/Rakefile:require "base64"
actionmailer/lib/action_mailer/inline_preview_interceptor.rb:require "base64"
actionpack/lib/action_controller/metal/http_authentication.rb:require "base64"
actionview/Rakefile:require "base64"
activerecord/lib/active_record/encryption/message_serializer.rb:require "base64"
activerecord/lib/active_record/fixture_set/render_context.rb:require "base64"
activerecord/test/cases/encryption/message_serializer_test.rb:require "base64"
activesupport/lib/active_support/message_encryptor.rb:require "base64"
activesupport/lib/active_support/message_verifier.rb:require "base64"
activesupport/lib/active_support/xml_mini.rb:require "base64"
railties/test/application/mailer_previews_test.rb:require "base64"
```
- Dependency between Rails related modules
- "drb" is only required by Active Support
- "mutex_m" is required by Action Pack, Active Record and Active Support
Action Pack and Active Record depend on Active Support. Therefore, adding dependency to Active Support is fine.
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionpack/actionpack.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/activerecord/activerecord.gemspec#L38
- "base64" is required by Action Cable, Action Mailer, Action Pack, Action View,
Active Record, Active Support and Raillties.
Action Cable, Action Mailer, Action Pack, Action View and Active Record and Railties depend
on Active Support. Therefore, adding dependency to Active Support is fine.
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actioncable/actioncable.gemspec#L35
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionmailer/actionmailer.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionpack/actionpack.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionview/actionview.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionpack/actionpack.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/railties/railties.gemspec#L40
Refer to:
https://bugs.ruby-lang.org/issues/19776
https://github.com/ruby/ruby/pull/8126
https://github.com/rubygems/rubygems/pull/6840
2023-08-08 15:46:50 +08:00
|
|
|
drb
|
2019-11-22 03:59:22 +08:00
|
|
|
i18n (>= 1.6, < 2)
|
2024-02-08 19:41:04 +08:00
|
|
|
minitest (>= 5.1)
|
2023-11-09 23:55:14 +08:00
|
|
|
tzinfo (~> 2.0, >= 2.0.5)
|
2024-05-14 00:44:50 +08:00
|
|
|
rails (8.0.0.alpha)
|
|
|
|
actioncable (= 8.0.0.alpha)
|
|
|
|
actionmailbox (= 8.0.0.alpha)
|
|
|
|
actionmailer (= 8.0.0.alpha)
|
|
|
|
actionpack (= 8.0.0.alpha)
|
|
|
|
actiontext (= 8.0.0.alpha)
|
|
|
|
actionview (= 8.0.0.alpha)
|
|
|
|
activejob (= 8.0.0.alpha)
|
|
|
|
activemodel (= 8.0.0.alpha)
|
|
|
|
activerecord (= 8.0.0.alpha)
|
|
|
|
activestorage (= 8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
2020-08-18 17:14:00 +08:00
|
|
|
bundler (>= 1.15.0)
|
2024-05-14 00:44:50 +08:00
|
|
|
railties (= 8.0.0.alpha)
|
|
|
|
railties (8.0.0.alpha)
|
|
|
|
actionpack (= 8.0.0.alpha)
|
|
|
|
activesupport (= 8.0.0.alpha)
|
2024-04-24 04:21:41 +08:00
|
|
|
irb (~> 1.13)
|
2023-01-21 01:01:27 +08:00
|
|
|
rackup (>= 1.0.0)
|
2021-10-13 06:16:38 +08:00
|
|
|
rake (>= 12.2)
|
2023-05-06 02:15:17 +08:00
|
|
|
thor (~> 1.0, >= 1.2.2)
|
2022-06-14 05:43:42 +08:00
|
|
|
zeitwerk (~> 2.6)
|
2015-02-19 00:30:25 +08:00
|
|
|
|
|
|
|
GEM
|
|
|
|
remote: https://rubygems.org/
|
|
|
|
specs:
|
2024-01-02 23:48:44 +08:00
|
|
|
addressable (2.8.6)
|
2023-01-12 06:58:06 +08:00
|
|
|
public_suffix (>= 2.0.2, < 6.0)
|
2020-11-04 14:39:41 +08:00
|
|
|
amq-protocol (2.3.2)
|
2021-04-14 02:18:28 +08:00
|
|
|
ast (2.4.2)
|
2024-01-02 23:48:44 +08:00
|
|
|
aws-eventstream (1.3.0)
|
|
|
|
aws-partitions (1.876.0)
|
|
|
|
aws-sdk-core (3.190.1)
|
|
|
|
aws-eventstream (~> 1, >= 1.3.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
aws-partitions (~> 1, >= 1.651.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
aws-sigv4 (~> 1.8)
|
2023-01-12 06:58:06 +08:00
|
|
|
jmespath (~> 1, >= 1.6.1)
|
2024-01-02 23:48:44 +08:00
|
|
|
aws-sdk-kms (1.75.0)
|
|
|
|
aws-sdk-core (~> 3, >= 3.188.0)
|
2019-10-10 12:48:16 +08:00
|
|
|
aws-sigv4 (~> 1.1)
|
2024-01-02 23:48:44 +08:00
|
|
|
aws-sdk-s3 (1.142.0)
|
|
|
|
aws-sdk-core (~> 3, >= 3.189.0)
|
2017-09-10 11:22:10 +08:00
|
|
|
aws-sdk-kms (~> 1)
|
2024-01-02 23:48:44 +08:00
|
|
|
aws-sigv4 (~> 1.8)
|
|
|
|
aws-sdk-sns (1.70.0)
|
|
|
|
aws-sdk-core (~> 3, >= 3.188.0)
|
2019-10-10 12:48:16 +08:00
|
|
|
aws-sigv4 (~> 1.1)
|
2024-01-02 23:48:44 +08:00
|
|
|
aws-sigv4 (1.8.0)
|
2020-11-04 14:39:41 +08:00
|
|
|
aws-eventstream (~> 1, >= 1.0.2)
|
2021-12-16 05:20:38 +08:00
|
|
|
azure-storage-blob (2.0.3)
|
Unlock `azure-storage-blob` version to use version 2.0
`azure-storage-blob` 2.0.0 has been released.
https://rubygems.org/gems/azure-storage-blob/versions/2.0.0
According to this commit and changelog, `azure-storage-blob` 1.1.0 did not support Ruby 2.6 and higher.
As of right now, Rails master branch should support Ruby 2.5.0, 2.6.0 and 2.7.0
then it should be appropriate to unlock `azure-storage-blob` version.
https://github.com/Azure/azure-storage-ruby/commit/252e3f06a5cf2e2583302bfefa95d8b25818a44f
This commit addresses this following error:
```ruby
% cd activestorage
% bundle exec rake test
Traceback (most recent call last):
14: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `<main>'
13: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `select'
12: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:17:in `block in <main>'
11: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
10: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
9: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:7:in `<top (required)>'
8: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:8:in `<class:AzureStorageServiceTest>'
7: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service.rb:51:in `configure'
6: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:8:in `build'
5: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:17:in `build'
4: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:30:in `resolve'
3: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
2: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
1: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/azure_storage_service.rb:3:in `<top (required)>'
/Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/rubygems_integration.rb:346:in `block (2 levels) in replace_gem': can't activate azure-storage-blob (~> 1.1), already activated azure-storage-blob-2.0.0. Make sure all dependencies are added to Gemfile. (Gem::LoadError)
11: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `<main>'
10: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `select'
9: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:17:in `block in <main>'
8: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
7: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
6: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:7:in `<top (required)>'
5: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:8:in `<class:AzureStorageServiceTest>'
4: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service.rb:51:in `configure'
3: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:8:in `build'
2: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:17:in `build'
1: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:29:in `resolve'
/Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:33:in `rescue in resolve': Missing service adapter for "AzureStorage" (RuntimeError)
rake aborted!
```
* Update Gemfile.lock to bump azure-storage-blob version
```
% bundle update --conservative faraday azure-storage-blob google-cloud-storage`
```
- How to find gem name to update by setting `gem "azure-storage-blob", "= 2.0.0"` temporarily
```ruby
% git diff
diff --git a/Gemfile b/Gemfile
index 5fdaceab2f..6be7dccf4b 100644
--- a/Gemfile
+++ b/Gemfile
@@ -84,7 +84,7 @@ end
group :storage do
gem "aws-sdk-s3", require: false
gem "google-cloud-storage", "~> 1.11", require: false
- gem "azure-storage-blob", require: false
+ gem "azure-storage-blob", "= 2.0.0", require: false # Use 2.0.0 temporarily to find which gems need bump
gem "image_processing", "~> 1.2"
end
% bundle install
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies.....
Bundler could not find compatible versions for gem "faraday":
In snapshot (Gemfile.lock):
faraday (= 0.17.1)
In Gemfile:
azure-storage-blob (= 2.0.0) was resolved to 2.0.0, which depends on
azure-storage-common (~> 2.0) was resolved to 2.0.1, which depends on
faraday (~> 1.0)
google-cloud-storage (~> 1.11) was resolved to 1.25.0, which depends on
googleauth (~> 0.9) was resolved to 0.10.0, which depends on
faraday (~> 0.12)
Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.
% git checkout -f Gemfile
% bundle update --conservative faraday azure-storage-blob google-cloud-storage
```
2020-03-16 18:38:22 +08:00
|
|
|
azure-storage-common (~> 2.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
nokogiri (~> 1, >= 1.10.8)
|
|
|
|
azure-storage-common (2.0.4)
|
Unlock `azure-storage-blob` version to use version 2.0
`azure-storage-blob` 2.0.0 has been released.
https://rubygems.org/gems/azure-storage-blob/versions/2.0.0
According to this commit and changelog, `azure-storage-blob` 1.1.0 did not support Ruby 2.6 and higher.
As of right now, Rails master branch should support Ruby 2.5.0, 2.6.0 and 2.7.0
then it should be appropriate to unlock `azure-storage-blob` version.
https://github.com/Azure/azure-storage-ruby/commit/252e3f06a5cf2e2583302bfefa95d8b25818a44f
This commit addresses this following error:
```ruby
% cd activestorage
% bundle exec rake test
Traceback (most recent call last):
14: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `<main>'
13: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `select'
12: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:17:in `block in <main>'
11: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
10: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
9: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:7:in `<top (required)>'
8: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:8:in `<class:AzureStorageServiceTest>'
7: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service.rb:51:in `configure'
6: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:8:in `build'
5: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:17:in `build'
4: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:30:in `resolve'
3: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
2: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
1: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/azure_storage_service.rb:3:in `<top (required)>'
/Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/rubygems_integration.rb:346:in `block (2 levels) in replace_gem': can't activate azure-storage-blob (~> 1.1), already activated azure-storage-blob-2.0.0. Make sure all dependencies are added to Gemfile. (Gem::LoadError)
11: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `<main>'
10: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `select'
9: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:17:in `block in <main>'
8: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
7: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
6: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:7:in `<top (required)>'
5: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:8:in `<class:AzureStorageServiceTest>'
4: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service.rb:51:in `configure'
3: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:8:in `build'
2: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:17:in `build'
1: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:29:in `resolve'
/Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:33:in `rescue in resolve': Missing service adapter for "AzureStorage" (RuntimeError)
rake aborted!
```
* Update Gemfile.lock to bump azure-storage-blob version
```
% bundle update --conservative faraday azure-storage-blob google-cloud-storage`
```
- How to find gem name to update by setting `gem "azure-storage-blob", "= 2.0.0"` temporarily
```ruby
% git diff
diff --git a/Gemfile b/Gemfile
index 5fdaceab2f..6be7dccf4b 100644
--- a/Gemfile
+++ b/Gemfile
@@ -84,7 +84,7 @@ end
group :storage do
gem "aws-sdk-s3", require: false
gem "google-cloud-storage", "~> 1.11", require: false
- gem "azure-storage-blob", require: false
+ gem "azure-storage-blob", "= 2.0.0", require: false # Use 2.0.0 temporarily to find which gems need bump
gem "image_processing", "~> 1.2"
end
% bundle install
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies.....
Bundler could not find compatible versions for gem "faraday":
In snapshot (Gemfile.lock):
faraday (= 0.17.1)
In Gemfile:
azure-storage-blob (= 2.0.0) was resolved to 2.0.0, which depends on
azure-storage-common (~> 2.0) was resolved to 2.0.1, which depends on
faraday (~> 1.0)
google-cloud-storage (~> 1.11) was resolved to 1.25.0, which depends on
googleauth (~> 0.9) was resolved to 0.10.0, which depends on
faraday (~> 0.12)
Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.
% git checkout -f Gemfile
% bundle update --conservative faraday azure-storage-blob google-cloud-storage
```
2020-03-16 18:38:22 +08:00
|
|
|
faraday (~> 1.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
faraday_middleware (~> 1.0, >= 1.0.0.rc1)
|
2021-01-22 05:22:41 +08:00
|
|
|
net-http-persistent (~> 4.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
nokogiri (~> 1, >= 1.10.8)
|
2024-01-02 23:48:44 +08:00
|
|
|
backburner (1.6.1)
|
2015-08-10 11:30:03 +08:00
|
|
|
beaneater (~> 1.0)
|
2018-09-28 18:40:24 +08:00
|
|
|
concurrent-ruby (~> 1.0, >= 1.0.1)
|
2015-08-10 11:30:03 +08:00
|
|
|
dante (> 0.1.5)
|
2024-01-02 23:48:44 +08:00
|
|
|
base64 (0.2.0)
|
|
|
|
bcrypt (3.1.20)
|
2024-05-15 02:48:55 +08:00
|
|
|
bcrypt_pbkdf (1.1.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
beaneater (1.1.3)
|
2024-01-02 23:48:44 +08:00
|
|
|
bigdecimal (3.1.5)
|
Always run `rails app:update` in app update tests
Prior to this commit, several tests in `AppGeneratorTest` were testing
app update behavior without actually running `rails app:update`. This
meant the logic in `Rails::AppUpdater#generator_options` that detects
which frameworks and components are installed was not being tested.
Additionally, because `ENV["BUNDLE_GEMFILE"]` is set when tests are run
(by `require "bundler/setup"` in `tools/test.rb`), any tests which did
run `rails app:update` used the Rails repo Gemfile, instead of the
generated app Gemfile. The difference becomes obvious when running
`rails app:update` after generating an app without Sprockets (as in
`test_app_update_does_not_generate_manifest_config_when_propshaft_is_used`),
because `rails app:update` will load the Sprockets railtie (due to
`Bundler.require` using the Rails repo Gemfile), and then exit with a
`Sprockets::Railtie::ManifestNeededError`. However, if
`rails app:update` is run within a `quietly` block, such an error will
be swallowed.
This commit changes all such tests to run `rails app:update` via a
`run_app_update` helper that: (1) overrides the `BUNDLE_GEMFILE`
environment variable to point to the generated app Gemfile, (2) points
the `rails` gem in the generated app Gemfile to the Rails repo
(otherwise the `rails` gem version cannot be resolved), and (3) sets
`exception: true` so that the `system` call will raise an error if
`rails app:update` exits with an error code.
This commit also adds `jbuilder` and `web-console` to the Rails repo
Gemfile to ensure they are already installed when evaluating the
generated app Gemfile.
These changes do add a couple dozen seconds to the test suite run time,
but the thorough test coverage seems worth it.
2022-10-04 06:26:04 +08:00
|
|
|
bindex (0.8.1)
|
2024-01-02 23:48:44 +08:00
|
|
|
bootsnap (1.17.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
msgpack (~> 1.2)
|
2024-01-02 02:00:10 +08:00
|
|
|
brakeman (6.1.1)
|
|
|
|
racc
|
2019-12-28 02:30:45 +08:00
|
|
|
builder (3.2.4)
|
2024-01-02 23:48:44 +08:00
|
|
|
bunny (2.22.0)
|
2020-11-04 14:39:41 +08:00
|
|
|
amq-protocol (~> 2.3, >= 2.3.1)
|
2021-06-09 07:27:47 +08:00
|
|
|
sorted_set (~> 1, >= 1.0.2)
|
2023-07-29 18:35:47 +08:00
|
|
|
capybara (3.39.2)
|
2016-08-28 04:48:24 +08:00
|
|
|
addressable
|
2021-12-09 05:44:11 +08:00
|
|
|
matrix
|
2017-08-17 02:03:24 +08:00
|
|
|
mini_mime (>= 0.1.3)
|
2018-04-06 19:55:34 +08:00
|
|
|
nokogiri (~> 1.8)
|
|
|
|
rack (>= 1.6.0)
|
|
|
|
rack-test (>= 0.6.3)
|
2021-04-14 02:18:28 +08:00
|
|
|
regexp_parser (>= 1.5, < 3.0)
|
2018-11-10 06:21:08 +08:00
|
|
|
xpath (~> 3.2)
|
2024-01-02 23:48:44 +08:00
|
|
|
cgi (0.4.1)
|
|
|
|
chef-utils (18.3.0)
|
2023-03-27 11:14:18 +08:00
|
|
|
concurrent-ruby
|
2023-10-27 22:46:16 +08:00
|
|
|
concurrent-ruby (1.2.2)
|
|
|
|
connection_pool (2.4.1)
|
2021-01-22 05:22:41 +08:00
|
|
|
crack (0.4.5)
|
|
|
|
rexml
|
2020-10-04 05:43:39 +08:00
|
|
|
crass (1.0.6)
|
2024-01-02 23:48:44 +08:00
|
|
|
cssbundling-rails (1.3.3)
|
2021-10-09 23:03:05 +08:00
|
|
|
railties (>= 6.0.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
dalli (3.2.6)
|
2015-08-10 11:30:03 +08:00
|
|
|
dante (0.2.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
dartsass-rails (0.5.0)
|
2023-03-01 13:51:29 +08:00
|
|
|
railties (>= 6.0.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
sass-embedded (~> 1.63)
|
|
|
|
date (3.3.4)
|
|
|
|
debug (1.9.1)
|
|
|
|
irb (~> 1.10)
|
|
|
|
reline (>= 0.3.8)
|
2020-09-21 13:19:59 +08:00
|
|
|
declarative (0.0.20)
|
2023-01-12 06:58:06 +08:00
|
|
|
delayed_job (4.1.11)
|
2022-01-21 22:08:50 +08:00
|
|
|
activesupport (>= 3.0, < 8.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
delayed_job_active_record (4.1.8)
|
2022-01-21 22:08:50 +08:00
|
|
|
activerecord (>= 3.0, < 8.0)
|
2017-01-29 08:05:06 +08:00
|
|
|
delayed_job (>= 3.0, < 5)
|
2024-01-02 23:48:44 +08:00
|
|
|
digest-crc (0.6.5)
|
2021-01-22 05:22:41 +08:00
|
|
|
rake (>= 12.0.0, < 14.0.0)
|
2024-05-15 02:48:55 +08:00
|
|
|
dotenv (2.8.1)
|
2024-01-02 23:48:44 +08:00
|
|
|
drb (2.2.0)
|
Add `drb`, `mutex_m` and `base64` that are bundled gem candidates for Ruby 3.4
This commit adds `drb`, `mutex_m` and `base64` to `activesupport/activesupport.gemspec`
because 3.3.0dev shows warnings if bundled gem candidates are required
like `mutex_m will be not part of the default gems since Ruby 3.4.0. Add it to your Gemfile.`
- Example
```
$ ruby -v ; ruby generic_main.rb
ruby 3.3.0dev (2023-08-07T23:09:02Z master 0e5da05a32) [x86_64-linux]
Fetching https://github.com/rails/rails.git
Resolving dependencies...
Fetching gem metadata from https://rubygems.org/.......
/home/yahonda/.rbenv/versions/trunk/lib/ruby/gems/3.3.0+0/bundler/gems/rails-2942958827f1/activesupport/lib/active_support/notifications/fanout.rb:3: warning: mutex_m will be not part of the default gems since Ruby 3.4.0. Add it to your Gemfile.
/home/yahonda/.rbenv/versions/trunk/lib/ruby/gems/3.3.0+0/bundler/gems/rails-2942958827f1/activesupport/lib/active_support/message_encryptor.rb:4: warning: base64 will be not part of the default gems since Ruby 3.4.0. Add it to your Gemfile.
generic_main.rb:16: warning: drb will be not part of the default gems since Ruby 3.4.0. Add it to your inline Gemfile.
$
```
- generic_main.rb
```
require "bundler/inline"
gemfile(true) do
source "https://rubygems.org"
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
gem "rails", github: "rails/rails", branch: "main"
end
require "active_support"
require "minitest/autorun"
require "drb"
require "base64"
require "mutex_m"
```
These gems are chosen as follows.
- Bundled gems candidates for Ruby 3.4
```ruby
$ ruby -v ; ruby -e 'pp Gem::BUNDLED_GEMS::SINCE.select { |k,v| v == "3.4.0" }'
ruby 3.3.0dev (2023-08-07T23:09:02Z master 0e5da05a32) [x86_64-linux]
{"abbrev"=>"3.4.0",
"observer"=>"3.4.0",
"getoptlong"=>"3.4.0",
"resolv-replace"=>"3.4.0",
"rinda"=>"3.4.0",
"nkf"=>"3.4.0",
"syslog"=>"3.4.0",
"drb"=>"3.4.0",
"mutex_m"=>"3.4.0",
"csv"=>"3.4.0",
"base64"=>"3.4.0"}
$
```
- `drb`, `mutex_m` and `base64` are required by Rails
- "drb"
```ruby
$ git grep 'require "drb"'
activesupport/lib/active_support/testing/parallelization.rb:require "drb"
activesupport/lib/active_support/testing/parallelization/server.rb:require "drb"
```
- "mutex_m"
```ruby
$ git grep 'require "mutex_m"'
actionpack/lib/action_controller/metal/params_wrapper.rb: require "mutex_m"
activerecord/lib/active_record/attribute_methods.rb:require "mutex_m"
activerecord/lib/active_record/relation/delegation.rb:require "mutex_m"
activesupport/lib/active_support/notifications/fanout.rb:require "mutex_m"
```
- "base64" usage
```ruby
$ git grep 'require "base64"'
actioncable/Rakefile:require "base64"
actionmailer/lib/action_mailer/inline_preview_interceptor.rb:require "base64"
actionpack/lib/action_controller/metal/http_authentication.rb:require "base64"
actionview/Rakefile:require "base64"
activerecord/lib/active_record/encryption/message_serializer.rb:require "base64"
activerecord/lib/active_record/fixture_set/render_context.rb:require "base64"
activerecord/test/cases/encryption/message_serializer_test.rb:require "base64"
activesupport/lib/active_support/message_encryptor.rb:require "base64"
activesupport/lib/active_support/message_verifier.rb:require "base64"
activesupport/lib/active_support/xml_mini.rb:require "base64"
railties/test/application/mailer_previews_test.rb:require "base64"
```
- Dependency between Rails related modules
- "drb" is only required by Active Support
- "mutex_m" is required by Action Pack, Active Record and Active Support
Action Pack and Active Record depend on Active Support. Therefore, adding dependency to Active Support is fine.
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionpack/actionpack.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/activerecord/activerecord.gemspec#L38
- "base64" is required by Action Cable, Action Mailer, Action Pack, Action View,
Active Record, Active Support and Raillties.
Action Cable, Action Mailer, Action Pack, Action View and Active Record and Railties depend
on Active Support. Therefore, adding dependency to Active Support is fine.
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actioncable/actioncable.gemspec#L35
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionmailer/actionmailer.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionpack/actionpack.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionview/actionview.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/actionpack/actionpack.gemspec#L36
https://github.com/rails/rails/blob/2942958827f1934dfcba284d074e6d61104d3e7c/railties/railties.gemspec#L40
Refer to:
https://bugs.ruby-lang.org/issues/19776
https://github.com/ruby/ruby/pull/8126
https://github.com/rubygems/rubygems/pull/6840
2023-08-08 15:46:50 +08:00
|
|
|
ruby2_keywords
|
2024-05-15 02:48:55 +08:00
|
|
|
ed25519 (1.3.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
erubi (1.12.0)
|
|
|
|
et-orbi (1.2.7)
|
2017-07-20 07:04:53 +08:00
|
|
|
tzinfo
|
2017-07-25 14:53:02 +08:00
|
|
|
event_emitter (0.2.6)
|
2024-01-02 23:48:44 +08:00
|
|
|
execjs (2.9.1)
|
|
|
|
faraday (1.10.3)
|
2021-06-09 07:27:47 +08:00
|
|
|
faraday-em_http (~> 1.0)
|
|
|
|
faraday-em_synchrony (~> 1.0)
|
|
|
|
faraday-excon (~> 1.1)
|
2023-01-12 06:58:06 +08:00
|
|
|
faraday-httpclient (~> 1.0)
|
|
|
|
faraday-multipart (~> 1.0)
|
2021-01-22 05:22:41 +08:00
|
|
|
faraday-net_http (~> 1.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
faraday-net_http_persistent (~> 1.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
faraday-patron (~> 1.0)
|
|
|
|
faraday-rack (~> 1.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
faraday-retry (~> 1.0)
|
2021-06-09 07:27:47 +08:00
|
|
|
ruby2_keywords (>= 0.0.4)
|
|
|
|
faraday-em_http (1.0.0)
|
|
|
|
faraday-em_synchrony (1.0.0)
|
|
|
|
faraday-excon (1.1.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
faraday-httpclient (1.0.1)
|
2023-01-12 06:58:06 +08:00
|
|
|
faraday-multipart (1.0.4)
|
|
|
|
multipart-post (~> 2)
|
2021-01-22 05:22:41 +08:00
|
|
|
faraday-net_http (1.0.1)
|
2021-12-16 05:20:38 +08:00
|
|
|
faraday-net_http_persistent (1.2.0)
|
|
|
|
faraday-patron (1.0.0)
|
|
|
|
faraday-rack (1.0.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
faraday-retry (1.0.3)
|
2021-12-16 05:20:38 +08:00
|
|
|
faraday_middleware (1.2.0)
|
Unlock `azure-storage-blob` version to use version 2.0
`azure-storage-blob` 2.0.0 has been released.
https://rubygems.org/gems/azure-storage-blob/versions/2.0.0
According to this commit and changelog, `azure-storage-blob` 1.1.0 did not support Ruby 2.6 and higher.
As of right now, Rails master branch should support Ruby 2.5.0, 2.6.0 and 2.7.0
then it should be appropriate to unlock `azure-storage-blob` version.
https://github.com/Azure/azure-storage-ruby/commit/252e3f06a5cf2e2583302bfefa95d8b25818a44f
This commit addresses this following error:
```ruby
% cd activestorage
% bundle exec rake test
Traceback (most recent call last):
14: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `<main>'
13: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `select'
12: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:17:in `block in <main>'
11: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
10: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
9: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:7:in `<top (required)>'
8: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:8:in `<class:AzureStorageServiceTest>'
7: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service.rb:51:in `configure'
6: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:8:in `build'
5: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:17:in `build'
4: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:30:in `resolve'
3: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
2: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
1: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/azure_storage_service.rb:3:in `<top (required)>'
/Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/rubygems_integration.rb:346:in `block (2 levels) in replace_gem': can't activate azure-storage-blob (~> 1.1), already activated azure-storage-blob-2.0.0. Make sure all dependencies are added to Gemfile. (Gem::LoadError)
11: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `<main>'
10: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `select'
9: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:17:in `block in <main>'
8: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
7: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
6: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:7:in `<top (required)>'
5: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:8:in `<class:AzureStorageServiceTest>'
4: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service.rb:51:in `configure'
3: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:8:in `build'
2: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:17:in `build'
1: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:29:in `resolve'
/Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:33:in `rescue in resolve': Missing service adapter for "AzureStorage" (RuntimeError)
rake aborted!
```
* Update Gemfile.lock to bump azure-storage-blob version
```
% bundle update --conservative faraday azure-storage-blob google-cloud-storage`
```
- How to find gem name to update by setting `gem "azure-storage-blob", "= 2.0.0"` temporarily
```ruby
% git diff
diff --git a/Gemfile b/Gemfile
index 5fdaceab2f..6be7dccf4b 100644
--- a/Gemfile
+++ b/Gemfile
@@ -84,7 +84,7 @@ end
group :storage do
gem "aws-sdk-s3", require: false
gem "google-cloud-storage", "~> 1.11", require: false
- gem "azure-storage-blob", require: false
+ gem "azure-storage-blob", "= 2.0.0", require: false # Use 2.0.0 temporarily to find which gems need bump
gem "image_processing", "~> 1.2"
end
% bundle install
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies.....
Bundler could not find compatible versions for gem "faraday":
In snapshot (Gemfile.lock):
faraday (= 0.17.1)
In Gemfile:
azure-storage-blob (= 2.0.0) was resolved to 2.0.0, which depends on
azure-storage-common (~> 2.0) was resolved to 2.0.1, which depends on
faraday (~> 1.0)
google-cloud-storage (~> 1.11) was resolved to 1.25.0, which depends on
googleauth (~> 0.9) was resolved to 0.10.0, which depends on
faraday (~> 0.12)
Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.
% git checkout -f Gemfile
% bundle update --conservative faraday azure-storage-blob google-cloud-storage
```
2020-03-16 18:38:22 +08:00
|
|
|
faraday (~> 1.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
ffi (1.16.3)
|
|
|
|
fugit (1.9.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
et-orbi (~> 1, >= 1.2.7)
|
2020-11-04 14:39:41 +08:00
|
|
|
raabro (~> 1.4)
|
2023-09-13 08:36:01 +08:00
|
|
|
globalid (1.2.1)
|
|
|
|
activesupport (>= 6.1)
|
2024-01-02 23:48:44 +08:00
|
|
|
google-apis-core (0.11.2)
|
2017-08-01 04:55:55 +08:00
|
|
|
addressable (~> 2.5, >= 2.5.1)
|
2021-12-16 05:20:38 +08:00
|
|
|
googleauth (>= 0.16.2, < 2.a)
|
|
|
|
httpclient (>= 2.8.1, < 3.a)
|
2019-10-10 12:48:16 +08:00
|
|
|
mini_mime (~> 1.0)
|
2017-08-01 04:55:55 +08:00
|
|
|
representable (~> 3.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
retriable (>= 2.0, < 4.a)
|
2020-09-21 13:19:59 +08:00
|
|
|
rexml
|
2021-04-14 02:18:28 +08:00
|
|
|
webrick
|
2024-01-02 23:48:44 +08:00
|
|
|
google-apis-iamcredentials_v1 (0.17.0)
|
|
|
|
google-apis-core (>= 0.11.0, < 2.a)
|
|
|
|
google-apis-storage_v1 (0.29.0)
|
|
|
|
google-apis-core (>= 0.11.0, < 2.a)
|
|
|
|
google-cloud-core (1.6.1)
|
|
|
|
google-cloud-env (>= 1.0, < 3.a)
|
Unlock `azure-storage-blob` version to use version 2.0
`azure-storage-blob` 2.0.0 has been released.
https://rubygems.org/gems/azure-storage-blob/versions/2.0.0
According to this commit and changelog, `azure-storage-blob` 1.1.0 did not support Ruby 2.6 and higher.
As of right now, Rails master branch should support Ruby 2.5.0, 2.6.0 and 2.7.0
then it should be appropriate to unlock `azure-storage-blob` version.
https://github.com/Azure/azure-storage-ruby/commit/252e3f06a5cf2e2583302bfefa95d8b25818a44f
This commit addresses this following error:
```ruby
% cd activestorage
% bundle exec rake test
Traceback (most recent call last):
14: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `<main>'
13: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `select'
12: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:17:in `block in <main>'
11: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
10: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
9: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:7:in `<top (required)>'
8: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:8:in `<class:AzureStorageServiceTest>'
7: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service.rb:51:in `configure'
6: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:8:in `build'
5: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:17:in `build'
4: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:30:in `resolve'
3: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
2: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
1: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/azure_storage_service.rb:3:in `<top (required)>'
/Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bundler-2.1.4/lib/bundler/rubygems_integration.rb:346:in `block (2 levels) in replace_gem': can't activate azure-storage-blob (~> 1.1), already activated azure-storage-blob-2.0.0. Make sure all dependencies are added to Gemfile. (Gem::LoadError)
11: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `<main>'
10: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `select'
9: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:17:in `block in <main>'
8: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
7: from /Users/yahonda/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/zeitwerk-2.3.0/lib/zeitwerk/kernel.rb:23:in `require'
6: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:7:in `<top (required)>'
5: from /Users/yahonda/src/github.com/rails/rails/activestorage/test/service/azure_storage_service_test.rb:8:in `<class:AzureStorageServiceTest>'
4: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service.rb:51:in `configure'
3: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:8:in `build'
2: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:17:in `build'
1: from /Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:29:in `resolve'
/Users/yahonda/src/github.com/rails/rails/activestorage/lib/active_storage/service/configurator.rb:33:in `rescue in resolve': Missing service adapter for "AzureStorage" (RuntimeError)
rake aborted!
```
* Update Gemfile.lock to bump azure-storage-blob version
```
% bundle update --conservative faraday azure-storage-blob google-cloud-storage`
```
- How to find gem name to update by setting `gem "azure-storage-blob", "= 2.0.0"` temporarily
```ruby
% git diff
diff --git a/Gemfile b/Gemfile
index 5fdaceab2f..6be7dccf4b 100644
--- a/Gemfile
+++ b/Gemfile
@@ -84,7 +84,7 @@ end
group :storage do
gem "aws-sdk-s3", require: false
gem "google-cloud-storage", "~> 1.11", require: false
- gem "azure-storage-blob", require: false
+ gem "azure-storage-blob", "= 2.0.0", require: false # Use 2.0.0 temporarily to find which gems need bump
gem "image_processing", "~> 1.2"
end
% bundle install
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies.....
Bundler could not find compatible versions for gem "faraday":
In snapshot (Gemfile.lock):
faraday (= 0.17.1)
In Gemfile:
azure-storage-blob (= 2.0.0) was resolved to 2.0.0, which depends on
azure-storage-common (~> 2.0) was resolved to 2.0.1, which depends on
faraday (~> 1.0)
google-cloud-storage (~> 1.11) was resolved to 1.25.0, which depends on
googleauth (~> 0.9) was resolved to 0.10.0, which depends on
faraday (~> 0.12)
Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.
% git checkout -f Gemfile
% bundle update --conservative faraday azure-storage-blob google-cloud-storage
```
2020-03-16 18:38:22 +08:00
|
|
|
google-cloud-errors (~> 1.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
google-cloud-env (2.1.0)
|
|
|
|
faraday (>= 1.0, < 3.a)
|
|
|
|
google-cloud-errors (1.3.1)
|
|
|
|
google-cloud-storage (1.45.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
addressable (~> 2.8)
|
2017-08-01 04:55:55 +08:00
|
|
|
digest-crc (~> 0.4)
|
2021-01-22 05:22:41 +08:00
|
|
|
google-apis-iamcredentials_v1 (~> 0.1)
|
2024-01-02 23:48:44 +08:00
|
|
|
google-apis-storage_v1 (~> 0.29.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
google-cloud-core (~> 1.6)
|
|
|
|
googleauth (>= 0.16.2, < 2.a)
|
2019-10-10 12:48:16 +08:00
|
|
|
mini_mime (~> 1.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
google-protobuf (3.25.1)
|
|
|
|
googleauth (1.9.1)
|
|
|
|
faraday (>= 1.0, < 3.a)
|
|
|
|
google-cloud-env (~> 2.1)
|
2017-11-29 12:08:33 +08:00
|
|
|
jwt (>= 1.4, < 3.0)
|
2017-08-01 04:55:55 +08:00
|
|
|
multi_json (~> 1.11)
|
2018-09-06 05:41:31 +08:00
|
|
|
os (>= 0.9, < 2.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
signet (>= 0.16, < 2.a)
|
2024-01-02 23:48:44 +08:00
|
|
|
hashdiff (1.1.0)
|
2023-09-13 08:36:01 +08:00
|
|
|
i18n (1.14.1)
|
2023-06-05 07:37:15 +08:00
|
|
|
concurrent-ruby (~> 1.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
image_processing (1.12.2)
|
2019-10-10 12:48:16 +08:00
|
|
|
mini_magick (>= 4.9.5, < 5)
|
2020-01-08 04:40:28 +08:00
|
|
|
ruby-vips (>= 2.0.17, < 3)
|
2023-10-27 22:46:16 +08:00
|
|
|
importmap-rails (1.2.3)
|
2021-12-16 05:20:38 +08:00
|
|
|
actionpack (>= 6.0.0)
|
2023-10-27 22:46:16 +08:00
|
|
|
activesupport (>= 6.0.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
railties (>= 6.0.0)
|
2024-04-24 04:21:41 +08:00
|
|
|
io-console (0.7.2)
|
|
|
|
irb (1.13.0)
|
|
|
|
rdoc (>= 4.0.0)
|
|
|
|
reline (>= 0.4.2)
|
Always run `rails app:update` in app update tests
Prior to this commit, several tests in `AppGeneratorTest` were testing
app update behavior without actually running `rails app:update`. This
meant the logic in `Rails::AppUpdater#generator_options` that detects
which frameworks and components are installed was not being tested.
Additionally, because `ENV["BUNDLE_GEMFILE"]` is set when tests are run
(by `require "bundler/setup"` in `tools/test.rb`), any tests which did
run `rails app:update` used the Rails repo Gemfile, instead of the
generated app Gemfile. The difference becomes obvious when running
`rails app:update` after generating an app without Sprockets (as in
`test_app_update_does_not_generate_manifest_config_when_propshaft_is_used`),
because `rails app:update` will load the Sprockets railtie (due to
`Bundler.require` using the Rails repo Gemfile), and then exit with a
`Sprockets::Railtie::ManifestNeededError`. However, if
`rails app:update` is run within a `quietly` block, such an error will
be swallowed.
This commit changes all such tests to run `rails app:update` via a
`run_app_update` helper that: (1) overrides the `BUNDLE_GEMFILE`
environment variable to point to the generated app Gemfile, (2) points
the `rails` gem in the generated app Gemfile to the Rails repo
(otherwise the `rails` gem version cannot be resolved), and (3) sets
`exception: true` so that the `system` call will raise an error if
`rails app:update` exits with an error code.
This commit also adds `jbuilder` and `web-console` to the Rails repo
Gemfile to ensure they are already installed when evaluating the
generated app Gemfile.
These changes do add a couple dozen seconds to the test suite run time,
but the thorough test coverage seems worth it.
2022-10-04 06:26:04 +08:00
|
|
|
jbuilder (2.11.5)
|
|
|
|
actionview (>= 5.0.0)
|
|
|
|
activesupport (>= 5.0.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
jmespath (1.6.2)
|
2024-01-02 23:48:44 +08:00
|
|
|
jsbundling-rails (1.2.1)
|
2021-10-09 23:03:05 +08:00
|
|
|
railties (>= 6.0.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
json (2.7.1)
|
|
|
|
jwt (2.7.1)
|
2024-05-15 02:48:55 +08:00
|
|
|
kamal (1.5.2)
|
|
|
|
activesupport (>= 7.0)
|
|
|
|
base64 (~> 0.2)
|
|
|
|
bcrypt_pbkdf (~> 1.0)
|
|
|
|
concurrent-ruby (~> 1.2)
|
|
|
|
dotenv (~> 2.8)
|
|
|
|
ed25519 (~> 1.2)
|
|
|
|
net-ssh (~> 7.0)
|
|
|
|
sshkit (~> 1.21)
|
|
|
|
thor (~> 1.2)
|
|
|
|
zeitwerk (~> 2.5)
|
2023-03-27 11:14:18 +08:00
|
|
|
kramdown (2.4.0)
|
|
|
|
rexml
|
|
|
|
kramdown-parser-gfm (1.1.0)
|
|
|
|
kramdown (~> 2.0)
|
2023-10-11 19:40:12 +08:00
|
|
|
language_server-protocol (3.17.0.3)
|
2023-09-14 03:21:19 +08:00
|
|
|
launchy (2.5.2)
|
|
|
|
addressable (~> 2.8)
|
2024-03-29 02:50:24 +08:00
|
|
|
libxml-ruby (5.0.3)
|
2023-01-12 06:58:06 +08:00
|
|
|
listen (3.8.0)
|
2020-11-10 23:52:20 +08:00
|
|
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
|
|
|
rb-inotify (~> 0.9, >= 0.9.10)
|
2024-01-02 23:48:44 +08:00
|
|
|
loofah (2.22.0)
|
2017-11-28 02:01:15 +08:00
|
|
|
crass (~> 1.0.2)
|
2023-05-25 00:47:52 +08:00
|
|
|
nokogiri (>= 1.12.0)
|
2023-09-13 08:36:01 +08:00
|
|
|
mail (2.8.1)
|
2017-11-01 12:44:55 +08:00
|
|
|
mini_mime (>= 0.1.1)
|
2022-12-06 04:07:15 +08:00
|
|
|
net-imap
|
|
|
|
net-pop
|
|
|
|
net-smtp
|
2024-03-01 13:42:22 +08:00
|
|
|
marcel (1.0.4)
|
2021-12-09 05:44:11 +08:00
|
|
|
matrix (0.4.2)
|
2023-03-27 11:14:18 +08:00
|
|
|
mdl (0.12.0)
|
|
|
|
kramdown (~> 2.3)
|
|
|
|
kramdown-parser-gfm (~> 1.1)
|
|
|
|
mixlib-cli (~> 2.1, >= 2.1.1)
|
|
|
|
mixlib-config (>= 2.2.1, < 4)
|
|
|
|
mixlib-shellout
|
2023-01-12 06:58:06 +08:00
|
|
|
mini_magick (4.12.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
mini_mime (1.1.5)
|
2024-04-18 10:14:56 +08:00
|
|
|
mini_portile2 (2.8.6)
|
2024-01-12 23:49:20 +08:00
|
|
|
minitest (5.21.1)
|
2024-01-02 23:48:44 +08:00
|
|
|
minitest-bisect (1.7.0)
|
2016-07-12 14:06:25 +08:00
|
|
|
minitest-server (~> 1.0)
|
2019-10-10 12:48:16 +08:00
|
|
|
path_expander (~> 1.1)
|
2021-08-26 16:39:36 +08:00
|
|
|
minitest-ci (3.4.0)
|
|
|
|
minitest (>= 5.0.6)
|
2021-06-09 07:27:47 +08:00
|
|
|
minitest-retry (0.2.2)
|
2018-10-11 06:33:09 +08:00
|
|
|
minitest (>= 5.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
minitest-server (1.0.7)
|
|
|
|
minitest (~> 5.16)
|
2023-03-27 11:14:18 +08:00
|
|
|
mixlib-cli (2.1.8)
|
|
|
|
mixlib-config (3.0.27)
|
|
|
|
tomlrb
|
|
|
|
mixlib-shellout (3.2.7)
|
|
|
|
chef-utils
|
2024-01-02 23:48:44 +08:00
|
|
|
mono_logger (1.1.2)
|
|
|
|
msgpack (1.7.2)
|
2020-09-21 13:19:59 +08:00
|
|
|
multi_json (1.15.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
multipart-post (2.3.0)
|
2024-05-15 02:48:55 +08:00
|
|
|
mutex_m (0.2.0)
|
2024-03-29 02:50:28 +08:00
|
|
|
mysql2 (0.5.6)
|
2024-01-02 23:48:44 +08:00
|
|
|
net-http-persistent (4.0.2)
|
2021-01-22 05:22:41 +08:00
|
|
|
connection_pool (~> 2.2)
|
2024-01-02 23:48:44 +08:00
|
|
|
net-imap (0.4.9)
|
2023-01-12 06:58:06 +08:00
|
|
|
date
|
2022-01-05 06:12:53 +08:00
|
|
|
net-protocol
|
2023-01-12 06:58:06 +08:00
|
|
|
net-pop (0.1.2)
|
2022-01-05 06:12:53 +08:00
|
|
|
net-protocol
|
2024-01-02 23:48:44 +08:00
|
|
|
net-protocol (0.2.2)
|
2022-01-05 06:12:53 +08:00
|
|
|
timeout
|
2024-05-15 02:48:55 +08:00
|
|
|
net-scp (4.0.0)
|
|
|
|
net-ssh (>= 2.6.5, < 8.0.0)
|
|
|
|
net-sftp (4.0.0)
|
|
|
|
net-ssh (>= 5.0.0, < 8.0.0)
|
2023-09-27 11:08:31 +08:00
|
|
|
net-smtp (0.4.0)
|
2022-01-05 06:12:53 +08:00
|
|
|
net-protocol
|
2024-05-15 02:48:55 +08:00
|
|
|
net-ssh (7.2.3)
|
2024-01-02 23:48:44 +08:00
|
|
|
nio4r (2.7.0)
|
|
|
|
nokogiri (1.16.0)
|
2023-05-25 00:47:52 +08:00
|
|
|
mini_portile2 (~> 2.8.2)
|
2021-06-18 04:26:38 +08:00
|
|
|
racc (~> 1.4)
|
2024-01-02 23:48:44 +08:00
|
|
|
nokogiri (1.16.0-x86_64-darwin)
|
2023-04-20 04:46:10 +08:00
|
|
|
racc (~> 1.4)
|
2024-01-02 23:48:44 +08:00
|
|
|
nokogiri (1.16.0-x86_64-linux)
|
2023-04-20 04:46:10 +08:00
|
|
|
racc (~> 1.4)
|
2021-12-16 05:20:38 +08:00
|
|
|
os (1.1.4)
|
2024-01-02 23:48:44 +08:00
|
|
|
parallel (1.24.0)
|
2024-05-13 12:37:15 +08:00
|
|
|
parser (3.3.1.0)
|
2020-09-06 09:07:04 +08:00
|
|
|
ast (~> 2.4.1)
|
2023-10-11 19:40:12 +08:00
|
|
|
racc
|
2023-01-12 06:58:06 +08:00
|
|
|
path_expander (1.1.1)
|
2024-01-02 23:48:44 +08:00
|
|
|
pg (1.5.4)
|
2023-05-13 14:48:04 +08:00
|
|
|
prettier_print (1.2.1)
|
2024-05-01 03:58:50 +08:00
|
|
|
prism (0.27.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
propshaft (0.8.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
actionpack (>= 7.0.0)
|
|
|
|
activesupport (>= 7.0.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
rack
|
2023-01-12 06:58:06 +08:00
|
|
|
railties (>= 7.0.0)
|
2023-12-20 08:03:51 +08:00
|
|
|
psych (5.1.2)
|
2023-01-12 06:58:06 +08:00
|
|
|
stringio
|
2024-01-02 23:48:44 +08:00
|
|
|
public_suffix (5.0.4)
|
|
|
|
puma (6.4.0)
|
2019-08-18 19:21:39 +08:00
|
|
|
nio4r (~> 2.0)
|
2022-05-18 13:04:19 +08:00
|
|
|
queue_classic (4.0.0)
|
|
|
|
pg (>= 1.1, < 2.0)
|
2020-11-04 14:39:41 +08:00
|
|
|
raabro (1.4.0)
|
2023-11-15 06:08:31 +08:00
|
|
|
racc (1.7.3)
|
2023-06-14 11:22:58 +08:00
|
|
|
rack (3.0.8)
|
2024-01-02 23:48:44 +08:00
|
|
|
rack-cache (1.15.0)
|
2015-02-19 00:30:25 +08:00
|
|
|
rack (>= 0.4)
|
2023-06-13 12:44:08 +08:00
|
|
|
rack-session (2.0.0)
|
|
|
|
rack (>= 3.0.0)
|
|
|
|
rack-test (2.1.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
rack (>= 1.3)
|
2023-06-13 12:44:08 +08:00
|
|
|
rackup (2.1.0)
|
|
|
|
rack (>= 3)
|
|
|
|
webrick (~> 1.8)
|
2023-07-07 03:33:44 +08:00
|
|
|
rails-dom-testing (2.2.0)
|
|
|
|
activesupport (>= 5.0.0)
|
|
|
|
minitest
|
2017-07-20 07:04:53 +08:00
|
|
|
nokogiri (>= 1.6)
|
2023-05-25 00:47:52 +08:00
|
|
|
rails-html-sanitizer (1.6.0)
|
|
|
|
loofah (~> 2.21)
|
|
|
|
nokogiri (~> 1.14)
|
2022-02-23 23:48:33 +08:00
|
|
|
rainbow (3.1.1)
|
2024-01-02 23:48:44 +08:00
|
|
|
rake (13.1.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
rb-fsevent (0.11.2)
|
2019-12-28 02:30:45 +08:00
|
|
|
rb-inotify (0.10.1)
|
2018-12-30 22:05:30 +08:00
|
|
|
ffi (~> 1.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
rbtree (0.4.6)
|
2015-04-09 17:20:53 +08:00
|
|
|
redcarpet (3.2.3)
|
2024-01-02 23:48:44 +08:00
|
|
|
redis (5.0.8)
|
|
|
|
redis-client (>= 0.17.0)
|
|
|
|
redis-client (0.19.1)
|
2022-09-07 04:23:50 +08:00
|
|
|
connection_pool
|
2024-01-02 23:48:44 +08:00
|
|
|
redis-namespace (1.11.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
redis (>= 4)
|
2024-01-02 23:48:44 +08:00
|
|
|
regexp_parser (2.8.3)
|
2024-04-24 04:21:41 +08:00
|
|
|
reline (0.5.4)
|
2021-09-08 23:35:41 +08:00
|
|
|
io-console (~> 0.5)
|
2023-01-12 06:58:06 +08:00
|
|
|
representable (3.2.0)
|
2017-08-01 04:55:55 +08:00
|
|
|
declarative (< 0.1.0)
|
2021-04-14 02:18:28 +08:00
|
|
|
trailblazer-option (>= 0.1.1, < 0.2.0)
|
2017-08-01 04:55:55 +08:00
|
|
|
uber (< 0.2.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
resque (2.6.0)
|
2017-02-10 14:31:41 +08:00
|
|
|
mono_logger (~> 1.0)
|
|
|
|
multi_json (~> 1.0)
|
2019-05-08 20:58:20 +08:00
|
|
|
redis-namespace (~> 1.6)
|
2017-02-10 14:31:41 +08:00
|
|
|
sinatra (>= 0.9.2)
|
2024-01-02 23:48:44 +08:00
|
|
|
resque-scheduler (4.10.2)
|
2017-12-14 06:49:08 +08:00
|
|
|
mono_logger (~> 1.0)
|
2019-05-08 20:58:20 +08:00
|
|
|
redis (>= 3.3)
|
2021-12-16 05:20:38 +08:00
|
|
|
resque (>= 1.27)
|
2023-01-12 06:58:06 +08:00
|
|
|
rufus-scheduler (~> 3.2, != 3.3)
|
2018-09-06 05:41:31 +08:00
|
|
|
retriable (3.1.2)
|
2023-10-11 19:40:12 +08:00
|
|
|
rexml (3.2.6)
|
2023-11-15 06:08:31 +08:00
|
|
|
rouge (4.2.0)
|
2024-05-13 12:37:15 +08:00
|
|
|
rubocop (1.63.5)
|
2022-11-14 14:58:38 +08:00
|
|
|
json (~> 2.3)
|
2023-10-11 19:40:12 +08:00
|
|
|
language_server-protocol (>= 3.17.0)
|
2017-05-24 14:20:00 +08:00
|
|
|
parallel (~> 1.10)
|
2024-05-13 12:37:15 +08:00
|
|
|
parser (>= 3.3.0.2)
|
2018-02-23 07:54:23 +08:00
|
|
|
rainbow (>= 2.2.2, < 4.0)
|
2021-01-22 05:22:41 +08:00
|
|
|
regexp_parser (>= 1.8, < 3.0)
|
2022-11-14 14:58:38 +08:00
|
|
|
rexml (>= 3.2.5, < 4.0)
|
2024-05-13 12:37:15 +08:00
|
|
|
rubocop-ast (>= 1.31.1, < 2.0)
|
2016-11-28 11:12:33 +08:00
|
|
|
ruby-progressbar (~> 1.7)
|
2023-01-12 06:58:06 +08:00
|
|
|
unicode-display_width (>= 2.4.0, < 3.0)
|
2024-05-13 12:37:15 +08:00
|
|
|
rubocop-ast (1.31.3)
|
|
|
|
parser (>= 3.3.1.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
rubocop-md (1.2.2)
|
2023-03-15 09:37:11 +08:00
|
|
|
rubocop (>= 1.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
rubocop-minitest (0.34.3)
|
2023-03-15 09:37:11 +08:00
|
|
|
rubocop (>= 1.39, < 2.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
rubocop-ast (>= 1.30.0, < 2.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
rubocop-packaging (0.5.2)
|
|
|
|
rubocop (>= 1.33, < 2.0)
|
2024-01-02 19:49:36 +08:00
|
|
|
rubocop-performance (1.20.1)
|
|
|
|
rubocop (>= 1.48.1, < 2.0)
|
|
|
|
rubocop-ast (>= 1.30.0, < 2.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
rubocop-rails (2.23.1)
|
2020-10-22 15:12:38 +08:00
|
|
|
activesupport (>= 4.2.0)
|
2019-10-10 12:48:16 +08:00
|
|
|
rack (>= 1.1)
|
2023-01-05 09:41:48 +08:00
|
|
|
rubocop (>= 1.33.0, < 2.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
rubocop-ast (>= 1.30.0, < 2.0)
|
2024-01-01 01:18:17 +08:00
|
|
|
rubocop-rails-omakase (1.0.0)
|
|
|
|
rubocop
|
|
|
|
rubocop-minitest
|
|
|
|
rubocop-performance
|
|
|
|
rubocop-rails
|
2023-03-15 09:37:11 +08:00
|
|
|
ruby-progressbar (1.13.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
ruby-vips (2.2.0)
|
2021-04-14 02:18:28 +08:00
|
|
|
ffi (~> 1.12)
|
2021-12-16 05:20:38 +08:00
|
|
|
ruby2_keywords (0.0.5)
|
2021-10-20 21:31:26 +08:00
|
|
|
rubyzip (2.3.2)
|
2024-01-02 23:48:44 +08:00
|
|
|
rufus-scheduler (3.9.1)
|
2019-05-08 20:58:20 +08:00
|
|
|
fugit (~> 1.1, >= 1.1.6)
|
2024-01-02 23:48:44 +08:00
|
|
|
sass-embedded (1.69.6)
|
|
|
|
google-protobuf (~> 3.25)
|
|
|
|
rake (>= 13.0.0)
|
|
|
|
sass-embedded (1.69.6-x86_64-darwin)
|
|
|
|
google-protobuf (~> 3.25)
|
|
|
|
sass-embedded (1.69.6-x86_64-linux-gnu)
|
|
|
|
google-protobuf (~> 3.25)
|
2024-04-26 18:28:42 +08:00
|
|
|
selenium-webdriver (4.20.1)
|
2024-04-26 07:48:30 +08:00
|
|
|
base64 (~> 0.2)
|
2021-10-20 21:31:26 +08:00
|
|
|
rexml (~> 3.2, >= 3.2.5)
|
2022-09-30 00:04:43 +08:00
|
|
|
rubyzip (>= 1.2.2, < 3.0)
|
|
|
|
websocket (~> 1.0)
|
2018-09-06 05:41:31 +08:00
|
|
|
serverengine (2.0.7)
|
2015-02-19 00:30:25 +08:00
|
|
|
sigdump (~> 0.2.2)
|
2024-01-02 23:48:44 +08:00
|
|
|
set (1.1.0)
|
|
|
|
sidekiq (7.2.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
concurrent-ruby (< 2)
|
|
|
|
connection_pool (>= 2.3.0)
|
|
|
|
rack (>= 2.2.4)
|
2024-01-02 23:48:44 +08:00
|
|
|
redis-client (>= 0.14.0)
|
|
|
|
sigdump (0.2.5)
|
|
|
|
signet (0.18.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
addressable (~> 2.8)
|
2023-01-12 06:58:06 +08:00
|
|
|
faraday (>= 0.17.5, < 3.a)
|
2017-11-29 12:08:33 +08:00
|
|
|
jwt (>= 1.5, < 3.0)
|
2017-08-01 04:55:55 +08:00
|
|
|
multi_json (~> 1.10)
|
2023-06-13 12:44:08 +08:00
|
|
|
sinatra (1.0)
|
|
|
|
rack (>= 1.0)
|
2019-01-30 06:39:43 +08:00
|
|
|
sneakers (2.11.0)
|
|
|
|
bunny (~> 2.12)
|
2018-05-31 01:49:55 +08:00
|
|
|
concurrent-ruby (~> 1.0)
|
2019-01-30 06:39:43 +08:00
|
|
|
rake
|
2018-05-31 01:49:55 +08:00
|
|
|
serverengine (~> 2.0.5)
|
2015-02-19 00:30:25 +08:00
|
|
|
thor
|
2021-06-09 07:27:47 +08:00
|
|
|
sorted_set (1.0.3)
|
|
|
|
rbtree
|
|
|
|
set (~> 1.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
sprockets (4.2.1)
|
2015-12-17 02:30:58 +08:00
|
|
|
concurrent-ruby (~> 1.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
rack (>= 2.2.4, < 4)
|
2021-12-16 05:20:38 +08:00
|
|
|
sprockets-rails (3.4.2)
|
|
|
|
actionpack (>= 5.2)
|
|
|
|
activesupport (>= 5.2)
|
2015-12-18 04:22:58 +08:00
|
|
|
sprockets (>= 3.0.0)
|
2024-04-18 10:14:56 +08:00
|
|
|
sqlite3 (2.0.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
mini_portile2 (~> 2.8.0)
|
2024-04-18 10:14:56 +08:00
|
|
|
sqlite3 (2.0.0-x86_64-darwin)
|
|
|
|
sqlite3 (2.0.0-x86_64-linux-gnu)
|
2024-05-15 02:48:55 +08:00
|
|
|
sshkit (1.22.2)
|
|
|
|
base64
|
|
|
|
mutex_m
|
|
|
|
net-scp (>= 1.1.2)
|
|
|
|
net-sftp (>= 2.1.2)
|
|
|
|
net-ssh (>= 2.8.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
stackprof (0.2.25)
|
|
|
|
stimulus-rails (1.3.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
railties (>= 6.0.0)
|
2023-12-05 23:31:01 +08:00
|
|
|
stringio (3.1.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
sucker_punch (3.2.0)
|
2018-09-06 05:41:31 +08:00
|
|
|
concurrent-ruby (~> 1.0)
|
2023-05-13 14:48:04 +08:00
|
|
|
syntax_tree (6.1.1)
|
|
|
|
prettier_print (>= 1.2.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
tailwindcss-rails (2.1.0)
|
2022-01-05 06:12:53 +08:00
|
|
|
railties (>= 6.0.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
tailwindcss-rails (2.1.0-x86_64-darwin)
|
2022-01-05 06:12:53 +08:00
|
|
|
railties (>= 6.0.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
tailwindcss-rails (2.1.0-x86_64-linux)
|
2021-12-16 05:20:38 +08:00
|
|
|
railties (>= 6.0.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
terser (1.1.20)
|
2021-06-28 12:48:56 +08:00
|
|
|
execjs (>= 0.3.0, < 3)
|
2023-10-27 22:46:16 +08:00
|
|
|
thor (1.3.0)
|
2023-11-08 09:58:48 +08:00
|
|
|
timeout (0.4.1)
|
2023-03-27 11:14:18 +08:00
|
|
|
tomlrb (2.0.3)
|
2021-12-16 05:20:38 +08:00
|
|
|
trailblazer-option (0.1.2)
|
2023-11-29 01:15:33 +08:00
|
|
|
trilogy (2.7.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
turbo-rails (1.5.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
actionpack (>= 6.0.0)
|
2023-01-12 06:58:06 +08:00
|
|
|
activejob (>= 6.0.0)
|
2021-12-16 05:20:38 +08:00
|
|
|
railties (>= 6.0.0)
|
2023-10-27 22:46:16 +08:00
|
|
|
tzinfo (2.0.6)
|
2017-12-29 20:47:10 +08:00
|
|
|
concurrent-ruby (~> 1.0)
|
2017-08-01 04:55:55 +08:00
|
|
|
uber (0.1.0)
|
2023-10-11 19:40:12 +08:00
|
|
|
unicode-display_width (2.5.0)
|
2024-01-01 02:19:16 +08:00
|
|
|
useragent (0.16.10)
|
2023-01-12 06:58:06 +08:00
|
|
|
w3c_validators (1.3.7)
|
2017-07-20 07:04:53 +08:00
|
|
|
json (>= 1.8)
|
2016-12-26 20:46:01 +08:00
|
|
|
nokogiri (~> 1.6)
|
2020-09-21 13:19:59 +08:00
|
|
|
rexml (~> 3.2)
|
2024-01-02 23:48:44 +08:00
|
|
|
web-console (4.2.1)
|
Always run `rails app:update` in app update tests
Prior to this commit, several tests in `AppGeneratorTest` were testing
app update behavior without actually running `rails app:update`. This
meant the logic in `Rails::AppUpdater#generator_options` that detects
which frameworks and components are installed was not being tested.
Additionally, because `ENV["BUNDLE_GEMFILE"]` is set when tests are run
(by `require "bundler/setup"` in `tools/test.rb`), any tests which did
run `rails app:update` used the Rails repo Gemfile, instead of the
generated app Gemfile. The difference becomes obvious when running
`rails app:update` after generating an app without Sprockets (as in
`test_app_update_does_not_generate_manifest_config_when_propshaft_is_used`),
because `rails app:update` will load the Sprockets railtie (due to
`Bundler.require` using the Rails repo Gemfile), and then exit with a
`Sprockets::Railtie::ManifestNeededError`. However, if
`rails app:update` is run within a `quietly` block, such an error will
be swallowed.
This commit changes all such tests to run `rails app:update` via a
`run_app_update` helper that: (1) overrides the `BUNDLE_GEMFILE`
environment variable to point to the generated app Gemfile, (2) points
the `rails` gem in the generated app Gemfile to the Rails repo
(otherwise the `rails` gem version cannot be resolved), and (3) sets
`exception: true` so that the `system` call will raise an error if
`rails app:update` exits with an error code.
This commit also adds `jbuilder` and `web-console` to the Rails repo
Gemfile to ensure they are already installed when evaluating the
generated app Gemfile.
These changes do add a couple dozen seconds to the test suite run time,
but the thorough test coverage seems worth it.
2022-10-04 06:26:04 +08:00
|
|
|
actionview (>= 6.0.0)
|
|
|
|
activemodel (>= 6.0.0)
|
|
|
|
bindex (>= 0.4.0)
|
|
|
|
railties (>= 6.0.0)
|
2024-01-02 23:48:44 +08:00
|
|
|
webmock (3.19.1)
|
2021-12-16 05:20:38 +08:00
|
|
|
addressable (>= 2.8.0)
|
2018-11-26 03:30:05 +08:00
|
|
|
crack (>= 0.3.2)
|
2019-10-10 12:48:16 +08:00
|
|
|
hashdiff (>= 0.4.0, < 2.0.0)
|
2023-06-13 12:44:08 +08:00
|
|
|
webrick (1.8.1)
|
2024-01-02 23:48:44 +08:00
|
|
|
websocket (1.2.10)
|
2023-09-13 08:36:01 +08:00
|
|
|
websocket-driver (0.7.6)
|
2021-02-22 17:48:02 +08:00
|
|
|
websocket-extensions (>= 0.1.0)
|
2020-11-04 14:39:41 +08:00
|
|
|
websocket-extensions (0.1.5)
|
2018-11-10 06:21:08 +08:00
|
|
|
xpath (3.2.0)
|
2018-04-06 19:55:34 +08:00
|
|
|
nokogiri (~> 1.8)
|
2023-09-27 11:59:11 +08:00
|
|
|
zeitwerk (2.6.12)
|
2015-02-19 00:30:25 +08:00
|
|
|
|
|
|
|
PLATFORMS
|
2021-06-17 05:17:34 +08:00
|
|
|
ruby
|
2022-01-05 06:12:53 +08:00
|
|
|
x86_64-darwin
|
2021-06-09 07:27:47 +08:00
|
|
|
x86_64-linux
|
2015-02-19 00:30:25 +08:00
|
|
|
|
|
|
|
DEPENDENCIES
|
2017-09-10 11:22:10 +08:00
|
|
|
aws-sdk-s3
|
2018-10-07 10:02:08 +08:00
|
|
|
aws-sdk-sns
|
2021-08-24 03:17:59 +08:00
|
|
|
azure-storage-blob (~> 2.0)
|
2015-02-19 00:30:25 +08:00
|
|
|
backburner
|
2016-03-11 03:28:02 +08:00
|
|
|
bcrypt (~> 3.1.11)
|
2019-04-26 15:25:28 +08:00
|
|
|
bootsnap (>= 1.4.4)
|
2024-01-02 02:00:10 +08:00
|
|
|
brakeman
|
2023-07-29 18:35:47 +08:00
|
|
|
capybara (>= 3.39)
|
2022-11-28 12:53:28 +08:00
|
|
|
cgi (>= 0.3.6)
|
2017-12-13 08:11:47 +08:00
|
|
|
connection_pool
|
2021-09-07 23:48:13 +08:00
|
|
|
cssbundling-rails
|
2021-10-15 01:48:04 +08:00
|
|
|
dalli (>= 3.0.1)
|
2023-03-01 13:51:29 +08:00
|
|
|
dartsass-rails
|
2021-09-20 21:18:30 +08:00
|
|
|
debug (>= 1.1.0)
|
2017-12-30 05:57:28 +08:00
|
|
|
delayed_job
|
2017-01-29 08:05:06 +08:00
|
|
|
delayed_job_active_record
|
2018-05-02 11:20:56 +08:00
|
|
|
google-cloud-storage (~> 1.11)
|
2024-01-29 20:28:28 +08:00
|
|
|
httpclient!
|
2018-04-06 07:48:29 +08:00
|
|
|
image_processing (~> 1.2)
|
2023-10-27 22:46:16 +08:00
|
|
|
importmap-rails (>= 1.2.3)
|
Always run `rails app:update` in app update tests
Prior to this commit, several tests in `AppGeneratorTest` were testing
app update behavior without actually running `rails app:update`. This
meant the logic in `Rails::AppUpdater#generator_options` that detects
which frameworks and components are installed was not being tested.
Additionally, because `ENV["BUNDLE_GEMFILE"]` is set when tests are run
(by `require "bundler/setup"` in `tools/test.rb`), any tests which did
run `rails app:update` used the Rails repo Gemfile, instead of the
generated app Gemfile. The difference becomes obvious when running
`rails app:update` after generating an app without Sprockets (as in
`test_app_update_does_not_generate_manifest_config_when_propshaft_is_used`),
because `rails app:update` will load the Sprockets railtie (due to
`Bundler.require` using the Rails repo Gemfile), and then exit with a
`Sprockets::Railtie::ManifestNeededError`. However, if
`rails app:update` is run within a `quietly` block, such an error will
be swallowed.
This commit changes all such tests to run `rails app:update` via a
`run_app_update` helper that: (1) overrides the `BUNDLE_GEMFILE`
environment variable to point to the generated app Gemfile, (2) points
the `rails` gem in the generated app Gemfile to the Rails repo
(otherwise the `rails` gem version cannot be resolved), and (3) sets
`exception: true` so that the `system` call will raise an error if
`rails app:update` exits with an error code.
This commit also adds `jbuilder` and `web-console` to the Rails repo
Gemfile to ensure they are already installed when evaluating the
generated app Gemfile.
These changes do add a couple dozen seconds to the test suite run time,
but the thorough test coverage seems worth it.
2022-10-04 06:26:04 +08:00
|
|
|
jbuilder
|
2021-09-06 22:44:44 +08:00
|
|
|
jsbundling-rails
|
2023-12-02 01:57:08 +08:00
|
|
|
json (>= 2.0.0, != 2.7.0)
|
2024-05-15 02:48:55 +08:00
|
|
|
kamal
|
2023-09-14 03:21:19 +08:00
|
|
|
launchy
|
2016-11-19 23:46:28 +08:00
|
|
|
libxml-ruby
|
2020-11-10 23:52:20 +08:00
|
|
|
listen (~> 3.3)
|
2024-01-02 23:48:44 +08:00
|
|
|
mdl (!= 0.13.0)
|
2024-02-08 19:41:04 +08:00
|
|
|
minitest (>= 5.15.0)
|
2016-07-12 14:06:25 +08:00
|
|
|
minitest-bisect
|
2021-08-26 16:39:36 +08:00
|
|
|
minitest-ci
|
2018-10-11 06:33:09 +08:00
|
|
|
minitest-retry
|
Add ActiveSupport::MessagePack
`ActiveSupport::MessagePack` is a serializer that integrates with the
`msgpack` gem to serialize a variety of Ruby objects. `AS::MessagePack`
supports several types beyond the base types that `msgpack` supports,
including `Time` and `Range`, as well as Active Support types such as
`AS::TimeWithZone` and `AS::HashWithIndifferentAccess`.
Compared to `JSON` and `Marshal`, `AS::MessagePack` can provide a
performance improvement and message size reduction. For example, when
used with `MessageVerifier`:
```ruby
# frozen_string_literal: true
require "benchmark/ips"
require "active_support/all"
require "active_support/message_pack"
marshal_verifier = ActiveSupport::MessageVerifier.new("secret", serializer: Marshal)
json_verifier = ActiveSupport::MessageVerifier.new("secret", serializer: JSON)
asjson_verifier = ActiveSupport::MessageVerifier.new("secret", serializer: ActiveSupport::JSON)
msgpack_verifier = ActiveSupport::MessageVerifier.new("secret", serializer: ActiveSupport::MessagePack)
ActiveSupport::Messages::Metadata.use_message_serializer_for_metadata = true
expiry = 1.year.from_now
data = { bool: true, num: 123456789, string: "x" * 50 }
Benchmark.ips do |x|
x.report("Marshal") do
marshal_verifier.verify(marshal_verifier.generate(data, expires_at: expiry))
end
x.report("JSON") do
json_verifier.verify(json_verifier.generate(data, expires_at: expiry))
end
x.report("AS::JSON") do
asjson_verifier.verify(asjson_verifier.generate(data, expires_at: expiry))
end
x.report("MessagePack") do
msgpack_verifier.verify(msgpack_verifier.generate(data, expires_at: expiry))
end
x.compare!
end
puts "Marshal size: #{marshal_verifier.generate(data, expires_at: expiry).bytesize}"
puts "JSON size: #{json_verifier.generate(data, expires_at: expiry).bytesize}"
puts "MessagePack size: #{msgpack_verifier.generate(data, expires_at: expiry).bytesize}"
```
```
Warming up --------------------------------------
Marshal 1.206k i/100ms
JSON 1.165k i/100ms
AS::JSON 790.000 i/100ms
MessagePack 1.798k i/100ms
Calculating -------------------------------------
Marshal 11.748k (± 1.3%) i/s - 59.094k in 5.031071s
JSON 11.498k (± 1.4%) i/s - 58.250k in 5.066957s
AS::JSON 7.867k (± 2.4%) i/s - 39.500k in 5.024055s
MessagePack 17.865k (± 0.8%) i/s - 89.900k in 5.032592s
Comparison:
MessagePack: 17864.9 i/s
Marshal: 11747.8 i/s - 1.52x (± 0.00) slower
JSON: 11498.4 i/s - 1.55x (± 0.00) slower
AS::JSON: 7866.9 i/s - 2.27x (± 0.00) slower
Marshal size: 254
JSON size: 234
MessagePack size: 194
```
Additionally, `ActiveSupport::MessagePack::CacheSerializer` is a
serializer that is suitable for use as an `ActiveSupport::Cache` coder.
`AS::MessagePack::CacheSerializer` can serialize `ActiveRecord::Base`
instances, including loaded associations. Like `AS::MessagePack`, it
provides a performance improvement and payload size reduction:
```ruby
# frozen_string_literal: true
require "benchmark/ips"
require "active_support/message_pack"
ActiveRecord::Base.establish_connection(adapter: "sqlite3", database: ":memory:")
ActiveRecord::Schema.define do
create_table :posts, force: true do |t|
t.string :body
t.timestamps
end
create_table :comments, force: true do |t|
t.integer :post_id
t.string :body
t.timestamps
end
end
class Post < ActiveRecord::Base
has_many :comments
end
class Comment < ActiveRecord::Base
belongs_to :post
end
post = Post.create!(body: "x" * 100)
2.times { post.comments.create!(body: "x" * 100) }
post.comments.load
cache_entry = ActiveSupport::Cache::Entry.new(post)
Rails70Coder = ActiveSupport::Cache::Coders::Rails70Coder
CacheSerializer = ActiveSupport::MessagePack::CacheSerializer
Benchmark.ips do |x|
x.report("Rails70Coder") do
Rails70Coder.load(Rails70Coder.dump(cache_entry))
end
x.report("CacheSerializer") do
CacheSerializer.load(CacheSerializer.dump(cache_entry))
end
x.compare!
end
puts "Rails70Coder size: #{Rails70Coder.dump(cache_entry).bytesize}"
puts "CacheSerializer size: #{CacheSerializer.dump(cache_entry).bytesize}"
```
```
Warming up --------------------------------------
Rails70Coder 329.000 i/100ms
CacheSerializer 492.000 i/100ms
Calculating -------------------------------------
Rails70Coder 3.285k (± 1.7%) i/s - 16.450k in 5.008447s
CacheSerializer 4.895k (± 2.4%) i/s - 24.600k in 5.028803s
Comparison:
CacheSerializer: 4894.7 i/s
Rails70Coder: 3285.4 i/s - 1.49x slower
Rails70Coder size: 808
CacheSerializer size: 593
```
Co-authored-by: Jean Boussier <jean.boussier@gmail.com>
2023-03-23 05:37:46 +08:00
|
|
|
msgpack (>= 1.7.0)
|
2022-05-04 19:00:35 +08:00
|
|
|
mysql2 (~> 0.5)
|
2021-01-05 20:52:07 +08:00
|
|
|
nokogiri (>= 1.8.1, != 1.11.0)
|
2022-01-25 19:31:36 +08:00
|
|
|
pg (~> 1.3)
|
2024-01-25 07:39:59 +08:00
|
|
|
prism
|
2021-10-09 23:03:05 +08:00
|
|
|
propshaft (>= 0.1.7)
|
2022-09-22 03:46:43 +08:00
|
|
|
puma (>= 5.0.3)
|
2022-05-18 13:04:19 +08:00
|
|
|
queue_classic (>= 4.0.0)
|
2015-02-19 00:30:25 +08:00
|
|
|
racc (>= 1.4.6)
|
2023-06-13 12:44:08 +08:00
|
|
|
rack (~> 3.0)
|
2015-02-19 00:30:25 +08:00
|
|
|
rack-cache (~> 1.2)
|
|
|
|
rails!
|
2022-12-15 15:14:22 +08:00
|
|
|
rake (>= 13)
|
2024-05-23 02:57:08 +08:00
|
|
|
rdoc!
|
2015-04-09 17:20:53 +08:00
|
|
|
redcarpet (~> 3.2.3)
|
2022-09-07 04:23:50 +08:00
|
|
|
redis (>= 4.0.1)
|
2021-02-22 17:48:02 +08:00
|
|
|
redis-namespace
|
2017-02-10 14:31:41 +08:00
|
|
|
resque
|
2017-12-14 06:49:08 +08:00
|
|
|
resque-scheduler
|
2020-09-25 06:41:04 +08:00
|
|
|
rexml
|
2020-07-04 16:59:08 +08:00
|
|
|
rouge
|
2022-02-23 23:48:33 +08:00
|
|
|
rubocop (>= 1.25.1)
|
2023-03-15 09:37:11 +08:00
|
|
|
rubocop-md
|
2021-06-24 18:46:21 +08:00
|
|
|
rubocop-minitest
|
2020-09-07 03:46:11 +08:00
|
|
|
rubocop-packaging
|
2019-04-16 16:05:50 +08:00
|
|
|
rubocop-performance
|
2019-06-06 13:38:19 +08:00
|
|
|
rubocop-rails
|
2024-01-01 01:18:17 +08:00
|
|
|
rubocop-rails-omakase
|
2022-07-06 14:59:06 +08:00
|
|
|
rubyzip (~> 2.0)
|
2023-08-28 23:29:58 +08:00
|
|
|
sdoc!
|
2024-04-26 18:28:42 +08:00
|
|
|
selenium-webdriver (>= 4.20.0)
|
2017-10-09 19:49:55 +08:00
|
|
|
sidekiq
|
2015-04-26 15:44:18 +08:00
|
|
|
sneakers
|
2021-10-09 23:03:05 +08:00
|
|
|
sprockets-rails (>= 2.0.0)
|
2024-04-18 10:14:56 +08:00
|
|
|
sqlite3 (>= 1.6.6)
|
2015-02-19 00:30:25 +08:00
|
|
|
stackprof
|
2021-08-26 16:39:36 +08:00
|
|
|
stimulus-rails
|
2016-01-28 00:29:18 +08:00
|
|
|
sucker_punch
|
2023-05-13 14:48:04 +08:00
|
|
|
syntax_tree (= 6.1.1)
|
2021-09-07 23:48:13 +08:00
|
|
|
tailwindcss-rails
|
2021-06-28 12:48:56 +08:00
|
|
|
terser (>= 1.1.4)
|
2023-11-29 01:15:33 +08:00
|
|
|
trilogy (>= 2.7.0)
|
2021-08-26 16:39:36 +08:00
|
|
|
turbo-rails
|
2015-09-12 22:04:31 +08:00
|
|
|
tzinfo-data
|
2024-01-01 02:19:16 +08:00
|
|
|
useragent
|
2020-09-21 13:19:59 +08:00
|
|
|
w3c_validators (~> 1.3.6)
|
2016-04-22 00:54:54 +08:00
|
|
|
wdm (>= 0.1.0)
|
Always run `rails app:update` in app update tests
Prior to this commit, several tests in `AppGeneratorTest` were testing
app update behavior without actually running `rails app:update`. This
meant the logic in `Rails::AppUpdater#generator_options` that detects
which frameworks and components are installed was not being tested.
Additionally, because `ENV["BUNDLE_GEMFILE"]` is set when tests are run
(by `require "bundler/setup"` in `tools/test.rb`), any tests which did
run `rails app:update` used the Rails repo Gemfile, instead of the
generated app Gemfile. The difference becomes obvious when running
`rails app:update` after generating an app without Sprockets (as in
`test_app_update_does_not_generate_manifest_config_when_propshaft_is_used`),
because `rails app:update` will load the Sprockets railtie (due to
`Bundler.require` using the Rails repo Gemfile), and then exit with a
`Sprockets::Railtie::ManifestNeededError`. However, if
`rails app:update` is run within a `quietly` block, such an error will
be swallowed.
This commit changes all such tests to run `rails app:update` via a
`run_app_update` helper that: (1) overrides the `BUNDLE_GEMFILE`
environment variable to point to the generated app Gemfile, (2) points
the `rails` gem in the generated app Gemfile to the Rails repo
(otherwise the `rails` gem version cannot be resolved), and (3) sets
`exception: true` so that the `system` call will raise an error if
`rails app:update` exits with an error code.
This commit also adds `jbuilder` and `web-console` to the Rails repo
Gemfile to ensure they are already installed when evaluating the
generated app Gemfile.
These changes do add a couple dozen seconds to the test suite run time,
but the thorough test coverage seems worth it.
2022-10-04 06:26:04 +08:00
|
|
|
web-console
|
2018-11-26 03:30:05 +08:00
|
|
|
webmock
|
2020-12-13 15:34:39 +08:00
|
|
|
webrick
|
2016-10-06 09:11:18 +08:00
|
|
|
websocket-client-simple!
|
2015-05-29 13:40:29 +08:00
|
|
|
|
|
|
|
BUNDLED WITH
|
2024-01-10 06:58:10 +08:00
|
|
|
2.5.4
|