Commit Graph

822 Commits

Author SHA1 Message Date
fatkodima e24d6ecbfd Update rubocop-performance gem and enable Performance/DeletePrefix and Performance/DeleteSuffix cops 2020-05-24 12:51:35 +03:00
Ricardo Trindade b7e3a13cbe
Updates to nokogiri 1.10.9 2020-05-20 19:30:53 +01:00
Xavier Noria cf71309684 Depend on Zeitwerk 2.3
Let's bump Zeitwerk in preparation for Rails 6.1.

With Zeitwerk 2.3, applications can enable reloading and eager loading
at the same time. As of this writing, Rails does not implement that
logic, but if we do we know the dependency is in place to support it.

Zeitwerk minor releases are backwards compatible, should be a seamlessly
upgrade.
2020-05-02 11:53:30 +02:00
Ryuta Kamizono 62bfa50ff2 Lock benchmark-ips version < 2.8
Looks like "File does not exist: benchmark/ips/stats/stats_metric" is
caused by benchmark-ips 2.8.0.

https://buildkite.com/rails/rails/builds/68586#d77847d6-b3f5-4fd9-af9e-45f465c9d801/940-965
https://buildkite.com/rails/rails/builds/68586#e2037c59-a695-41ff-9040-c8ee74fa7c16/940-965
2020-05-02 06:36:07 +09:00
Ryuta Kamizono 592358e182 Update pg gem required version to 1.1
This is required for #39063 to use `PG::TextDecoder::Numeric`.

Ref https://github.com/ged/ruby-pg/pull/25.

The pg gem 1.1.0 was released at August 24, 2018, so I think it is good
timing to bump the required version for improving and cleaning up the
code base.

