| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Because method arguments are different in the methods provided by form
helpers and form builders, I think these are necessary to prevent
confusion.
Fixes #34787
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Host authentication introduced by #33145 allows only "0.0.0.0/0", "::/0"
and "localhost" in the development environment.
https://github.com/rails/rails/blob/4298df00ae6219b9b5b7c40f281d4fa4d66f4383/railties/lib/rails/application/configuration.rb#L33
But `rack-test` use `example.org` for default host.
https://github.com/rack-test/rack-test/blob/6c07bf53adf4a4082e206561f5b9b43142fdc821/lib/rack/test.rb#L13
Therefore, if `hosts` is not specified, host authentication rejects
the request.
In Travis CI, this problem does not occur because `test` is specified
by default in `RAILS_ENV` and `RACK_ENV`.
https://docs.travis-ci.com/user/environment-variables/#default-environment-variables
If user actually use it, env may not always be specified. Explicitly
specify hosts in the file so that it works in any environment.
|
|\
| |
| | |
Make Rails Facebook-free
|
|/
|
| |
If Basecamp is a Facebook-free business, then Rails should be Facebook-free framework.
|
|
|
|
| |
Ref: https://travis-ci.org/rails/rails/jobs/469956825#L1694
|
|\
| |
| | |
No need to handle if FrozenError is available
|
|/
|
|
|
|
|
| |
Rails 6 requires Ruby 2.5, which introduces `FrozenError`
https://docs.ruby-lang.org/en/2.5.0/NEWS.html
Related to #31520
|
|
|
|
| |
These were unused since 11af089cee0a0e744e267d32becfe2c66a586d31 and e35b98e6f5c54330245645f2ed40d56c74538902.
|
|\
| |
| | |
Fix app boot for Ruby 2.4
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I have a test app that was on Ruby 2.4. When I pulled Rails master the
app no longer would boot because of this change and I saw the following
error:
```
SyntaxError:
/Users/eileencodes/open_source/real_rails/railties/lib/rails/all.rb:18:
syntax error, unexpected keyword_rescue, expecting keyword_end
rescue LoadError
^
```
Ruby 2.4 doesn't support removing redundant begins so the real issue is
that this app is on Ruby 2.4 and not on Ruby 2.5. But it's super
confusing for a user to understand the reason the app is failing to boot
is because we need Ruby 2.5.
I added this redundant begin back because we need to give a clearer
error message.
|
|\
| |
| |
| |
| | |
eileencodes/raise-less-confusing-error-if-handler-doesnt-exist
Raise helpful error when role doesn't exist
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If you try to call `connected_to` with a role that doesn't have an
established connection you used to get an error that said:
```
>> ActiveRecord::Base.connected_to(role: :i_dont_exist) { Home.first }
ActiveRecord::ConnectionNotEstablished Exception: No connection pool
with 'primary' found.
```
This is confusing because the connection could be established but we
spelled the role wrong.
I've changed this to raise if the `role` used in `connected_to` doesn't
have an associated handler. Users who encounter this should either check
that the role is spelled correctly (writin -> writing), establish a
connection to that role in the model with connects_to, or use the
`database` keyword for the `role`.
I think this will provide a less confusing error message for those
starting out with multiple databases.
|
|\ \
| | |
| | | |
Fix Ruby 2.6 `warning: mismatched indentations at 'rescue' with 'def' at 15`.
|
|/ /
| |
| |
| | |
See https://travis-ci.org/rails/rails/jobs/470890129#L2361
|
| | |
|
|\ \
| | |
| | | |
Use BigDecimal provided methods to convert String to BigDecimal
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`String#to_d` does not raise an exception if an invalid value is specified.
So can remove exception handling.
```
$ bundle exec ruby -v -rbigdecimal -rbigdecimal/util -e 'p "123,003".to_d'
ruby 2.6.0dev (2018-12-21 trunk 66474) [x86_64-linux]
0.123e3
```
|
|\ \ \
| | | |
| | | | |
MySQL: `ROW_FORMAT=DYNAMIC` create table option by default
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Since MySQL 5.7.9, the `innodb_default_row_format` option defines the
default row format for InnoDB tables. The default setting is `DYNAMIC`.
The row format is required for indexing on `varchar(255)` with `utf8mb4`
columns.
As long as using MySQL 5.6, CI won't be passed even if MySQL server
setting is properly configured the same as MySQL 5.7
(`innodb_file_per_table = 1`, `innodb_file_format = 'Barracuda'`, and
`innodb_large_prefix = 1`) since InnoDB table is created as the row
format `COMPACT` by default on MySQL 5.6, therefore indexing on string
with `utf8mb4` columns aren't succeeded.
Making `ROW_FORMAT=DYNAMIC` create table option by default for legacy
MySQL version would mitigate the indexing issue on the user side, and it
makes CI would be passed on MySQL 5.6 which is configured properly.
|
|\ \ \ \
| | | | |
| | | | | |
Enable `Style/RedundantBegin` cop to avoid newly adding redundant begin block
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Currently we sometimes find a redundant begin block in code review
(e.g. https://github.com/rails/rails/pull/33604#discussion_r209784205).
I'd like to enable `Style/RedundantBegin` cop to avoid that, since
rescue/else/ensure are allowed inside do/end blocks in Ruby 2.5
(https://bugs.ruby-lang.org/issues/12906), so we'd probably meets with
that situation than before.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Module.delegate rdoc update to clarify :to parameter [ci skip]
|
| | | | | | |
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
Do no watch parent directory of `dirs`
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
`EventedFileUpdateChecker` will search the parent directory if the
specified directory does not exist.
Since `test/mailers/previews` is included in the watch target by default,
if there is no test directory (e.g. using `rspec`), the Rails root directory
will be included in the watch target.
```
$ rails new app
$ cd app
$ ./bin/rails r "p Rails.application.reloaders.last.send(:directories_to_watch).include?(Rails.root)"
false
$ rm -rf test
$ ./bin/rails r "p Rails.application.reloaders.last.send(:directories_to_watch).include?(Rails.root)"
true
```
This causes `node_modules` to be included in watch target. Adding parent
directories to watch target may include unexpected directories.
In order to avoid this, fixed that parents of nonexistent directories are
not added to the watch targets, instead checking that the directory
exists when checking changes.
Related to #32700.
[Matthew Draper & Yuji Yaginuma]
|
| |_|_|/ /
|/| | | |
| | | | |
| | | | | |
This is a regression test for #34751.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* Fix integer regex deprecation warnings for Ruby 2.6.0
* Define =~ in FakeZone to avoid warnings from Ruby 2.6.0
|
|\ \ \ \ \
| |_|/ / /
|/| | | | |
Follow up #34754
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
- Fix a few deprecation warnings
- Remove testing of `Hash#slice`
- Imporve test of `Hash#slice!`
- Remove mention about `Hash#slice` from the guide
|
| | | | |
| | | | |
| | | | |
| | | | | |
https://bugs.ruby-lang.org/issues/14132
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | | |
since Ruby 2.5
https://bugs.ruby-lang.org/issues/14133
|
| | | |
| | | |
| | | |
| | | | |
Follow up #34761.
|
|\ \ \ \
| | | | |
| | | | | |
Use native `Array#append`, `Array#prepend`, `Hash#transform_keys`, and `Hash#transform_keys!`
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
`Hash#transform_keys!`
Since Rails 6 requires Ruby 2.5.
https://github.com/ruby/ruby/blob/ruby_2_5/NEWS
Follow up #34754.
|
|\ \ \ \
| | | | |
| | | | | |
Unify _read_attribute definition to use &block
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Thanks to ko1, passing block parameter to another method is
significantly optimized in Ruby 2.5.
https://bugs.ruby-lang.org/issues/14045
Thus we no longer need to keep this ugly hack.
|
| | | | | |
|
|\ \ \ \ \
| |_|_|_|/
|/| | | | |
Require Ruby 2.5 for Rails 6.
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Generally followed the pattern for https://github.com/rails/rails/pull/32034
* Removes needless CI configs for 2.4
* Targets 2.5 in rubocop
* Updates existing CHANGELOG entries for fewer merge conflicts
* Removes Hash#slice extension as that's inlined on Ruby 2.5.
* Removes the need for send on define_method in MethodCallAssertions.
|
| | | | |
|
| |_|/
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This takes away the following log.
```
Error occurred while parsing request parameters.
Contents:
{:foo=>"heyo"}
```
Pass the correct value as JSON
|
| | |
| | |
| | |
| | | |
The indexing issue on `utf8mb4` columns is resolved since MySQL 5.7.9.
|
|\ \ \
| | | |
| | | | |
Single nest config in configuration guides
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
Double nesting of configuration is not supported (without using an
intermediate object), even though the docs suggest it is.
[ci-skip]
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
```
|
| | | |
|
|\ \ \
| | | |
| | | | |
Allow nil params on controller HTTP test methods
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Just testing that `after_action` is invoked before
`prepend_after_action`.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
the machine (#34735)
* Add option to set parallel test worker count to the physical core count of the machine
Also, use the physical core count of the machine as
the default number of workers, and generate the `test_helper.rb` file
with `parallelize(workers: :number_of_processors)`
Closes #34734
* Ensure that we always test parallel testing
Since #34734 we decided to use the physical core count of the machine as
the default number of workers in the parallel testing, we need to
ensure that some tests use at least 2 workers because we could
run those tests on VM that has only 1 physical core.
It also fixes tests failures on the CI since Travis server we are using
has only one physical core.
See https://travis-ci.org/rails/rails/jobs/469281088#L2352
|