| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|\ \
| | |
| | | |
Require "active_support/core_ext/object/blank" for railties abstract unit
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In #25380 I moved an `active_support/core_ext/object/blank` in the
`activesupport/lib/active_support/testing/assertions.rb`, however it caused a
chain reaction, resulting in failing railties tests.
Moving the require to `railties/test/isolation/abstract_unit.rb` and
`activesupport/test/abstract_unit.rb`.
|
|\ \ \
| |/ /
|/| | |
Generate application_record.rb file before model file
|
| | |
| | |
| | |
| | |
| | |
| | | |
Previously model file was generated first, which resulted in
inheriting from `ActiveRecord::Base`, but since application_record.rb
is generated as well, it should already be used.
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
y-yagi/generate_mailer_layout_files_if_it_does_not_already_exist
generate mailer layout files if it does not already exist
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Currently, if `ApplicationMailer` does not exist, it is generated when
run the mailer generator, but layouts files does not generate.
However, because it uses the layouts in `ApplicationMailer`,
layouts are required.
Follow up to #24161
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Forgotten followup to #23669 :grimacing:
If you went to an internal route (e.g. `/rails/info/routes`), you would
previously see the following in your logger:
```bash
Processing by Rails::InfoController#routes as HTML
Parameters: {"internal"=>true}
Rendering /Users/jon/code/rails/rails/railties/lib/rails/templates/rails/info/routes.html.erb within layouts/application
Rendered collection of /Users/jon/code/rails/rails/actionpack/lib/action_dispatch/middleware/templates/routes/_route.html.erb [2 times] (10.5ms)
Rendered /Users/jon/code/rails/rails/actionpack/lib/action_dispatch/middleware/templates/routes/_table.html.erb (2.5ms)
Rendered /Users/jon/code/rails/rails/railties/lib/rails/templates/rails/info/routes.html.erb within layouts/application (23.5ms)
Completed 200 OK in 50ms (Views: 35.1ms | ActiveRecord: 0.0ms)
```
Now, with this change, you would see:
```bash
Processing by Rails::InfoController#routes as HTML
Rendering /Users/jon/code/rails/rails/railties/lib/rails/templates/rails/info/routes.html.erb within layouts/application
Rendered collection of /Users/jon/code/rails/rails/actionpack/lib/action_dispatch/middleware/templates/routes/_route.html.erb [2 times] (1.6ms)
Rendered /Users/jon/code/rails/rails/actionpack/lib/action_dispatch/middleware/templates/routes/_table.html.erb (10.2ms)
Rendered /Users/jon/code/rails/rails/railties/lib/rails/templates/rails/info/routes.html.erb within layouts/application (17.4ms)
Completed 200 OK in 44ms (Views: 28.0ms | ActiveRecord: 0.0ms)
```
|
|\ \ \
| | | |
| | | | |
Fix API controller tests by assigning them the encoding type
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
- Fixes #25183.
- The `as: :json` feature was added in
https://github.com/rails/rails/pull/21671 and recommended to use for
JSON endpoints so let's use it by default for API controller tests.
|
|\ \ \ \
| |/ / /
|/| | | |
reference actual class to use middleware
|
| | |/
| |/|
| | |
| | | |
Using strings for middleware class names is deprecated in 83b767cef90abfc4c2ee9f4b451b0215501fae9a.
|
| | |
| | |
| | |
| | | |
- Adjusted tests instead.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
request_forgery_protection configs
- Earlier per_form_csrf_tokens and request_forgery_protection config
files were generated for old apps upgraded to Rails 5.
- But when we collapsed all initializers into one file, the entire file
does not get created for old apps.
- This commit fixes it and also changes values for all new defaults for
old apps so that they will not break.
- Also added a test for `rails app:update`.
|
| |
| |
| |
| |
| |
| | |
- Adjusted tests also for this new behavior.
- Based on the discussion in
https://github.com/rails/rails/pull/25184#issuecomment-222454583.
|
| |
| |
| |
| |
| |
| | |
- These initializers are new defaults for Rails 5 and newly generated
apps do not need to change them.
- Fixes #25181
|
| |
| |
| |
| | |
Follow up to e45f388.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When changing the generated integration tests to assert redirects with
an absolute path this redirection check in `assert_redirected_to` against
the absolute response location would now pass:
https://github.com/rails/rails/blob/af245aaf3a1c447752a1b5895adddc66e5f73c00/actionpack/lib/action_dispatch/testing/assertions/response.rb#L55
Thus we'd break early instead of hitting `assert_operator` and have
2 fewer assertions per `assert_redirected_to` as `assert_operator`
is composed of 2 assertions internally:
https://github.com/seattlerb/minitest/blob/4e146b1515b19a5c474e39c174b037510f6dbc6e/lib/minitest/assertions.rb#L254-L258
Deduct 2 assertions for 2 redirects taking the expected count down by 4
in total for the two failing tests.
|
| |
| |
| |
| | |
- Fixes #25180
|
| |
| |
| |
| | |
environments
|
|\ \
| | |
| | | |
Cable: Generate .js or .coffee files while generating channel as per the javascript engine of the application
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
javascript engine of the application
- Now we will detect what javascript engine user is using and based on
that we will generate either `.js` or `.coffee` version of the channel
file.
- This also needs a change in coffee-rails to override the `js_template`
method. Related PR https://github.com/rails/coffee-rails/pull/72.
- Currently coffee-rails gem sets
`config.app_generators.javascript_engine` to `:coffee` and using this
information we override the `js_template` to set the extension as
`.coffee` in coffee-rails gem.
- Using this approach, we can keep the `channel.js` and `channel.coffee`
files in the Rails repository itself.
- Additionally the `js_template` method can act as public interface for
coffee-rails gem to hook into and change the extension to `.coffee`
without maintaining the actual asset files.
[Prathamesh Sonpatki, Matthew Draper]
|
|/
|
|
|
| |
Sorry, I missed a few places in my last PR. This should be the last of
'em :grimacing:
|
|
|
|
| |
It is related with https://github.com/rack/rack/commit/7b66d2cdb80a4d6b44fa8c61d92e25fbbda1f152
|
|
|
|
| |
[ci skip]
|
|\
| |
| | |
remove unnessary option setting from test runner
|
| |
| |
| |
| |
| | |
In order to prevent `OptionParser::ParseError` when specify the rake options to
`routes` task.
|
| |
| |
| |
| |
| |
| |
| | |
If run the test over the `rake` command, because of the test patterns is passed
via `rake_run` method, do not need to be obtained from the argv.
This probably fixes #24372.
|
| |
| |
| |
| | |
- Followup of https://github.com/rails/rails/pull/24709.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In Ruby 2.4 the `to_time` method for both `DateTime` and `Time` will
preserve the timezone of the receiver when converting to an instance
of `Time`. Since Rails 5.0 will support Ruby 2.2, 2.3 and later we
need to introduce a compatibility layer so that apps that upgrade do
not break. New apps will have a config initializer file that defaults
to match the new Ruby 2.4 behavior going forward.
For information about the changes to Ruby see:
https://bugs.ruby-lang.org/issues/12189
https://bugs.ruby-lang.org/issues/12271
Fixes #24617.
|
|/ |
|
| |
|
| |
|
|\
| |
| | |
Added notice when a database is successfully created or dropped.
|
| | |
|
|/
|
|
| |
`cable.js` is required for other Channels.
|
|
|
|
|
|
|
|
|
| |
- Before this, while generating a channel, we were not creating
`cable.js` if it does not already exist.
- We have similar code for application mailer here -
https://github.com/rails/rails/commit/0b3ae023d27197417541932632055cd6be4810c4.
- Based on the comment -
https://github.com/rails/rails/issues/24418#issuecomment-205421995.
|
|
|
|
|
|
| |
This was added in a4c358f, but `config.assets` has been removed in 5172d93.
Also, do not use env path to `Sprockets::Cache::FileStore` even `sprockets-rails`.
ref: https://github.com/rails/sprockets-rails/blob/master/lib/sprockets/railtie.rb#L129
|
|\
| |
| | |
generate ApplicationJob if it does not already exist
|
| |
| |
| |
| |
| |
| | |
ActiveJob jobs now inherit from ApplicationJob by default.
However, when updating to Rails 5 from the old Rails,
since there is a possibility that ApplicationJob does not exist.
|
| |
| |
| |
| |
| |
| | |
* Updated syntax
* Updated tests to match syntax
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- We need to pass the restart command to Puma so that it will use it
while restarting the server.
- Also made sure that all the options passed by user while starting
the server are used in the generated restart command so that they will
be used while restarting the server.
- Besides that we need to remove the server.pid file for the previous running
server because otherwise Rack complains about it's presence.
- We don't care if the server.pid file does not exist. We only want to delete
it if it exists.
- This also requires some changes on Puma side which are being tracked
here - https://github.com/puma/puma/pull/936.
- Fixes #23910.
|
|\
| |
| | |
Correctly generate application_mailer.rb in mountable engines
|
| |
| |
| |
| | |
- Followup of https://github.com/rails/rails/pull/24161.
|
|\ \
| | |
| | | |
changed default value of `caching` option to `nil`
|
| |/
| |
| |
| |
| |
| |
| | |
The default is that's false, caching even if you do not specify the caching option is determined not to use,
and `tmp/caching-dev.txt` will be deleted.
If it is this, regardless of whether or not there is `tmp/caching-dev.txt`, be sure to order would be necessary to specify the caching option,
I think that in than good to so as not to do anything by default.
|
|\ \
| | |
| | |
| | | |
Comment out config.file_watcher during Rails upgrade process
|
| |/
| |
| |
| | |
[related #24243]
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
| |
Due to that `ActionDispatch::Flash` (the flash API's middleware) is not
included for API controllers, the `request.reset_session` method, which
relies on there being a `flash=` method which is in fact defined by the
middleware, was previously breaking. Similarly to how
add46482a540b33184f3011c5c307f4b8e90c9cc created a method to be
overridden by the flash middleware in order to ensure non-breakage, this
is how flashes are now reset.
Fixes #24222
|