https://rubygems.org/gems/pg/versions
2020-04-27 16:27:40 +09:00
Jonathan Hefner d104f43c31 Update Gemfile.lock minimum Rack version to 2.0.9
Follow-up to #38991.
2020-04-21 01:06:53 -05:00
Tejas Bubane cf1abb775e
Bump rubocop to 0.82 (#38980)
* Bump rubocop to 0.82

The `Layout/Tab` cop has been renamed to `Layout/IndentationStyle`
ref: https://github.com/rubocop-hq/rubocop/releases/tag/v0.82.0

No other code changes required.

* Bump rubocop-rails to 2.5.2

No code-changes required.

[Tejas Bubane + Rafael Mendonça França]
2020-04-17 14:24:33 -04:00
Ryuta Kamizono 09ff877610 Update tzinfo to avoid taint warnings
https://github.com/tzinfo/tzinfo/pull/113
2020-04-09 00:54:48 +09:00
Ricardo Trindade ae3143cbfc
Updates pg gem version 2020-03-30 11:05:56 +01:00
Kasper Timm Hansen bf34c808f9
Merge branch 'tzinfo2' 2020-03-28 20:53:24 +01:00
Phil Ross e9425abe33
Update to TZInfo v2.0.0
Co-authored-by: Jared Beck <jared@jaredbeck.com>
Co-authored-by: Jonathan Hefner <jonathan@hefner.pro>
2020-03-28 20:42:43 +01:00
Carlos Antonio da Silva 104aaf5b3f Test with and generate new apps with webpacker 5.0 2020-03-22 16:39:01 -03:00
Yasuo Honda dad4026f94 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.

252e3f06a5

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-17 07:49:57 +09:00
Robin Dupret e5ed5f37d4 Use latest version of SDoc
Cross-refs zzak/sdoc#138.

[John Hawthorn]
2020-03-14 19:32:02 +01:00
Ricardo Trindade 88fe76e693 bumping rubocop to 0.80 2020-02-20 15:08:20 +00:00
Ryuta Kamizono 774514659b Fix "instance variable @same_site not initialized" warnings
Ref https://github.com/rack/rack/pull/1587.
2020-02-11 08:47:15 +09:00
Kasper Timm Hansen 5bd29afeb4
Skip cookie comma separation test
Rack updated the RFC they're adhering to when parsing cookies, now no
longer including commas.

There's still an open question as mentioned in:
https://github.com/rails/rails/issues/38420

However, the resilience test is no longer as well needed as it once was
and we can move forward separately. If not, this is easily revertible.
2020-02-10 01:48:47 +01:00
Ryuta Kamizono 0399be7076 rexml has been bundled gems in Ruby 2.8 (3.0)
https://bugs.ruby-lang.org/issues/16485
https://github.com/ruby/ruby/pull/2832
2020-01-14 09:35:37 +09:00
Ryuta Kamizono 4628518382 rack 2.1.1 has released
https://github.com/rack/rack/compare/2.1.0...2.1.1
2020-01-12 19:54:25 +09:00
Ryuta Kamizono 2bf1c17c20 Fix CI failure due to renamed `#exception=` to `#error=` in minitest 5.14.0
5802aa0828
https://github.com/seattlerb/minitest/pull/809#discussion_r332399750

To support both 5.13.0 and 5.14.0, use `#initialize` instead.
2020-01-12 19:16:08 +09:00
Ryuta Kamizono ee0d2158c9 Update image_processing to avoid Ruby 2.7 warnings
https://github.com/janko/image_processing/pull/63
2020-01-12 15:18:59 +09:00
Ryuta Kamizono a6a4222384 rack 2.1.0 changed expires date format from rfc2822 to httpdate
See https://github.com/rack/rack/pull/1144.
2020-01-11 15:09:50 +09:00
Ricardo Trindade 3f7c50151f Bump image_processing gem version since it fixes ruby 2.7 warnings 2020-01-07 20:40:28 +00:00
Rafael Mendonça França 470598fbef
Downgrade parser to work correctly with Ruby 2.5 2019-12-27 15:49:20 -03:00
Rafael Mendonça França f64f0a3471
Fix test with new capybara 2019-12-27 15:30:45 -03:00
Rafael Mendonça França 1752a01d65
Use bundler version that is default on Ruby 2.7 2019-12-27 11:37:40 -03:00
Yasuo Honda 5f87e50a7e Use pg 1.2.0 to support Ruby 2.7
This pull request addresses 3 failures which expect no warnings. If
these tests executed with Ruby 2.7, all of them failed due to warnings
for tainted objects.

* How to create this commit:

```
% bundle update pg --conservative
```

* Background for this change

pg gem 1.2.0 https://rubygems.org/gems/pg/versions/1.2.0 has been released including https://github.com/ged/ruby-pg/pull/307
to support Ruby 2.7, showing warnings for tainted objects. Refer https://bugs.ruby-lang.org/issues/16131

* Steps to reproduce:

```
% cd activerecord
% ruby -v
ruby 2.7.0dev (2019-12-25T06:38:55Z master 75dca097b8) [x86_64-darwin19]
% bundle update --bundler

% ARCONN=postgresql bundle exec ruby -w -Itest test/cases/adapters/postgresql/referential_integrity_test.rb -n test_does_not_print_warning_if_no_invalid_foreign_key_exception_was_raised
% ARCONN=postgresql bundle exec ruby -w -Itest test/cases/adapters/postgresql/enum_test.rb -n test_no_oid_warning
% ARCONN=postgresql bundle exec ruby -w -Itest test/cases/adapters/postgresql/postgresql_adapter_test.rb -n test_only_warn_on_first_encounter_of_unrecognized_oid
```

* Actual results:

```
% ARCONN=postgresql bundle exec ruby -w -Itest test/cases/adapters/postgresql/referential_integrity_test.rb -n test_does_not_print_warning_if_no_invalid_foreign_key_exception_was_raised

Using postgresql
/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:919: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.
... snip ...
/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:259: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.
F

Failure:
PostgreSQLReferentialIntegrityTest#test_does_not_print_warning_if_no_invalid_foreign_key_exception_was_raised [test/cases/adapters/postgresql/referential_integrity_test.rb:73]:
expected no warnings but got:
/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:24: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.
... snip ...
/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:24: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.
/Users/yahonda/src/github.com/yahonda/rails/activesupport/lib/active_support/core_ext/object/try.rb:15: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.

rails test test/cases/adapters/postgresql/referential_integrity_test.rb:62

Finished in 0.052862s, 18.9172 runs/s, 56.7515 assertions/s.
1 runs, 3 assertions, 1 failures, 0 errors, 0 skips
%
```

```
% ARCONN=postgresql bundle exec ruby -w -Itest test/cases/adapters/postgresql/enum_test.rb -n test_no_oid_warning
Using postgresql
/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:919: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.
... snip ...
/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:259: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.
F

Failure:
PostgresqlEnumTest#test_no_oid_warning [test/cases/adapters/postgresql/enum_test.rb:76]:
Expected "/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:24: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:24: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb💯 warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb💯 warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:106: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:24: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:24: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:24: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:24: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:24: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n" to be blank?.

rails test test/cases/adapters/postgresql/enum_test.rb:72

Finished in 0.059806s, 16.7207 runs/s, 16.7207 assertions/s.
1 runs, 1 assertions, 1 failures, 0 errors, 0 skips
%
```

```
% ARCONN=postgresql bundle exec ruby -w -Itest test/cases/adapters/postgresql/postgresql_adapter_test.rb -n test_only_warn_on_first_encounter_of_unrecognized_oid
Using postgresql
/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:919: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.
... snip ...
/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:259: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.
F

Failure:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapterTest#test_only_warn_on_first_encounter_of_unrecognized_oid [test/cases/adapters/postgresql/postgresql_adapter_test.rb:372]:
Expected /\Aunknown OID \d+: failed to recognize type of 'regclass'\. It will be treated as String\.\n\z/ to match "/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb💯 warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb:20: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\nunknown OID 2205: failed to recognize type of 'regclass'. It will be treated as String.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:106: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb💯 warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:106: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb💯 warning: rb_tainted_str_new_cstr is deprecated and will be removed in Ruby 3.2.\n/Users/yahonda/src/github.com/yahonda/rails/activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb:106: warning: rb_tainted_str_new is deprecated and will be removed in Ruby 3.2.\n".

rails test test/cases/adapters/postgresql/postgresql_adapter_test.rb:363

Finished in 0.037451s, 26.7016 runs/s, 53.4031 assertions/s.
1 runs, 2 assertions, 1 failures, 0 errors, 0 skips
%
```
2019-12-25 16:15:56 +09:00
Ryuta Kamizono fbe335cfe0 Update tzinfo to avoid Ruby 2.7 warnings
https://github.com/tzinfo/tzinfo/releases/tag/v1.2.6
2019-12-25 02:34:31 +09:00
Jean Boussier 137a78787e Update sqlite3 to avoid Ruby 2.7 warnings 2019-12-19 10:27:02 +01:00
Rafael Mendonça França 92ec9f270d
Fix possible information leak / session hijacking vulnerability.
The `ActionDispatch::Session::MemcacheStore` is still vulnerable
given it requires the gem dalli to be updated as well.

CVE-2019-16782
2019-12-18 17:01:09 -03:00
Jonathan Hefner fe9abe4436 Leverage new :env option for Thor::Actions#run
Follow-up to #34980.

Also, refactor tests to be less brittle.
2019-12-15 13:18:06 -06:00
utilum 858e429bca Update mysql2, json, to fix ruby 2.7 warnings (#37967)
* Update mysql2 to the latest version

Fixes keyword arguments warning:
brianmario/mysql2/pull/1084

Fixes taint mechanism deprecation warning:
brianmario/mysql2@785969fbce

* Update json to the latest version

Fixes warning from trying to access an uninitialized ivar, and
keyword arguments warning:

flori/json/commit/de14dea34074558dc671d7edc71513f0216ce21d
flori/json/commit/19da336333e63dc9dde7baea47b179e162b7568e
2019-12-14 12:56:48 +09:00
Ryuta Kamizono 2821e8d02a
Merge pull request #37896 from tgxworld/upgrade_listen
Upgrade listen to 3.2.1 for darwin fixes
2019-12-06 09:49:54 +09:00
Alan Tan c9430dba39 Upgrade listen to 3.2.1 for darwin fixes
Pulls in a fix where the darwin adapter no longers create a `fsevent_watch` process
for each directory that Listen has been asked to watch.
2019-12-06 08:21:24 +08:00
Jean Boussier 54878cd44b Distinguish missing controller exceptions from unrelated NameError
Fix: https://github.com/rails/rails/issues/37650

The classic autoloader used to totally unregister any constant that
failed midway. Which mean `"SomeConst".constantize` was idempotent.

However Zeitwerk rely on normal `Kernel#require` behavior, which mean
that if an exception is raised during a class/module definition,
it will be left incompletely defined. For instance:

```ruby
class FooController
  ::DoesNotExist

  def index
  end
end
```

Will leave `FooController` defined, but without its `index` method.

Because of this, when silencing a NameError, it's important
to make sure the missing constant is really the one we were trying
to load.
2019-12-04 16:11:54 +01:00
Yasuo Honda 78c209a693 Bump RuboCop version to 0.77
https://github.com/rubocop-hq/rubocop/releases/tag/v0.77.0

* Update cop names to changed as follows:

```
$ bundle exec rubocop
Error: The `Layout/IndentFirstArgument` cop has been renamed to `Layout/FirstArgumentIndentation`.
(obsolete configuration found in .rubocop.yml, please update it)
The `Layout/TrailingBlankLines` cop has been renamed to `Layout/TrailingEmptyLines`.
(obsolete configuration found in .rubocop.yml, please update it)
The `Lint/StringConversionInInterpolation` cop has been renamed to `Lint/RedundantStringCoercion`.
(obsolete configuration found in .rubocop.yml, please update it)
$
```

* Auto correct these offenses:

```
$ bundle exec rubocop -a
... snip ...
Offenses:

activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb:104:11: C: [Corrected] Style/RedundantReturn: Redundant return detected.
          return true
          ^^^^^^
activerecord/lib/active_record/reflection.rb:622:15: C: [Corrected] Style/RedundantReturn: Redundant return detected.
              return inverse_name
              ^^^^^^
activerecord/lib/active_record/table_metadata.rb:48:9: C: [Corrected] Style/RedundantReturn: Redundant return detected.
        return self
        ^^^^^^

2812 files inspected, 3 offenses detected, 3 offenses corrected
$
```
2019-11-27 23:58:49 +00:00
Benoit Daloze cbc5fbc008 Update to listen 3.2
* https://github.com/guard/listen/releases/tag/v3.2.0
* https://github.com/guard/listen/issues/465
* `listen` removed the unmaintained `ruby_dep` dependency, which
  incorrectly shows warnings when running on TruffleRuby.
2019-11-24 15:19:54 +01:00
Diego Plentz 9731bcbee7 Add I18n to eager_load_namespaces 2019-11-21 14:59:22 -05:00
Ryuta Kamizono ad767034c9 Address all possible `Performance/StartWith` / `Performance/EndWith` violations
rubocop-performance v1.5.1 includes bug fixes for that cops.

https://github.com/rubocop-hq/rubocop-performance/releases/tag/v1.5.1
2019-11-14 03:20:29 +09:00
Yasuo Honda ce9a220fdc Enabled GitHub Actions to run the latest RuboCop 0.76.0
Updated the default Ruby workflow:

* Trigger this action for pull request and push
* Install requried OS packages for Active Record connection adapters
* Removing `gem install bundler` because Ruby 2.6 already installs it
* Run RuboCop in parallel by `bundle exec rubocop --parallel`
* Rename `ruby.yml` to `rubocop.yml` to represent the workflow

Bump RuboCop to 0.76.0 and rename `Style/UnneededPercentQ` to `Style/RedundantPercentQ`

```ruby
$ bundle exec rubocop
Error: The `Style/UnneededPercentQ` cop has been renamed to `Style/RedundantPercentQ`.
(obsolete configuration found in .rubocop.yml
```

Removed `.codeclimate.yml`
2019-10-30 23:21:09 +00:00
utilum 1cc172a5b0 Update multi_json to the latest version
Avoid `warning: tried to create a Proc object without giving a block`
in Ruby head.

Fixed in intridea/multi_json@26a94ab8c7 .
2019-10-15 10:22:20 +02:00
John Hawthorn fe852341ec Bundle update 2019-10-09 21:48:16 -07:00
Xavier Noria 245f255318 bump Zeitwerk to 2.2 2019-10-09 21:30:48 +02:00
utilum 26a4e28588 Update sassc to the latest version
```
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/ffi-1.11.1/lib/ffi/library.rb:275: warning: method redefined; discarding old _context_get_included_files
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/ffi-1.11.1/lib/ffi/library.rb:275: warning: method redefined; discarding old list_get_length
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/ffi-1.11.1/lib/ffi/library.rb:275: warning: method redefined; discarding old list_get_value
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/ffi-1.11.1/lib/ffi/library.rb:275: warning: method redefined; discarding old _make_data_context
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/ffi-1.11.1/lib/ffi/library.rb:275: warning: method redefined; discarding old version
```

Were fixed in sassc 2.2.1.
2019-10-08 12:13:38 +02:00
utilum 08a92a2afb Update json to the latest version
```
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/json-2.1.0/lib/json/common.rb:156: warning: The last argument is nil, treating as empty keywords
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/json-2.1.0/lib/json/common.rb:156: warning: The last argument is used as the keyword parameter
```

Was fixed in 2.2.0.
2019-10-08 12:09:02 +02:00
utilum 305fa94feb Update i18n to the latest version
```
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/i18n-1.6.0/lib/i18n/backend/base.rb:146: warning: The last argument is used as the keyword parameter
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/i18n-1.6.0/lib/i18n/backend/base.rb:84: warning: The last argument is used as the keyword parameter
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/i18n-1.6.0/lib/i18n.rb:179: warning: for `t' defined here
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/i18n-1.6.0/lib/i18n.rb:179: warning: for `translate' defined here
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/i18n-1.6.0/lib/i18n.rb:205: warning: The last argument is used as the keyword parameter
```

Was fixed by ruby-i18n/i18n@2920107fbf .
2019-10-08 12:09:02 +02:00
Ryuta Kamizono 6158b83d2a Address to the warning "DEPRECATED: global use of assertion methods"
This addresses to the warning "DEPRECATED: global use of assertion
methods" which is introduced in minitest v5.12.0.

e6bc448573

https://buildkite.com/rails/rails/builds/64121#880aecf2-849f-4603-95f1-228784c7d3f4/1003-1010
2019-10-04 17:32:31 +09:00
Carlos Antonio da Silva c3103383d3 Update Gemfile.lock with newly added `activesupport` dependencies
Reference: 3b23c64497
2019-10-01 23:24:51 -03:00
Ryuta Kamizono 4674d77764 Required mysql2 gem 0.5.0
This follows up #36692, `Mysql2::Error::TimeoutError` is introduced from
mysql2 gem 0.5.0. https://github.com/brianmario/mysql2/pull/911
2019-09-13 11:15:44 +09:00
Eugene Kenny 5545f6a771 Fix Active Job Sidekiq integration tests
The `Sidekiq::Logging` module was removed in Sidekiq 6.0 in favour of
`Sidekiq.logger=`.

https://github.com/mperham/sidekiq/wiki/Logging#api-changes

> The old Sidekiq::Logging class was removed in Sidekiq 6.0. You should
> not be accessing any Sidekiq internal classes to use the logger. Use
> `logger` directly in your Worker or use `Sidekiq.logger` elsewhere.
2019-09-01 23:31:21 +02:00
utilum e83ec20f52 Update puma to the latest version
Currently:
`lib/ruby/gems/2.6.0/gems/puma-3.12.1/lib/puma/minissl.rb:5: warning:
mismatched indentations at 'rescue' with 'begin' at 3`
2019-08-18 13:21:47 +02:00
Rafael Mendonça França 1953e0e1ac
Support Rails with sass-rails 6 2019-08-16 18:33:29 -04:00
utilum 5170fc56d5 Update mini_magick to the latest version
Squashes 7 warnings tickled by ActiveStorage test task.

Before:

```
~/code/rails/activestorage$ bundle exec rake test 2>&1 | grep
mini_magick

/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/mini_magick-4.9.2/lib/mini_magick/configuration.rb:122:
warning: method redefined; discarding old processor
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/mini_magick-4.9.2/lib/mini_magick/configuration.rb:128:
warning: method redefined; discarding old processor=
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/mini_magick-4.9.2/lib/mini_magick/configuration.rb:138:
warning: method redefined; discarding old cli
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/mini_magick-4.9.2/lib/mini_magick/configuration.rb:139:
warning: instance variable @cli not initialized
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/mini_magick-4.9.2/lib/mini_magick/configuration.rb:143:
warning: method redefined; discarding old cli=
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/mini_magick-4.9.2/lib/mini_magick/configuration.rb:153:
warning: method redefined; discarding old cli_path
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/mini_magick-4.9.2/lib/mini_magick/configuration.rb:154:
warning: instance variable @cli_path not initialized
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/mini_magick-4.9.2/lib/mini_magick/configuration.rb:154:
warning: instance variable @processor_path not initialized
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/mini_magick-4.9.2/lib/mini_magick/configuration.rb:157:
warning: method redefined; discarding old debug=
```

After:

```
~/code/rails/activestorage$ bundle exec rake test 2>&1 | grep
mini_magick

/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/mini_magick-4.9.5/lib/mini_magick/configuration.rb:142:
warning: method redefined; discarding old cli
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/mini_magick-4.9.5/lib/mini_magick/configuration.rb:157:
warning: method redefined; discarding old cli=
```
2019-08-16 07:41:02 +02:00
Koichi ITO 1c66e047f6 Bump RuboCop to 0.74.0
### Summary

RuboCop 0.74.0 has been released.
https://github.com/rubocop-hq/rubocop/releases/tag/v0.74.0

And rubocop-0-74 channel is available in Code Climate.
https://github.com/codeclimate/codeclimate/releases/tag/v0.85.5

This PR specifies the same RuboCop Performance (1.3.0) and RuboCop Rails (2.0.0)
versions as Code Climate's Gemfile.lock.
https://github.com/codeclimate/codeclimate-rubocop/blob/channel/rubocop-0-74/Gemfile.lock#L51-L55

Also, the `EnforcedStyle` of `Layout/IndentationConsistency` has been renamed
from `EnforcedStyle: rails` to `EnforcedStyle: indented_internal_methods`

- https://github.com/rubocop-hq/rubocop/pull/7113
- https://github.com/rubocop-hq/rubocop/pull/7163

And this commit disables `Layout/SpaceAroundOperators`
that was changed from RuboCop 0.74 by rubocop-hq/rubocop#7211.

cf. https://github.com/rails/rails/pull/36943#issuecomment-521659529
2019-08-15 23:28:06 +09:00
Akshay Mohite 7c52173cea
Rails HTML sanitizer gemfile lock changes on bundle install. 2019-08-09 21:10:59 +05:30
Kasper Timm Hansen 12001611d6
Require and support rails-html-sanitzer 1.2.0
Rails now requires 1.2.0 because it relies on the safe_list_sanitizer
API exclusively.

Also raise `sanitizer_vendor` API from the dead for
rails-deprecated_sanitizer.

Fixes https://github.com/rails/rails-deprecated_sanitizer/pull/6
2019-08-09 00:07:45 +02:00
Peter Zhu ebedf0a6c0 Update azure-storage gem to latest version 2019-08-06 16:02:42 -04:00
Kasper Timm Hansen 3d1f6feda2
Use newly released rails-html-sanitizer 2019-08-05 03:55:12 +02:00
George Claghorn d415eb4f6d
Stop setting a default Capybara app host
It's intended not to be set if Capybara starts the app server itself. Base Rails-generated URLs off of Capybara.current_session.server_url instead.
2019-07-24 22:19:21 -04:00
John Hawthorn 5dbc814ddf Bump minimum selenium-webdriver version
Since #36424, we need an newer version in order to pass.
2019-07-04 16:17:39 -07:00
Xavier Noria 72e257b4c9 bumps Zeitwerk
This version makes eager loading and autoloading consistent,
as documented in the upgrading guide.
2019-06-30 23:57:19 +02:00
yuuji.yaginuma 5267753f64 Bump `webdrivers`
Latest `webdrivers` is necessary to run ujs test.
2019-06-10 08:34:46 +09:00
Ryuta Kamizono 648144649a
Merge pull request #36426 from abhaynikam/bump-codeclimate-rubocop-version
Bump rubocop to 0.71
2019-06-06 20:40:20 +09:00
Abhay Nikam 00b3b68602 Bump rubocop to 0.71 2019-06-06 15:34:50 +05:30
yuuji.yaginuma a6154cf330 Unlock `selenium-webdriver` version
`selenium-webdriver` is deprecateing various features for improvement in 4.0.
I want to test with the latest version to check if Rails uses deprecated
features or not.
2019-06-06 13:34:20 +09:00
utilum 6dd484deef bundle update resque-scheduler to latest version
Resque 2.0 includes grammar fixes for warnings tickled by our tests. Updating resque-scheduler also requires and updates resque to version 2.0.

```
$ ruby -v
ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-linux]
```
2019-05-08 18:05:44 +02:00
Prathamesh Sonpatki fa0ce5c790
Bump bootsnap to a version with disables iseq_cache for Ruby 2.5
- Refs https://github.com/Shopify/bootsnap/pull/257
2019-04-26 12:55:28 +05:30
Rafael Mendonça França 9834be6565
Start Rails 6.1 development 2019-04-24 15:57:14 -04:00
Xavier Noria 1b2efe5a11 upgrades Zeitwerk to 2.1.4
This commit more or less undoes 9b5401f, restores autoloaded? not to
touch the descendants tracker, and autoloaded_constants because it is
documented in the guide.
2019-04-23 01:18:21 +02:00
utilum 57476be712 Update Rake to the latest version
Fixes railties ApplicationTests failures in Ruby 2.7.

Rake 12.3.2 includes a [Fix for test fails caused by 2.6 warnings](https://github.com/ruby/rake/pull/297). Upadting prevents failures of:

- `RakeTests::RakeMigrationsTest#test_migration_status_when_schema_migrations_table_is_not_present`
- `RakeDbsTest#test_db:structure:dump_does_not_dump_schema_information_when_no_migrations_are_used`
- `BinSetupTest#test_bin_setup_output`

See [failures log](2b89e56897/tests.log).

ruby 2.7.0dev (2019-04-18 trunk 67602) [x86_64-linux]
2019-04-18 12:13:26 +02:00
Koichi ITO c6379fd27f Bump RuboCop to 0.67.2
Performance cops will be extracted from RuboCop to RuboCop Performance
when next RuboCop 0.68 will be released.
https://github.com/rubocop-hq/rubocop/issues/5977

RuboCop 0.67 is its transition period.

Since rails/rails repository uses Performance cops, This PR added
rubocop-performance gem to Gemfile.

And this PR fixes some offenses using the following auto-correct.

```console
% bundle exec rubocop -a

Offenses:

activerecord/test/cases/connection_adapters/connection_handlers_multi_db_test.rb:212:26:
C: [Corrected] Layout/SpaceAroundOperators: Operator =
> should be surrounded by a single space.
              "primary"  => { adapter: "sqlite3", database: "db/primary.sqlite3" }
                         ^^
activerecord/test/cases/connection_adapters/connection_handlers_multi_db_test.rb:239:26:
C: [Corrected] Layout/SpaceAroundOperators: Operator => should be
surrounded by a single space.
              "primary"  => { adapter: "sqlite3", database: "db/primary.sqlite3" }
                         ^^
actionview/test/template/resolver_shared_tests.rb:1:1: C: [Corrected]
Style/FrozenStringLiteralComment: Missing magic comment #
frozen_string_literal: true.
module ResolverSharedTests
^
actionview/test/template/resolver_shared_tests.rb:10:33: C: [Corrected]
Layout/SpaceAroundEqualsInParameterDefault: Surrounding space missing in
default value assignment.
  def with_file(filename, source="File at #{filename}")
                                ^
actionview/test/template/resolver_shared_tests.rb:106:5: C: [Corrected]
Rails/RefuteMethods: Prefer assert_not_same over refute_same.
    refute_same a, b
    ^^^^^^^^^^^

2760 files inspected, 5 offenses detected, 5 offenses corrected
```
2019-04-16 17:58:24 +09:00
Xavier Noria 7b6b10542d improves the reloading disabled error message
The original message from Zeitwerk is "can't reload, please call
loader.enable_reloading before setup (Zeitwerk::Error)", which is not
very informative for Rails programmers.

Rails should err with a message worded in terms of its interface.
2019-04-11 23:10:13 +02:00
Xavier Noria 9b5401fcc9 depend on Zeitwerk 2.1.0 2019-04-09 11:06:44 +02:00
Xavier Noria 57c7cbb162 depend on Zeitwerk 2 2019-04-07 13:05:26 +02:00
Ryuta Kamizono bbd8dd9cca Bump addressable to 2.6.0 to fix warning: assigned but unused variable - startercc
https://github.com/sporkmonger/addressable/pull/270
2019-04-05 11:00:21 +09:00
Fumiaki MATSUSHIMA 61c4be4777 Output junit format test report 2019-04-04 14:34:46 +09:00
Ryuta Kamizono 0908184e4c Use `execute_batch2` rather than `execute_batch` to fix performance regression for fixture loading
d8d6bd5 makes fixture loading to bulk statements by using
`execute_batch` for sqlite3 adapter. But `execute_batch` is slower and
it caused the performance regression for fixture loading.

In sqlite3 1.4.0, it have new batch method `execute_batch2`. I've
confirmed `execute_batch2` is extremely faster than `execute_batch`.
So I think it is worth to upgrade sqlite3 to 1.4.0 to use that method.

Before:

```
% ARCONN=sqlite3 bundle exec ruby -w -Itest test/cases/associations/eager_test.rb -n test_eager_loading_too_may_ids
Using sqlite3
Run options: -n test_eager_loading_too_may_ids --seed 35790

# Running:

.

Finished in 202.437406s, 0.0049 runs/s, 0.0049 assertions/s.
1 runs, 1 assertions, 0 failures, 0 errors, 0 skips
ARCONN=sqlite3 bundle exec ruby -w -Itest  -n test_eager_loading_too_may_ids  142.57s user 60.83s system 98% cpu 3:27.08 total
```

After:

```
% ARCONN=sqlite3 bundle exec ruby -w -Itest test/cases/associations/eager_test.rb -n test_eager_loading_too_may_ids
Using sqlite3
Run options: -n test_eager_loading_too_may_ids --seed 16649

# Running:

.

Finished in 8.471032s, 0.1180 runs/s, 0.1180 assertions/s.
1 runs, 1 assertions, 0 failures, 0 errors, 0 skips
ARCONN=sqlite3 bundle exec ruby -w -Itest  -n test_eager_loading_too_may_ids  10.71s user 1.36s system 95% cpu 12.672 total
```
2019-04-04 03:27:46 +09:00
George Claghorn 11d66a8e4c Specify Active Storage's dependency on Active Job 2019-03-30 10:03:19 -04:00
Ryuta Kamizono bde5f3bfc6
Merge pull request #35761 from koic/bump_rubocop_to_0_66_0
Bump RuboCop to 0.66.0
2019-03-27 08:38:57 +09:00
Koichi ITO 1e1adadb41 Bump RuboCop to 0.66.0
### Summary

RuboCop 0.66.0 has been released.
https://github.com/rubocop-hq/rubocop/releases/tag/v0.66.0

And rubocop-0-66 channel is available in Code Climate.
https://github.com/codeclimate/codeclimate/releases/tag/v0.84.0

RuboCop 0.66.0 fixed the false negative to indentation for
modifier. And this PR applied the auto-correction fixed by it.
https://github.com/rubocop-hq/rubocop/pull/6792

In addtion, this PR is also updating the following 4 gems that
RuboCop depends on.

- Update Psych gem ... https://github.com/rubocop-hq/rubocop/pull/6766
- Update Parser gem to 2.6.2.0 that supports Ruby 2.5.5 and 2.6.2 ...
 https://github.com/whitequark/parser/blob/v2.6.2.0/CHANGELOG.md#changelog
- Remove powerpack gem ... https://github.com/rubocop-hq/rubocop/pull/6806
- Update unicode-display_width gem ... https://github.com/rubocop-hq/rubocop/pull/6813
2019-03-27 07:57:43 +09:00
Xavier Noria c0f29ab75e includes bootsnap 1.4.2-java in Gemfile.lock
Was just pushed.
2019-03-26 21:32:17 +01:00
Xavier Noria 379d7e8bfa bumps Zeitwerk and Bootsnap 2019-03-26 20:30:18 +01:00
Guillermo Iguaran 2512f24ef4 Use webdrivers instead of chromedriver-helper for AV UJS tests 2019-03-24 16:05:30 -05:00
Xavier Noria 3acf5f71f0 Depend on Zeitwerk 1.4.2 2019-03-23 14:42:24 +01:00
yuuji.yaginuma efb706daad Fix server restart test on Puma 3.12.1
Since https://github.com/puma/puma/pull/1700, the default host is
correctly used. So `localhost` is used instead of `0.0.0.0`.

As a result, the log output on restart is changed, and the restart test
fails on Puma 3.12.1.
https://travis-ci.org/rails/rails/jobs/509239592#L2303-L2305

Specify binding explicitly to avoid being affected by Puma changes.
2019-03-22 07:49:38 +09:00
Xavier Noria 3d0850bfb8 depend on Zeitwerk 1.4.0 2019-03-19 13:07:31 +01:00
Xavier Noria 85984e5031 bumps Zeitwerk 2019-03-14 14:42:12 -07:00
Rafael Mendonça França a783e41712
Fix gemfile.lock 2019-03-13 14:17:35 -04:00
Xavier Noria 96242410a8 bump Zeitwerk to 1.3.3 2019-03-11 16:11:35 -07:00
Sharang Dashputre c2de1f79ab Don't lock the webpacker gem by its patch version 2019-03-09 05:29:36 +05:30
Sharang Dashputre 8eaffa1945 Use the latest stable release of webpacker 2019-03-09 00:14:17 +05:30
utilum bfd8e4f709 Update racc to latest version
racc 1.4.15 includes fixes for compiling with Ruby 2.7 since
[ruby/ruby@3d1c86a](https://github.com/ruby/ruby/commit/3d1c86a).

Before:

```
ruby -v
ruby 2.7.0dev (2019-03-07 trunk 67189) [x86_64-linux]

bundle install
...
Fetching racc 1.4.14
Installing racc 1.4.14 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

current directory:
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/racc-1.4.14/ext/racc
/home/u/.rbenv/versions/2.7.0-dev/bin/ruby -I
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/2.7.0 -r
./siteconf20190307-14242-16jzp6c.rb extconf.rb
checking for rb_ary_subseq()... yes
creating Makefile

current directory:
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/racc-1.4.14/ext/racc
make "DESTDIR=" clean

current directory:
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/racc-1.4.14/ext/racc
make "DESTDIR="
make: *** No rule to make target
'/home/u/.rbenv/versions/2.7.0-dev/include/ruby-2.7.0/defines.h', needed
by
'cparse.o'.  Stop.

make failed, exit code 2

Gem files will remain installed in
/home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/gems/racc-1.4.14
for
  inspection.
  Results logged to
  /home/u/.rbenv/versions/2.7.0-dev/lib/ruby/gems/2.7.0/extensions/x86_64-linux/2.7.0-static/racc-1.4.14/gem_make.out

  An error occurred while installing racc (1.4.14), and Bundler cannot
  continue.
  Make sure that `gem install racc -v '1.4.14' --source
  'https://rubygems.org/'`
  succeeds before bundling.

  In Gemfile:
    racc
```
2019-03-07 12:30:59 +01:00
Xavier Noria 71e23d33ae Bump Zeitwerk 2019-03-06 12:08:08 -08:00
Rafael Mendonça França 5e6e505083
Preparing for 6.0.0.beta2 release 2019-02-25 17:45:04 -05:00
Xavier Noria 24092b7115 Upgrade Zeitwerk to 1.3.1 2019-02-23 05:16:03 -08:00
Xavier Noria 159b9c40db bump Zeitwerk 2019-02-21 14:27:32 -08:00
Xavier Noria 07346c4b35 upgrades Zeitwerk to 1.2.0 2019-02-17 10:10:05 -08:00
Xavier Noria 870377915a Replace autoloader accessors with Rails.autoloaders.{main,once}
Rails.autoloader and Rails.once_autoloader was just tentative API good
enough for a first patch. Rails.autoloader is singular and does not
convey in its name that there is another autoloader. That might be
confusing, for example if you set a logger and miss traces. On the other
hand, the name `once_autoloader` is very close to being horrible.

Rails.autoloaders.main and Rails.autoloaders.once read better for my
taste, and have a nice symmetry. Also, both "main" and "once" are four
letters long, short and same length.

They are tagged as "rails.main" and "rails.once", respectively.

References #35235.
2019-02-14 22:34:16 -08:00
Xavier Noria c36b6c8d38 Let Zeitwerk be a dependency of Active Support
Zeitwerk is a strong dependency, planned to replace AS::Dependencies. A
line in the generated Gemfile does not convey this as much.
2019-02-13 12:27:53 -08:00
Xavier Noria 821d6c694c Zeitwerk integration 2019-02-12 02:28:04 -08:00
yuuji.yaginuma 116a519d30 Update Gemfile.lock to reflect `sqlite3` update
Follow up to #35154.
2019-02-05 08:44:57 +09:00
Ryuta Kamizono 1cfa913948 Relax version locking of the selenium-webdriver
3.5.2 (September 07, 2017) is a little older.
2019-01-30 17:27:37 +09:00
Ryuta Kamizono bf42e1506b
Merge pull request #35092 from utilum/update_sneakers_to_latest_version
Update Sneakers to the latest version
2019-01-30 14:19:05 +09:00
utilum 6f4fba43bd Update Sneakers to the latest version
Sneakers 2.11.0 has a more recent Bunny dependency which squashes some
Ruby 2.6 warnings tickled by ActiveJob tests.
2019-01-29 23:52:54 +01:00
Eileen Uchitelle 1a4f613072 Rename methods and update docs
This is a minor update to the named methods for the following:

- s/desired_capabilities/capabilities
- s/driver_options/capabilities

Since they are all the same thing we should keep the name the same
throughout the feature.

Updated docs to match / be a little bit clearer

Also updated the Gemfile for selenium-webdriver.
2019-01-29 11:55:30 -05:00
Edouard CHIN 01a26e581f Implement a way to add browser capabilities:
* There is currently no way to define specific browser capabilities since our SystemTest driver override the `option` key [Ref](a07d068078/actionpack/lib/action_dispatch/system_testing/driver.rb (L35))
  This option key is used internally by selenium to add custom capabilities on the browser.

  Depending on the Browser, some option are allowed to be passed inside a hash, the driver takes care of setting whatever you passed on the driver option. An example [here](a07d068078/actionpack/lib/action_dispatch/system_testing/driver.rb (L35)) where you are allowed to pass args such as `--no-sandbox` etc
  However this behavior was only meant for backward compatibility and as you can see it's deprecated.
  The non-deprecated behavior is to create a `<Driver>::Option` object containing all the capabilities we want. This is what we [currently do](a07d068078/actionpack/lib/action_dispatch/system_testing/browser.rb (L34-L36)) when chrome or firefox are in headless mode.

  This PR allows to pass a block when calling `driven_by`, the block will be pased a `<Driver>::Option` instance. You can modify this object the way you want by adding any capabilities. The option object will be then passed to selenium.

  ```ruby
    driven_by :selenium, using: :chrome do |driver_option|
      driver_option.add_argument('--no-sandbox')
      driver_option.add_emulation(device: 'iphone 4')
    end
  ```
2019-01-29 08:50:29 -05:00
Lars Kanis be838262e1 Switch queue_classic back to origin repository
It has been moved to the a fork as part of https://github.com/rails/rails/pull/31671 .
That was since to that time a required PR was not yet merged.
Now the queue_classic master branch is compatible to recent pg versions,
so that there's no need to keep using a fork.
2019-01-25 20:01:47 +01:00
Koichi ITO 43a9f4f7ca Bump RuboCop to 0.63.0
### Summary

RuboCop 0.63.0 has been released.
https://github.com/rubocop-hq/rubocop/releases/tag/v0.63.0

And rubocop-0-63 channel is available in Code Climate.
https://github.com/codeclimate/codeclimate/releases/tag/v0.83.0

Currently, RuboCop version specified for Gemfile.lock (0.61) and
Code Climate (0.60) are different.

- https://github.com/rails/rails/blob/v6.0.0.beta1/Gemfile.lock#L407
- https://github.com/rails/rails/blob/v6.0.0.beta1/.codeclimate.yml#L26

This PR matches these versions to 0.63.
2019-01-19 18:52:09 +09:00
Rafael Mendonça França 5a0230c67f
Preparing for 6.0.0.beta1 release 2019-01-18 15:42:12 -05:00
Rafael Mendonça França 3219e4aef1
Use released webpacker 2019-01-17 17:21:09 -05:00
George Claghorn 0decd2ddc4 Import Action Text 2019-01-04 22:22:49 -05:00
George Claghorn ec83d56214 Bump Nokogiri for sparklemotion/nokogiri@bf41ba0 2018-12-31 20:33:26 -05:00
George Claghorn f2a5c1a541 Fix adding a rich_text_area to a form with no model 2018-12-31 12:16:21 -05:00
George Claghorn dce22ba477 Bump Nokogiri for Ruby 2.6 compatibility 2018-12-31 11:59:09 -05:00
Matthew Draper a796b993ad Switch to released rb-inotify 0.10.0
It contains guard/rb-inotify#79, which is what we were waiting for.
2018-12-31 00:38:05 +10:30
George Claghorn a5b2fff64c Import Action Mailbox 2018-12-25 21:32:35 -05:00
Ryuta Kamizono 28dacff5ed Eliminate "warning: assigned but unused variable - testEof"
https://github.com/ammar/regexp_parser/pull/57

```
% be ruby -w -Itest test/controller/filters_test.rb
/Users/kamipo/src/github.com/rails/rails/vendor/bundle/ruby/2.5.0/gems/addressable-2.5.2/lib/addressable/idna/pure.rb:154: warning: assigned but unused variable - startercc
/Users/kamipo/src/github.com/rails/rails/vendor/bundle/ruby/2.5.0/gems/regexp_parser-1.2.0/lib/regexp_parser/scanner.rb:1146: warning: assigned but unused variable - testEof
Run options: --seed 32647

# Running:

...................................................

Finished in 0.291176s, 175.1518 runs/s, 343.4349 assertions/s.
51 runs, 100 assertions, 0 failures, 0 errors, 0 skips
```
2018-12-19 06:03:25 +09:00
Vinicius Stock 3b7a4d3d75
Upgrade Rubocop to 0.61.1 and fix offenses 2018-12-10 19:22:56 -02:00
David Rodríguez f173ec77fc Abort early if generator command fails (#34420)
* No need to go through ruby

* Abort early if a generator command fails

* Reuse `rails_command` method

* Bump thor minimum dependency to 0.20.3

* Add some minimal docs

* Add a changelog entry

* Restore original logging
2018-12-07 15:01:32 +09:00
George Claghorn 148110e70c Extract ActionMailbox::PostfixRelayer 2018-11-25 15:36:08 -05:00
Rafael Mendonça França 059d4202de Make sure we are using a working version of thor locally 2018-11-09 22:00:58 -05:00
Rafael Mendonça França 96d77ef87a bundle update 2018-11-09 17:21:08 -05:00
Rafael Mendonça França fa2cb55fda Upgrade thor to 0.20.1 2018-11-09 17:20:45 -05:00
yuuji.yaginuma b8b93f5c9b Use the same version of Rubocop as Code Climate
Related to: #34406
2018-11-09 08:12:36 +09:00
George Claghorn ebe3d0aaab Add a Rake task for piping to the Postfix ingress 2018-10-19 16:32:38 -04:00
George Claghorn f33ccec86c Merge branch 'master' into ingresses 2018-10-18 17:39:04 -04:00
George Claghorn 5a8939447b Bump mail to shush mismatched indentation warnings 2018-10-17 12:48:30 -04:00
yuuji.yaginuma 4a51cbba58 Bump mail to `2.7.1` 2018-10-14 08:33:40 +09:00
George Claghorn 6b7eac5c51 Accept inbound emails from a variety of ingresses 2018-10-11 12:51:13 -04:00
Gannon McGibbon 2e53c2b130 Add test retries for railties 2018-10-11 10:43:29 -04:00
George Claghorn 96a4528560 Test against Rails master 2018-10-08 21:03:40 -04:00
Javan Makhmali b1f69fa126 Test against Rails master 2018-10-08 16:47:48 -04:00
Greg Molnar 84744b4c0d update nokogiri 2018-10-05 12:24:20 -07:00
yuuji.yaginuma cab17ffe4e Remove unnecessary `coffee-rails`
Since we no longer use coffeescript in the generated files by
4838c1716a, this is no longer necessary.
2018-10-02 10:45:29 +09:00
David Heinemeier Hansson 2dfec5ec85 Use released version of Rails 5.2.0 as the dependency 2018-10-01 17:04:46 -07:00
David Heinemeier Hansson 4838c1716a
Make Webpacker the default JavaScript compiler for Rails 6 (#33079)
* Use Webpacker by default on new apps

* Stop including coffee-rails by default

* Drop using a js_compressor by default

* Drop extra test for coffeescript inclusion by default

* Stick with skip_javascript to signify skipping webpack

* Don't install a JS runtime by default any more

* app/javascript will be the new default directory for JS

* Make it clear that this is just for configuring the default Webpack framework setup now

* Start using the Webpack tag in the default layout

* Irrelevant test

* jQuery is long gone

* Stop having asset pipeline compile default application.js

* Add rails-ujs by default to the Webpack setup

* Add Active Storage JavaScript to application.js pack by default

* Consistent quoting

* Add Turbolinks to default pack

* Add Action Cable to default pack

Need some work on how to set the global consumer that channels will
work with. @javan?

* Require all channels by default and use a separate consumer stub

* Channel generator now targets Webpack style

* Update task docs to match new generator style

* Use uniform import style

* Drop the JS assets generator

It was barely helpful as it was. It’s no longer helpful in a Webpacked
world. Sayonara!

* Add app/javascript to the stats directories

* Simpler import style

Which match the other imports.

* Address test failures from dropping JS compilation (and compression)

* webpacker-default: Modify `AssetsGeneratorTest`

Before:

```
$ bin/test test/generators/assets_generator_test.rb
Run options: --seed 46201

F

Failure:
AssetsGeneratorTest#test_assets [/Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/assets_generator_test.rb:12]:
Expected file "app/assets/javascripts/posts.js" to exist, but does not

bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/assets_generator_test.rb:10

.

Finished in 0.031343s, 63.8101 runs/s, 95.7152 assertions/s.
2 runs, 3 assertions, 1 failures, 0 errors, 0 skips
```

After:

```
$ bin/test test/generators/assets_generator_test.rb
Run options: --seed 43571

..

Finished in 0.030370s, 65.8545 runs/s, 65.8545 assertions/s.
2 runs, 2 assertions, 0 failures, 0 errors, 0 skips
```

* webpacker-default: Modify `ChannelGeneratorTest`

Before:

```
$ bin/test test/generators/channel_generator_test.rb
Run options: --seed 8986

.F

Failure:
ChannelGeneratorTest#test_channel_with_multiple_actions_is_created [/Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:43]:
Expected file "app/assets/javascripts/channels/chat.js" to exist, but does not

bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:34

.F

Failure:
ChannelGeneratorTest#test_channel_is_created [/Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:29]:
Expected file "app/assets/javascripts/channels/chat.js" to exist, but does not

bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:22

E

Error:
ChannelGeneratorTest#test_cable_js_is_created_if_not_present_already:
Errno::ENOENT: No such file or directory @ apply2files - /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/fixtures/tmp/app/assets/javascripts/cable.js

bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:60

F

Failure:
ChannelGeneratorTest#test_channel_suffix_is_not_duplicated [/Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:87]:
Expected file "app/assets/javascripts/channels/chat.js" to exist, but does not

bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:80

F

Failure:
ChannelGeneratorTest#test_channel_on_revoke [/Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:77]:
Expected file "app/assets/javascripts/cable.js" to exist, but does not

bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:68

Finished in 0.064384s, 108.7227 runs/s, 481.4861 assertions/s.
7 runs, 31 assertions, 4 failures, 1 errors, 0 skips
```

After:

```
$ bin/test test/generators/channel_generator_test.rb
Run options: --seed 44857

.......

Finished in 0.060243s, 116.1961 runs/s, 697.1764 assertions/s.
7 runs, 42 assertions, 0 failures, 0 errors, 0 skips
```

* Fix shared generator tests.

* webpacker-default: Modify `ControllerGeneratorTest`

The JS assets generator was dropped. ref. 46215b1794

* Revert "Simpler import style". It's currently failing with an error of "TypeError: undefined is not an object (evaluating '__WEBPACK_IMPORTED_MODULE_2_activestorage___default.a.start')". Waiting for @javan to have a look.

This reverts commit 5d3ebb7105.

* require webpacker in test app

* Add webpacker without making the build hang/timeout. (#33640)

* use yarn workspaces to allow for installing unreleased packages and only generate js/bootsnap when required

* no longer need to have webpacker in env templates as webpacker moved this config to yml file

* Fix rubocop violation

* Got the test passing for the running scaffold

* update expected lines of code

* update middleware tests to account for webpacker

* disable js in plugins be default to get the tests passing (#34009)

* clear codeclimate report issues

* Anything newer than currently released is good

* Use Webpacker development version during development of Rails

* Edge should get development webpacker as well

* Add changelog entry for Webpacker change
2018-09-30 22:31:21 -07:00
David Heinemeier Hansson 8a0a103495 ActionMailroom -> ActionMailbox
We didn't end up using the mailroom metaphor directly, so let's stick with a more conventional naming strategy.
2018-09-28 12:19:43 -07:00
utilum bf8afe7a0f Update backburner to the latest version
version 1.5.0 includes to warning fixes that show on tests:
cd9670146b
4dfa22bda1
2018-09-28 13:14:14 +02:00
utilum 9951e69614 update mini_magick to the latest version
v 4.9.2 avoids some warnings that show in our tests.

Although Gemfile.lock currently specifies 4.8.0, the CI already runs 4.9.2
so 4.8.0 warnings do not show in our CI logs.
2018-09-24 09:50:44 +02:00
David Heinemeier Hansson a6146d2e89 First end-to-end rickety test 2018-09-17 22:15:27 -07:00
David Heinemeier Hansson 03b1841007 Add dummy app for testing 2018-09-17 17:48:32 -07:00
yuuji.yaginuma a569a27fc7 Bump `chromedriver-helper` to 2.0 2018-09-16 09:18:12 +09:00
yuuji.yaginuma d7445bc56f Unlock pg verson
Get a warning about `async_exec`, but it seems that build has passed
through the fix of be48d118ee.
2018-09-15 16:07:03 +09:00
George Claghorn a83509ffa5 Bump marcel for significant gem size reduction 2018-09-14 23:49:07 -04:00
Rafael França 62a0c30754
Merge pull request #33574 from lsylvester/change-i18n-defaults-behaviour-to-match-i18n-1.1.0
update I18n fallbacks configuration to be compatible with i18n 1.1.0
2018-09-06 14:38:26 -04:00
Rafael Mendonça França f80722c0eb
Unlock ffi version
ffi has a security issue on versions before 1.9.24 so it is better to
upgrade even if that occasionally cause failures in some contributors
machines.
2018-09-05 17:56:57 -04:00
Rafael Mendonça França 9ee5b28479
Upgrade all the gems 2018-09-05 17:41:31 -04:00
yuuji.yaginuma 58fc1ff8ef Avoid `pg` 1.1.0 for now
Because there are tests that fail due to the influence of the
`async_exec` deprecate message.
https://travis-ci.org/rails/rails/jobs/420345370

Related to #33188.
2018-08-25 17:15:07 +09:00
Lachlan Sylvester 66614f6b67 update I18n fallbacks configuration to be compatible with i18n 1.1.0 2018-08-23 06:56:42 +10:00
Kasper Timm Hansen 9136bb77a7
Merge pull request #33162 from utilum/stop_using_mocha
Stop using Mocha
2018-08-22 18:20:25 +02:00
utilum c5fbfb8c12 Update image_processing to the latest version
Version 1.6.0 includes 3a958bc419 which saves us a warning: shadowing outer local variable - options.

I see it locally, but for some reason not on the CI.
2018-08-16 19:04:57 +02:00
utilum 7d13e9de50 Remove Mocha from Gemfile
_Q.E.F._
2018-08-13 13:05:20 +02:00
Yasuo Honda 6c09b3adc9 Avoid i18n 1.1.0 for now
[Yasuo Honda & lsylvester]
2018-08-09 13:24:13 +00:00
Koichi ITO 211b10aea6 Bump RuboCop to 0.58.2
## Summary

RuboCop 0.58.2 was released.
https://github.com/rubocop-hq/rubocop/releases/tag/v0.58.2

And rubocop-0-58 channel is available in Code Climate.
https://github.com/codeclimate/codeclimate/releases/tag/v0.76.0
https://github.com/codeclimate/codeclimate/commit/38f21f0

In addition, the following changes are made in this PR.

- Replace Custom cops with Rails cops
- Add jaro_winkler gem to Gemfile.lock

### Replace Custom cops with Rails cops

These are compatible replacements.

- Replace `CustomCops/AssertNot` cop with `Rails/AssertNot` cop.
- Replace `CustomCops/RefuteNot` cop with `Rails/RefuteMethods` cop.

With this replacement, it was decided to use cop of RuboCop itself.
It removes the code related to CustomCops accordingly.

### Add jaro_winkler gem to Gemfile.lock

Since RuboCop 0.57.0 depends on jaro_winkler gem,
it has been added to Gemfile.lock.
2018-07-26 17:48:07 +09:00
utilum cb68841b94 Update sprockets to Security release for CVE-2018-3760
See:

https://github.com/rails/sprockets/blob/v3.7.2/CHANGELOG.md
9c34fa0590
2018-06-27 07:34:05 +02:00
utilum c739dcb6cc Update raabro to latest version
[v 1.1.6](https://github.com/floraison/raabro/blob/master/CHANGELOG.md#raabro-116--released-2018-06-22) fixes a warning we see on [Rails CI](https://travis-ci.org/rails/rails/jobs/395177524#L3763).
2018-06-23 23:23:54 +02:00
utilum 99685e39d2 Update fugit to latest version
[fugit 1.1.3](03a3ee86f3)
fixes warnings that show up in ActiveJob tests.

See [CI](https://travis-ci.org/rails/rails/jobs/394107740#L3764-L3778).
2018-06-21 12:11:43 +02:00
Rafael Mendonça França 16574409f8
Bundle update 2018-05-30 13:49:55 -04:00
David Heinemeier Hansson 89be59345b Use actiontext references in Gemfile.lock 2018-05-28 17:14:27 +02:00
utilum acca10d8ef Update et-orbi to latest version
avoids `warning: assigned but unused variable - tu`.
2018-05-28 09:37:20 +02:00
Guillermo Iguaran e10fd57e98 Bump minimum version of Thor to 0.19.0
Thor 0.18 is causing failures in all the generator tests.
2018-05-22 15:58:35 -05:00
George Claghorn bf5f41d948
Support streaming downloads from Google Cloud Storage 2018-05-01 23:20:56 -04:00
utilum f4eca1d630 Make Railties CI log for Ruby 2.6 accessible again
Pending the next release of Thor which [fixes](006832ea32) calls to `ERB.new`, Railties CI log for Ruby 2.6 is flooded with so many warnings it is too long for Travis to handle:

```
/home/travis/.rvm/gems/ruby-head/gems/thor-0.20.0/lib/thor/actions/file_manipulation.rb:120: warning: Passing safe_level with the 2nd argument of ERB.new is deprecated. Do not use it, and specify other arguments as keyword arguments.
/home/travis/.rvm/gems/ruby-head/gems/thor-0.20.0/lib/thor/actions/file_manipulation.rb:120: warning: Passing trim_mode with the 3rd argument of ERB.new is deprecated. Use keyword argument like ERB.new(str, trim_mode: ...) instead.
/home/travis/.rvm/gems/ruby-head/gems/thor-0.20.0/lib/thor/actions/file_manipulation.rb:120: warning: Passing eoutvar with the 4th argument of ERB.new is deprecated. Use keyword argument like ERB.new(str, eoutvar: ...) instead.

The log length has exceeded the limit of 4 MB (this usually means that the test suite is raising the same exception over and over).

The job has been terminated
```

https://travis-ci.org/rails/rails/jobs/372623604#L10000
https://api.travis-ci.org/v3/job/372623604/log.txt

This patch forces installation of fixed Thor, and enables us to look at the the log.
2018-04-29 11:28:20 +02:00
Rafael França f8a4bdd029
Merge pull request #32713 from utilum/max_ffi_version
Fix segmentation fault in EventedFileUpdateChecker
2018-04-25 00:59:45 -04:00
Matthew Draper 989b1cb4a3
Merge pull request #32097 from matthewd/arel
Merge Arel
2018-04-25 08:18:02 +09:30
utilum 0f9f836363 Fix segmentation fault in EventedFileUpdateChecker
resolves #32705
2018-04-24 20:54:52 +02:00
George Claghorn ef5902a2f1
Merge pull request #32471 from janko-m/use-image_processing-gem
Use ImageProcessing gem for ActiveStorage variants
2018-04-23 16:01:16 -05:00
Bart de Water e236454a1a Rubocop 0.54
Fix `.rubocop.yml: Lint/EndAlignment has the wrong namespace - should be Layout` warning
2018-04-21 13:18:50 -04:00
Janko Marohnić ca12968587
Use ImageProcessing gem for ActiveStorage variants
ImageProcessing gem is a wrapper around MiniMagick and ruby-vips, and
implements an interface for common image resizing and processing. This
is the canonical image processing gem recommended in [Shrine], and
that's where it developed from. The initial implementation was extracted
from Refile, which also implements on-the-fly transformations.

Some features that ImageProcessing gem adds on top of MiniMagick:

  * resizing macros
    - #resize_to_limit
    - #resize_to_fit
    - #resize_to_fill
    - #resize_and_pad
  * automatic orientation
  * automatic thumbnail sharpening
  * avoids the complex and inefficient MiniMagick::Image class
  * will use "magick" instead of "convert" on ImageMagick 7

However, the biggest feature of the ImageProcessing gem is that it has
an alternative implementation that uses libvips. Libvips is an
alternative to ImageMagick that can process images very rapidly (we've
seen up 10x faster than ImageMagick).

What's great is that the ImageProcessing gem provides the same interface
for both implementations. The macros are named the same, and the libvips
implementation does auto orientation and thumbnail sharpening as well;
only the operations/options specific to ImageMagick/libvips differ. The
integration provided by this PR should work for both implementations.

The plan is to introduce the ImageProcessing backend in Rails 6.0 as the
default backend and deprecate the MiniMagick backend, then in Rails 6.1
remove the MiniMagick backend.
2018-04-18 17:46:25 +02:00
yuuji.yaginuma 5bca1f2167 Unlock dalli version
The issue was fixed with https://github.com/petergoldstein/dalli/pull/679,
and a new version containing that fix was released.
2018-04-11 16:52:10 +09:00
Rafael França 76c9498eb1
Merge pull request #32496 from yhirano55/fix_turbolinks_warning_in_railties
Fix turbolinks warning in railties test
2018-04-10 22:00:16 -04:00
Yoshiyuki Hirano eebad82e7c Fix turbolinks warning in railties test
* Upgrade turbolinks from v5.0.1 to v5.1.0
* Fix warning in railties test

    lib/turbolinks/assertions.rb:17:
    warning: assigned but unused variable - visit_action
2018-04-11 10:08:38 +09:00
eileencodes 72f17d59e4 Remove upper bound on Capybara
There's no reason to block future versions of Capybara since we don't
_know_ they are going to break. How will we know if we have a
conservative option set? This change prevents us from blocking users who
want to upgrade in the future.
2018-04-10 16:40:14 -04:00
James Mead 1cc282db7d Upgrade Mocha from v1.3.0 to v1.5.0
Mocha v1.5.0 is currently the latest release.
2018-04-07 12:26:27 +01:00
Rafael Mendonça França e6f5e75ef1
Upgrade capybara to 3.0.1 to make sure our tests are passing 2018-04-06 17:09:14 -04:00
yuuji.yaginuma 0bfdd1da28 Fix broken `ServerTest` with Capybara 3.0.0
It seems that it is no longer possible to specify the value held by
`Capybara.server` as sever.

Ref: ba7674086c
2018-04-06 21:01:28 +09:00
Kasper Timm Hansen 0ec23effa7
Merge pull request #32065 from sikachu/move-SourceAnnotationExtractor-under-rails-namespec
Move SourceAnnotationExtractor under Rails module
2018-04-02 16:15:52 +02:00
Yuji Yaginuma fe37da4ebf Bump rack-test to 1.0.0 2018-03-28 07:24:49 +09:00
Prem Sichanugrist f2ebfcb0c0 Run `bundle update` on bootsnap
1.2.1 fixes a bug in `Kernel.require` and resolve a test failure.

See https://github.com/Shopify/bootsnap/pull/143
2018-03-23 01:09:24 +00:00
Ryuta Kamizono 958c5ad9e9 Fix `test_config_another_database` failure
Somehow `test_config_another_database` didn't fail on CI, but it will
fail locally.

https://travis-ci.org/rails/rails/jobs/356212950#L2474-L2482

```
% bundle exec ruby -w -Itest test/generators/app_generator_test.rb -n test_config_another_database
Run options: -n test_config_another_database --seed 7260

# Running:

F

Failure:
AppGeneratorTest#test_config_another_database [test/generators/app_generator_test.rb:417]:
Expected /^\s*gem\s+["']mysql2["'], '~> 0.4.4'$*/ to match "source 'https://rubygems.org'\ngit_source(:github) { |repo| \"https://github.com/\#{repo}.git\" }\n\nruby '2.5.0'\n\n# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'\ngem 'rails', '~> 6.0.0.alpha'\n# Use mysql as the database for Active Record\ngem 'mysql2', '>= 0.4.4', '< 0.6.0'\n# Use Puma as the app server\ngem 'puma', '~> 3.11'\n# Use SCSS for stylesheets\ngem 'sass-rails', '~> 5.0'\n# Use Uglifier as compressor for JavaScript assets\ngem 'uglifier', '>= 1.3.0'\n# See https://github.com/rails/execjs#readme for more supported runtimes\n# gem 'mini_racer', platforms: :ruby\n\n# Use CoffeeScript for .coffee assets and views\ngem 'coffee-rails', '~> 4.2'\n# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks\ngem 'turbolinks', '~> 5'\n# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder\ngem 'jbuilder', '~> 2.5'\n# Use Redis adapter to run Action Cable in production\n# gem 'redis', '~> 4.0'\n# Use ActiveModel has_secure_password\n# gem 'bcrypt', '~> 3.1.7'\n\n# Use ActiveStorage variant\n# gem 'mini_magick', '~> 4.8'\n\n# Use Capistrano for deployment\n# gem 'capistrano-rails', group: :development\n\n# Reduces boot times through caching; required in config/boot.rb\ngem 'bootsnap', '>= 1.1.0', require: false\n\ngroup :development, :test do\n  # Call 'byebug' anywhere in the code to stop execution and get a debugger console\n  gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]\nend\n\ngroup :development do\n  # Access an interactive console on exception pages or by calling 'console' anywhere in the code.\n  gem 'web-console', '>= 3.3.0'\n  gem 'listen', '>= 3.0.5', '< 3.2'\n  # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring\n  gem 'spring'\n  gem 'spring-watcher-listen', '~> 2.0.0'\nend\n\ngroup :test do\n  # Adds support for Capybara system testing and selenium driver\n  gem 'capybara', '>= 2.15', '< 4.0'\n  gem 'selenium-webdriver'\n  # Easy installation and use of chromedriver to run system tests with Chrome\n  gem 'chromedriver-helper'\nend\n\n# Windows does not include zoneinfo files, so bundle the tzinfo-data gem\ngem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]\n".

bin/rails test test/generators/app_generator_test.rb:411

Finished in 0.174681s, 5.7247 runs/s, 34.3483 assertions/s.
1 runs, 6 assertions, 1 failures, 0 errors, 0 skips
```
2018-03-22 03:20:04 +09:00
Andrew White 627ef06331 Update loofah to mitigate CVE-2018-8048
See flavorjones/loofah#144
2018-03-21 16:48:47 +00:00
Rafael Mendonça França fab6ded8f2
Allow any version of dalli less them 2.7.7 2018-03-20 11:58:14 -04:00
yuuji.yaginuma 63ec63ca8c Avoid dalli 2.7.7 for now
It's causing a test to fail.
Ref: https://travis-ci.org/rails/rails/jobs/353758855#L1433-L1501
2018-03-15 21:03:06 +09:00
Gaurav Sharma 875073a89d update psych gem to 3.2 stable release 2018-03-10 01:44:36 +05:30
Yuji Yaginuma a3b7aa66bc Update Gemfile.lock to reflect Capybara 3.x
Follow up of #32151
2018-03-06 11:57:49 +09:00
George Claghorn ccac681122 Generate root-relative paths in Active Storage disk service URL methods
Fixes #32129.
2018-03-05 11:54:43 -05:00
Matthew Draper 17ca17072d Merge Arel into Active Record 2018-02-24 17:15:32 +10:30
utilum 298ecee479 Update rubocop to the latest version
Includes [Switch Layout/SpaceBeforeBlockBraces's empty braces default](https://github.com/bbatsov/rubocop/pull/5263) from [0.52.1](https://github.com/bbatsov/rubocop/blob/master/CHANGELOG.md#0521-2017-12-27).

Before: 131 offenses detected.

After: no offenses detected
2018-02-23 01:08:27 +01:00
Andrew White 6c6a30a7c3 Update to sinatra 2.0.1
Although not a direct dependency, it's pulled in by Resque for
Active Job integration tests so we need to update because the
rack-protection gem has a security vulnerability[1].

[1]: https://nvd.nist.gov/vuln/detail/CVE-2018-7212
2018-02-21 13:04:36 +00:00
utilum ea06d2d5b4 Bump mysql2 version
Skip 0.4.8 and 0.4.9, which had
[Compilation failures against MariaDB Connector/C 3.0.2](https://github.com/brianmario/mysql2/releases/tag/0.4.10).
2018-02-15 19:12:58 +01:00
Rafael Mendonça França 2e87ea6d70 Don't force people to upgrade i18n gem 2018-02-14 11:55:36 -05:00
Javan Makhmali 377d16b8b5 Dummy: Add mini_magick for variants 2018-02-14 09:45:44 -05:00
Rafael Mendonça França 79aa6158b8 Update Gemfile.lock 2018-02-14 01:47:37 -05:00
Javan Makhmali 2f13b3c9fe Pull activetext.js into dummy app with webpacker 2018-02-12 10:34:29 -05:00
Sam Stephenson 38e1f12d79 Add dummy app 2018-02-08 11:01:46 -06:00
Sam Stephenson 68d350ddac Initial import from BC3 RichText 2018-02-07 18:26:19 -06:00
Sam Stephenson e22ba227a6 Initial commit 2018-02-07 12:43:36 -06:00
yuuji.yaginuma c5d431e469 Bump `minitest-server`
In order to use `minitest_bisect` with Minitest 5.11.x, it needs to be
updated.
Ref: https://github.com/seattlerb/minitest-server/issues/2
2018-02-07 21:47:48 +09:00
Matthew Draper 7a1fa2c584
Merge pull request #31914 from utilum/bump_em-socksify
Update em-socksify to the latest version
2018-02-07 11:25:06 +10:30
utilum 64be732b1a Update em-socksify to the latest version
Avoid warning: parentheses after method name is interpreted as an argument list, not a decomposed argument
2018-02-06 23:08:13 +01:00
Robin Dupret 38d2b473c2 Refer to a stable release of SDoc 2018-02-06 19:49:15 +01:00
Rafael Mendonça França 1c383df324 Start Rails 6.0 development!!!
🎉🎉🎉
2018-01-30 18:51:17 -05:00
Daniel Colson defa880f91 Relax minitest version
We locked Minitest to 5.11.1 in #31799
because 5.11.2 included a breaking change.
The change was fixed in 5.11.3, so we no
longer need to lock in the version.
2018-01-26 20:36:59 -05:00
Yasuo Honda 1da8c32d16 Lock Minitest 5.11.1
To workaround `undefined method `error?' for` reported
at https://travis-ci.org/rails/rails/jobs/333456146
2018-01-26 02:47:35 +00:00
yuuji.yaginuma 9270e69c58 Update Gemfile.lock to reflect websocket-driver 0.7.0
Follow up to e1473e0cbf
2018-01-19 07:50:50 +09:00
Gabriel Sobrinho 4ac143d193 Support for connection pooling on mem cache store 2018-01-18 15:05:16 -05:00
George Claghorn c2ba530c43
Extract content types from blob data 2018-01-15 13:06:17 -05:00
Rafael Mendonça França c09ebcf4a9 Use my fork instead of an thrid-party fork
This will avoid the branch being deleted by mistake making all builds to
fail.
2018-01-11 14:37:27 -05:00
Rafael Mendonça França 181836d894 Merge pull request #31671 from larskanis/pg-1.0
PostgreSQL: Allow pg-1.0 gem to be used with ActiveRecord
2018-01-11 14:31:37 -05:00
Lars Kanis 13eff51b1b PostgreSQL: Update Gemfile to pg-1.0.0
Queue_classic currently limits pg to "< 0.20".
It is therefore not used for rails CI tests. There has been
a bull request for a while (by a co-worker of mine), which
fixes the incompatibilities and extends dependencies to pg-1.x.

This patch add this pull request to the Gemfile as an interim
solution, until it is merged.
2018-01-10 21:55:43 +01:00
yuuji.yaginuma a0fc2bee47 Bump Minitest to 5.11.1 2018-01-03 08:24:32 +09:00
yuuji.yaginuma 13afd2cfdc Avoid Minitest 5.11.0 for now
Seems some tests not work with Minitest 5.11.0.

* https://travis-ci.org/rails/rails/jobs/323997512#L1053
* https://travis-ci.org/rails/rails/jobs/323997486#L1055

Ref: https://github.com/seattlerb/minitest/issues/729
2018-01-02 17:34:09 +09:00
yuuji.yaginuma df514728ee Use released `delayed_job` instead of master version
Ref: https://github.com/collectiveidea/delayed_job/blob/master/CHANGELOG.md#414---2017-12-29
2017-12-30 06:57:28 +09:00
yuuji.yaginuma eb98aeb296 Use `delayed_job` master
For pass Active Job integration tests with Ruby 2.5.
Ref: https://github.com/collectiveidea/delayed_job/pull/996
2017-12-23 22:18:29 +09:00
Guillermo Iguaran 7d75599c87 Update nokogiri version on Gemfile 2017-12-14 13:06:53 -05:00
yuuji.yaginuma 65e994c063 Use released `resque-scheduler` instead of master version
The v4.3.1 has already released that includes Redis 4.0 support.
https://github.com/resque/resque-scheduler/blob/master/CHANGELOG.md#431---2017-11-20
2017-12-14 08:40:42 +09:00
yuuji.yaginuma 9d65ac30fd Use `credentials` instead of `keyfile` in GCS sevice
The `keyfile` was renamed to `credentials` in `google-cloud-storage` 1.8.0.
https://github.com/GoogleCloudPlatform/google-cloud-ruby/blob/master/google-cloud-storage/CHANGELOG.md#180--2017-11-14

Although `keyfile` can still be used, but it looks like deprecate.
ddf7b2a856/google-cloud-storage/lib/google/cloud/storage.rb (L589...L590)

Therefore, I think that should use `credentials` in newly generated
applications.

Ref: https://github.com/GoogleCloudPlatform/google-cloud-ruby/issues/1802
2017-11-29 13:17:04 +09:00
Rafael Mendonça França 2837d0f334
Preparing for 5.2.0.beta2 release 2017-11-28 14:41:02 -05:00
Rafael Mendonça França cceeeb6e57
Preparing for 5.2.0.beta1 release 2017-11-27 14:50:03 -05:00
Guo Xiang Tan a163f9328b Update `rack-test` to 0.8. 2017-11-21 11:54:09 +08:00
yuuji.yaginuma adf7fb86d0 Remove unused `em-hiredis`
`em-hiredis` is unused since 48766e32d3
2017-11-21 12:27:29 +09:00
Ryuta Kamizono bc27697748 Fix `test_session_store_with_expire_after` failure with rack-test 0.7.1
https://travis-ci.org/rails/rails/jobs/304428814#L1977
2017-11-20 05:49:51 +09:00
Jeremy Daer 3bbc7f8f63
Move back to resque-scheduler mainline now that https://github.com/resque/resque-scheduler/pull/620 is merged 2017-11-16 11:31:35 -07:00
Jeremy Daer 376094caa4
Bump resque-scheduler ahead of a new gem release 2017-11-15 14:09:24 -07:00
Rafael Mendonça França 79c3d5a67d
Use released sass-rails 2017-11-14 14:42:12 -05:00
Rafael Mendonça França 2e0fe5928f
Use released arel 2017-11-14 14:37:59 -05:00
Koichi ITO 8c5115f95d Bump RuboCop to 0.51.0
## Summary

RuboCop 0.51.0 was released.
https://github.com/bbatsov/rubocop/releases/tag/v0.51.0

And rubocop-0-51 channel is available in Code Climate.
https://github.com/codeclimate/codeclimate-rubocop/issues/109

This PR will bump RuboCop to 0.51.0 and fixes the following new
offenses.

```console
% bundle exec rubocop
Inspecting 2358 files

(snip)

Offenses:

actionpack/lib/action_controller/metal/http_authentication.rb:251:59: C:
Prefer double-quoted strings unless you need single quotes to avoid
extra backslashes for escaping.
          [key.strip, value.to_s.gsub(/^"|"$/, "").delete('\'')]
                                                          ^^^^
activesupport/test/core_ext/load_error_test.rb:8:39: C: Prefer
double-quoted strings unless you need single quotes to avoid extra
backslashes for escaping.
    assert_raise(LoadError) { require 'no_this_file_don\'t_exist' }
                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^

2358 files inspected, 2 offenses detected
```
2017-11-10 10:52:04 +09:00
yuuji.yaginuma cfe46db8e2 Use released `redis-namespace` instead of master version
The `redis-namespace` 1.6.0 includes redis-rb 4.0 support.
2017-11-08 17:09:36 +09:00
Jeremy Daer 0931e17ebf
Fix tests on Mail 2.7
Reverts 4d96be1c27
References #31026
2017-10-31 21:44:58 -07:00
Yasuo Honda 14b7d673a3 Workaround for ActionMailer failures by not installing mail 2.7
```ruby
TestHelperMailerTest#test_encode
BaseTest#test_implicit_multipart_with_attachments_creates_nested_parts
BaseTest#test_implicit_multipart_with_attachments_and_sort_order
BaseTest#test_explicit_multipart_with_attachments_creates_nested_parts
```
Refer https://travis-ci.org/rails/rails/jobs/295571582
2017-11-01 02:47:57 +00:00
Ryuta Kamizono 7fe50a7146 Fix failing `bundle install` on CI
https://travis-ci.org/rails/rails/jobs/295470534#L2133
2017-11-01 09:29:50 +09:00
Rafael Mendonça França 7de7f12fd1
Remove deprecated Erubis ERB handler 2017-10-23 12:50:31 -04:00
Akira Matsuda feb0fd0ca9 bundle lock --add-platform java
"The dependency activerecord-jdbcsqlite3-adapter (>= 1.3.0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby, x64-mingw32, x86-mingw32 but the dependency is only for java. To add those platforms to the bundle, run `bundle lock --add-platform java`."
2017-10-20 20:51:32 +09:00
Guillermo Iguaran 4dcf12a340 PhantomJS is abandoned, replace it with Selenium/Chrome headless 2017-10-19 11:01:52 -05:00
yuuji.yaginuma d0aeeb7328 Remove unsued `jquery-rails`
This has been added by 8f8cb1baa3.
But now it is unnecessary because it is not used in the test.
2017-10-13 18:08:35 +09:00
Koichi ITO 2e0de2dd41 Bump RuboCop 0.50.0
RuboCop 0.50.0 was released.
https://github.com/bbatsov/rubocop/releases/tag/v0.50.0

And `rubocop-0-50` channel is available in Code Climate.
https://github.com/codeclimate/codeclimate-rubocop/issues/107#issuecomment-336234260

This commit will bump RuboCop to 0.50.0.
There are no new offences in this change.

```console
% bundle exec rubocop --version
0.50.0
% bundle exec rubocop
Inspecting 2350 files

(snip)

2350 files inspected, no offenses detected
```
2017-10-13 12:01:03 +09:00
yuuji.yaginuma 24560d79fc Use released `sidekiq` instead of master version
The sidekiq 5.0.5 includes redis-rb 4.0 support.
Ref: 90db3b8420/Changes.md (505)
2017-10-09 20:51:10 +09:00
Ryuta Kamizono f8337575ac Missing revision 5efd21bb7ee4b326d9c0d26fccad10fc59dd51f0 in redis-rb-4.0 branch
Seems the branch has rebased. cc @jeremy
2017-10-09 09:41:14 +09:00
Jeremy Daer 53c516d88d
redis-rb 4.0 support
* Use `gem 'redis', '~> 4.0'` for new app Gemfiles
* Loosen Action Cable redis-rb dep to `>= 3.3, < 5`
* Bump redis-namespace for looser Redis version dep
* Avoid using the underlying `redis.client` directly
* Use `Redis.new` instead of `Redis.connect`
2017-10-08 15:37:54 -07:00
Akira Matsuda ab08f33f31 mocha 1.3.0 2017-09-25 09:12:58 +09:00
Thomas Walpole ba04b580c6 Use the default Capybara registered puma server configuration 2017-09-18 08:48:52 -07:00
Matthew Draper 3559daddfe Stick with the RUBY_VERSION check on stopgap_13632 2017-09-15 12:11:36 +09:30
Yuji Yaginuma 83bfe07583 Use v3 of the AWS SDK 2017-09-09 23:22:10 -04:00
yuuji.yaginuma 75a921828c Do not install unused gem
`qu-redis` is need for qu adapter test.
However, since 8ecc5ab, qu adapter test has not been executed,
it is unnecessary now.
2017-09-08 08:00:30 +09:00
Matthew Draper bb7775736c Add stopgap_13632 workaround
I'm not sure this is the problem we're seeing on Travis (occasional
unexpected IOError exceptions), but it's worth a try.
2017-08-29 21:10:49 +09:30
Bradley Buda 54ad8bb2b0 Update azure-core to 0.1.11 to fix rails-dev-box
rails-dev-box was failing to install gems with a filesystem permission
error. The issue was introduced when azure-core was bumped from 0.1.9 to
0.1.10 in d2f493c. azure-core has fixed the build problem [1] and
released a new version, 0.1.11 with the fix.

This change is just to run `bundle update azure-core` to pick up that
fix.

[1]: 536c3fc21c
2017-08-23 21:53:02 -07:00
Robin Dupret 6db4cf9beb Temporarily point to a fork of SDoc
This fork brings:

* A tiny refresh of the default theme.
* SEO tags to class files.
* The removal of HTML tags from search results.
* Some general template clean-up (HTML 5, removal of the jQuery
  effect library, etc.).
* A speed up of the generation time (by ~30 seconds).
2017-08-17 14:49:31 +02:00
yuuji.yaginuma bad08d8609 Bump `thor` and `blade`
For test with latest thor.
2017-08-17 08:53:36 +09:00
Rafael Mendonça França d2f493c7ed Test with released thor
thor 0.20.0 was released so we can test with the released version.
2017-08-16 14:03:24 -04:00
dixpac 053e556df1 Depend on offical azure-core
No need to depend on my fork anymore, they've just release fix
officially.
2017-08-03 12:12:58 +02:00
Ryuta Kamizono 815d1abf39 Fix `Style/StringLiterals` violations for Active Storage
```
% be rubocop -a --only Style/StringLiterals activestorage
Inspecting 74 files
........................................CCCCCCCCCC.C........CC.......C.C..

(snip)

74 files inspected, 31 offenses detected, 31 offenses corrected
```
2017-08-03 03:13:11 +09:00
David Heinemeier Hansson c6974229d0 Merge branch 'master' into active-storage-import 2017-08-02 09:52:14 -05:00
Rafael Mendonça França feb1ddae02 Merge remote-tracking branch 'origin/master' into unlock-minitest 2017-08-01 17:34:14 -04:00
claudiob 98bb99ef61 Don't depend on HTTParty
"httparty" is only added in #30020 to write two tests to make PUT requests
against S3 and GCS.

The same requests can be made with net/http, removing a dependency from the Gemfile.
2017-08-01 10:56:39 -07:00
David Heinemeier Hansson 54663f55ef Resolve gemspec typo 2017-07-31 15:55:55 -05:00
Sean Griffin c146065b8d Merge pull request #29940 from kamipo/update_gemfile_lock
Update Gemfile.lock to reflect arel 9.0.0.alpha
2017-07-25 13:57:55 -04:00
Ryuta Kamizono 4c8c48eb7f Update Gemfile.lock to reflect arel 9.0.0.alpha
Follow up to 089ca52.
2017-07-26 02:52:05 +09:00
Sean Griffin f516ee09d5 Merge pull request #29932 from koic/supress_deprecated_warning_in_actioncable
Suppress deprecated warning in Action Cable
2017-07-25 13:49:27 -04:00
Sean Griffin 82200b2541 Fix failing tests
`bind_values` was removed from Arel
2017-07-25 09:14:48 -04:00
Koichi ITO 68eb967ee6 Suppress deprecated warning in Action Cable 2017-07-25 15:53:02 +09:00
Rafael Mendonça França d9ca57ab0b Merge pull request #29859 from dwightwatson/feature/rack-test
Update rack-test dependency constraint
2017-07-24 16:47:56 -04:00
Rafael França 998ec40f9e Merge pull request #29908 from deivid-rodriguez/fix_warnings_in_railties_tests
Fix warnings in railties tests
2017-07-24 14:59:42 -04:00
Sean Griffin 213796fb49 Refactor Active Record to let Arel manage bind params
A common source of bugs and code bloat within Active Record has been the
need for us to maintain the list of bind values separately from the AST
they're associated with. This makes any sort of AST manipulation
incredibly difficult, as any time we want to potentially insert or
remove an AST node, we need to traverse the entire tree to find where
the associated bind parameters are.

With this change, the bind parameters now live on the AST directly.
Active Record does not need to know or care about them until the final
AST traversal for SQL construction. Rather than returning just the SQL,
the Arel collector will now return both the SQL and the bind parameters.
At this point the connection adapter will have all the values that it
had before.

A bit of this code is janky and something I'd like to refactor later. In
particular, I don't like how we're handling associations in the
predicate builder, the special casing of `StatementCache::Substitute` in
`QueryAttribute`, or generally how we're handling bind value replacement
in the statement cache when prepared statements are disabled.

This also mostly reverts #26378, as it moved all the code into a
location that I wanted to delete.

/cc @metaskills @yahonda, this change will affect the adapters

Fixes #29766.
Fixes #29804.
Fixes #26541.
Close #28539.
Close #24769.
Close #26468.
Close #26202.

There are probably other issues/PRs that can be closed because of this
commit, but that's all I could find on the first few pages.
2017-07-24 09:07:24 -04:00
David Rodríguez 0c2c32d3d6 Fix warnings in railties tests
This warning has been fixed in sass-rails. This change picks up the fix.
2017-07-24 12:55:08 +02:00
Dwight Watson de550be5ea Update rack-test dependency constraint 2017-07-24 15:09:00 +10:00
Kasper Timm Hansen 5c16dd35a2 Move back to @matthewd's close io fixed rb-inotify. 2017-07-19 19:45:42 +02:00
Burke Libbey 0312a5c67e
Add bootsnap to default Gemfile:
Bootsnap precomputes load path resolution and caches ruby ISeq
and YAML parsing/compilation, reducing application boot time by
approximately 50% on supported configurations.
2017-07-17 13:17:45 -04:00
Kasper Timm Hansen 0391bbc01b Bump minitest; Use double quotes 2017-07-15 21:19:13 +02:00
Kasper Timm Hansen aad42dce10 Merge branch 'master' into unlock-minitest 2017-07-15 21:17:27 +02:00
Rafael Mendonça França 44f3ecbe5f Test thor master 2017-07-07 15:16:39 -04:00
Rafael Mendonça França 2975aeb888 Commit gemfile.lock 2017-07-04 14:55:50 -04:00
Kir Shatrov 4ee42379cc Use bulk INSERT to insert fixtures
Improves the performance from O(n) to O(1).
Previously it would require 50 queries to
insert 50 fixtures. Now it takes only one query.

Disabled on sqlite which doesn't support multiple inserts.
2017-06-20 13:18:53 -04:00
Matthew Draper 67a579419b Merge pull request #29488 from utilum/update_gemfile
Fixes FIXME: rb-inotify 0.99 has been released
2017-06-18 05:23:53 +09:30
utilum 96d58433c9 Fixes FIXME: rb-inotify 0.99 has been released 2017-06-17 18:59:41 +02:00
yuuji.yaginuma 3ab7483f47 Bundle capybara 2.14.1 that includes fix for Ruby warnings
Ref: https://github.com/teamcapybara/capybara/pull/1868
2017-06-08 11:14:54 +09:00
Akira Matsuda d1d39710cc Let's test nokogiri 1.8 against edge Rails, and vice versa 2017-06-06 17:32:49 +09:00
Rafael Mendonça França 62d316c6d8
Merge branch 'master' into unlock-minitest 2017-06-02 12:24:31 -04:00
Rafael França eb804ad5a7 Merge pull request #29187 from robin850/remove-mathn
Remove requirement on mathn
2017-05-30 11:37:15 -04:00
Robin Dupret ba84867549 Remove requirement on mathn
The test using mathn was first introduced in f1d9179 to check that the
`distance_of_time_in_words` properly doesn't use the `Fixnum#/` method
by explicitly requiring this library as it redefines this method.

Given that `mathn` has been gemified in Ruby 2.5 and is deprecated since
version 2.2, we can certainly safely assume that people will most-likely
not require this library in their application.

However, to make sure that we don't regress, let's add a test similar to
the one before f1d9179.
2017-05-30 13:46:21 +02:00
Koichi ITO 6c13663c2b Bump RuboCop to 0.49.1 2017-05-30 07:30:22 +09:00
Kasper Timm Hansen e1758b5e8c Merge branch 'master' into unlock-minitest 2017-05-29 20:37:35 +02:00
yuuji.yaginuma d4d44e7e1d Bump `delayed_job_active_record` gem 2017-05-28 21:33:16 +09:00
Matthew Draper d93cd4357b Switch to rb-inotify master
https://github.com/guard/rb-inotify/pull/49 has been merged.
2017-05-27 09:38:08 +09:30
Koichi ITO 525586417e Bump rubocop and dependent gem versions 2017-05-24 15:20:00 +09:00
Akira Matsuda 7a2041335f bundle up sidekiq to the one with safer integration with Rails 5
see: https://github.com/mperham/sidekiq/blob/master/5.0-Upgrade.md
2017-05-21 21:34:33 +09:00
Akira Matsuda d577e780ba bundle up redis to the one that does not warn about ::Fixnum deprecation 2017-05-21 12:33:47 +09:00
Akira Matsuda 45d7d80ea6 mathn has been gemified in ruby 2.5 2017-05-19 18:42:43 +09:00
Akira Matsuda 579757cbff bundle mail 2.6.5 that includes fix for ::Fixnum warning 2017-05-19 17:50:25 +09:00
yuuji.yaginuma 6086fbaecf Bump rack version 2017-05-16 07:25:56 +09:00
Justin Coyne 673a5644ac Allow capybara minor releases
Capybara 2.14.0 was released. Loosen the tight constraint in the
generated Gemfile, so that Rails applications can take advantage of the
new version
2017-05-05 10:26:59 -05:00
Ryuta Kamizono 626f3d6088 Don't pass `arel.engine` to `Arel::SelectManager.new`
The argument of `Arel::SelectManager.new` is `table`, not `engine`.

https://github.com/rails/arel/blob/v8.0.0/lib/arel/select_manager.rb#L10
2017-05-05 15:39:42 +09:00
Yasuo Honda 4d07e1c60b Use mysql2 0.4.6 to suport MySQL 8.0.1
Follow up #28733 and brianmario/mysql2#840
2017-05-04 13:35:23 +00:00
Rafael Mendonça França 1421950512
Add minitest-bisect as part of the gemfile 2017-04-26 22:54:54 -07:00
Rafael Mendonça França 2883d2dff6
Release minitest lock so we can fix the order dependent tests 2017-04-26 22:53:55 -07:00
Zachary Scott 8e98cdfe63 Ask for a sane version of SDoc
This will allow me to push a release, including bug fixes,
without having to update Rails everytime.
2017-04-23 16:32:57 +09:00
Rafael Mendonça França 0871e5e5c1
Fix all style guides violations
Closes #28382
Closes #28651
2017-04-19 20:13:42 -04:00
Kasper Timm Hansen 01caad190f Bump the bundled GlobalID version. 2017-04-16 17:40:00 +02:00
Matthew Draper 19ae6597b8 Revert "Avoid broken faraday 0.12.0 release"
This reverts commit 82a7593e3a.
2017-04-02 21:32:33 +09:30
Matthew Draper 82a7593e3a Avoid broken faraday 0.12.0 release 2017-04-02 18:18:52 +09:30
Matthew Draper 6c08d480f1 Start Rails 5.2 development 2017-03-22 10:11:39 +10:30
eileencodes eadbc82c47 Bump Capybara and include Minitest::Assertions
Capybara was updated in teamcapybara/capybara#1841 to use Minitest style
assertions so that system test output shows x number of assertions, x
numbe of failures, etc.

Before:

```
6 runs, 0 assertions, 0 failures, 0 errors, 0 skips
```

After:

```
6 runs, 7 assertions, 1 failures, 0 errors, 0 skips
```

This change bumps Capybara from 2.7.0 to 2.13.0 and includes the
required minitest assertion file in the test case. 🎉
2017-03-17 08:22:22 -04:00
Javan Makhmali 2d2b3025ec Restore action_cable.js UMD module support. Fixes #28366 2017-03-11 16:12:36 -05:00
Rafael Mendonça França f4acdd83ff
Preparing for 5.1.0.beta1 release 2017-02-23 14:53:21 -05:00
Rafael Mendonça França ea9566f6cd
Use released arel 2017-02-21 11:46:42 -05:00
eileencodes 1a0ca84a06 Move and rename system tests
* Move system tests back into Action Pack
* Rename `ActionSystemTest` to `ActionDispatch::SystemTestCase`
* Remove private base module and only make file for public
`SystemTestCase` class, name private module `SystemTesting`
* Rename `ActionSystemTestCase` to `ApplicationSystemTestCase`
* Update corresponding documentation and guides
* Delete old `ActionSystemTest` files
2017-02-20 15:07:35 -05:00
eileencodes 5bf0aa6745 Turn system testing into it's own gem and rename
Renames `Rails::SystemTestCase` to `ActionSystemTest` and moves it to a
gem under the Rails name.

We need to name the class `ActionSystemTestCase` because the gem expects
a module but tests themselves expect a class.

Adds MIT-LICENSE, CHANGELOG, and README for the future.
2017-02-20 15:07:33 -05:00
eileencodes 9730b1dba6 Add tests for system testing
* Adds test case test
* Adds driver adapter test
* Adds tests for capybara seleium driver (testing the settings not
actually opening the browser to test capybara w/ selenium because that
would so so so slow)
* Adds tests for rack test driver
* Adds tests for generators
2017-02-20 15:07:32 -05:00
Akira Matsuda c92520077c Test with the newest i18n
which is bundled in new apps by default
2017-02-11 06:12:07 +09:00
yuuji.yaginuma 4a694c19e2 Use released resque 2017-02-10 15:31:41 +09:00
Rafael Mendonça França f04a49b033
Fix rubocop violations 2017-02-09 23:13:41 -03:00
Akira Matsuda 6a1c0218df delayed_job and delayed_job_active_record gems with AR5 support are available 2017-01-29 09:05:06 +09:00
Akira Matsuda 786710b061 bundle update some gems
* puma 3.7.0: to let kill("TERM") properly terminate the process in railties test (3.6.2 doesnot on my machine)
* amq-protocol 2.1.0: to reduce warnings in AJ tests
* rails-html-sanitizer: missing change in a previous commit that updated Gemfile
2017-01-29 07:07:19 +09:00
Jeremy Evans 7da8d76206
Change ActionView ERB Handler from Erubis to Erubi
Erubi offers the following advantages for Rails:

* Works with ruby's --enable-frozen-string-literal option
* Has 88% smaller memory footprint
* Does no freedom patching (Erubis adds a method to Kernel)
* Has simpler internals (1 file, <150 lines of code)
* Has an open development model (Erubis doesn't have a
  public source control repository or bug tracker)
* Is not dead (Erubis hasn't been updated since 2011)

Erubi is a simplified fork of Erubis that contains just the
parts that are generally needed (which includes the parts
that Rails uses).  The only intentional difference in
behavior is that it does not include support for <%=== tags
for debug output.  That could be added to the ActionView ERB
handler if it is desired.

The Erubis template handler remains in a deprecated state
so that code that accesses it directly does not break.  It
can be removed after Rails 5.1.
2017-01-25 01:41:27 -07:00
Akira Matsuda 641a490e56 Revert "I guess we're ready for the randomized tests now"
This reverts commit 8c155c932f.

Not really 😢
2017-01-18 20:52:21 +09:00
Akira Matsuda 8c155c932f I guess we're ready for the randomized tests now 2017-01-18 18:27:05 +09:00
Rafael Mendonça França af5dd491b5
Fix all rubocop violations 2017-01-17 22:10:14 -05:00
toshimaru 6e30114c0a update rubocop to 0.47 2017-01-16 15:34:30 +09:00
Akira Matsuda 46fdbc5290 Revert "bundle u mocha"
This reverts commit 66e5b9d3f4.

We're seeing some test failures in AR postgresql tests
2017-01-16 00:16:41 +09:00
Akira Matsuda 66e5b9d3f4 bundle u mocha
I see no reason not to use the newest stable version.
2017-01-15 22:58:40 +09:00
Kir Shatrov 240f1e7162 Update builder gem to avoid deprecations of 2.4 2017-01-13 13:50:25 -05:00
Akira Matsuda 1db9e9e8f1 bundle u sqlite3
this fixes sqlite3-1.3.12/lib/sqlite3/pragmas.rb:301: warning: method redefined; discarding old integrity_check
2017-01-05 17:39:45 +09:00
Rafael Mendonça França e646bad5b7
Remove deprecated support to passing a column to #quote 2016-12-29 17:53:03 -05:00
Tony Arcieri c434b97628 Upgrade to nio4r 2.0.0
nio4r 2.0.0 primarily includes new features and bugfixes, with few breaking
changes. The primary reason for bumping the major version is dropping support
for all Ruby versions prior to 2.2.2, so as to match Rails 5.

Full release announcement here:

https://groups.google.com/forum/#!topic/socketry/ZDIUj1ufiJ8
2016-12-28 19:45:39 -08:00
Rafael Mendonça França fce3c0cf64
Upgrade gems 2016-12-28 00:34:59 -05:00
Matthew Draper 933ae2cc14 bundle update 2016-12-27 23:58:29 +10:30
Ryuta Kamizono 821e17de66 Restore missing Gemfile.lock entries
These lines were lost in 774be3ea3b (diff-e79a60dc6b85309ae70a6ea8261eaf95L204).
2016-12-27 00:51:07 +09:00
Matthew Draper 774be3ea3b bundle update 2016-12-26 23:17:54 +10:30
Zachary Scott eeb1926158 Bump sdoc to rc1 which includes zzak/sdoc#98 2016-12-25 17:55:21 +09:00
Akira Matsuda f28b8892ab bundle u rake to 12.0.0 2016-12-24 06:00:49 +09:00
Jon Moss b50090a561 Bump concurrent-ruby and sprockets
Bumped to Ruby 2.4 compatible versions
2016-12-20 15:07:33 -05:00
Bian Jiaping 88792b1b2e Fix rake guides:generate:kindle error 2016-12-18 23:13:50 +08:00
eileencodes 8a37ac9264 Bump coffee-script-source to fix bug
Coffee script 1.12.1 was released and contained a bug where coffee
script was undefined. 1.12.1 was yanked and 1.12.2 was released. This
bumps coffee-script-source so that CI Railties tests pass.

See: https://github.com/jashkenas/coffeescript/issues/4403
2016-12-16 10:43:44 -05:00
Guillermo Iguaran ffb81ad6e3 rails-ujs is now shipped with Action View 2016-11-29 09:48:19 -05:00
Rafael França 06d2049618 Merge pull request #27196 from kirs/rubocop-gem
Add rubocop to Gemfile
2016-11-28 17:32:48 +01:00
Kir Shatrov 61fa0a8675 Add rubocop to Gemfile 2016-11-28 10:28:21 -05:00
Guillermo Iguaran 277b5f9af8 Add rails-ujs as dependency in the rails Gemfile 2016-11-21 18:58:36 -05:00
Javan Makhmali 6f30cb3559 Bump Blade and its Sauce Labs plugin to fix tunnel shutdown and related error
https://travis-ci.org/rails/rails/jobs/165766716#L506
2016-11-21 09:49:59 -05:00
Jon Moss 3256dcd8b9 Install libxml-ruby gem so full XMLMini test suite can be run 2016-11-19 10:46:28 -05:00
Akira Matsuda 3a558aa2bc Make sure to bundle json 2.x on CI
Without this, bundler tries to bundle json 1.8 on Ruby 2.4 in some cases
https://travis-ci.org/rails/rails/jobs/175874852
2016-11-15 09:26:03 +09:00
Gianfranco Montoya 13441a77a6 Update sqlite3 2016-11-04 11:12:28 -05:00
Rafael França c05a209fe9 Merge pull request #26851 from Gaurav2728/update-kindlerb
update kindlerb gem
2016-10-25 14:19:12 -02:00
Guillermo Iguaran 52852733d2 Update mysql2 version in Gemfile.lock 2016-10-22 20:09:02 -05:00
Gaurav Sharma f0bacbc2c4 update kindlerb gem
Ruby Kindle periodical-format ebook generator
2016-10-21 09:37:24 +05:30
Zachary Scott db85fa1db4 Include sdoc 1.0.0.beta2 which includes updated rdoc w/o hard json dep 2016-10-07 18:51:27 +09:00
Zachary Scott 91efc4fc0b Bump sdoc to 1.0.0.beta1 which includes fix to support Ruby 2.4 2016-10-07 18:42:22 +09:00
Matthew Draper acd7ba795e Use a branch of websocket-client-simple, to work around read/close race 2016-10-06 12:51:26 +10:30
Ryuta Kamizono 432cc58a29 Restore missing Gemfile.lock entries
These lines were lost in https://github.com/rails/rails/pull/26695/files#diff-e79a60dc6b85309ae70a6ea8261eaf95L192.
2016-10-04 09:25:31 +09:00
Esteban Santana Santana ddddedc487 Allow the use of listen's 3.1.x branch.
When the initial evented monitor feature was written, the latest version of listen
was the 3.0.x series. Since then the listen project has moved on to the 3.1.x series.
This patch allows the use of the new versions.
2016-10-03 16:58:17 +05:30
Matthew Draper 7c812c2401 Use websocket-client-simple instead of Faye as a websockets client
Mostly, this is just to avoid EventMachine. But there's also an argument
to be made that we're better off using a different protocol library for
our test suite than the one we use to implement the server.
2016-10-02 12:25:33 +10:30
Ryuta Kamizono f88ed6020b Restore missing Gemfile.lock entries
These lines were lost in https://github.com/rails/rails/commit/12d5c210#diff-e79a60dc6b85309ae70a6ea8261eaf95L191.
2016-09-20 23:01:35 +09:00