| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
Remove check for caller_locations in Rails::Engine
|
| |
| |
| |
| | |
This is no longer necessary, as the minimum version requirement for Ruby is 2.2.2, and the `caller_locations` feature was added in Ruby 2.0.0. Since Rails no longer supports pre 2.0 versions of Ruby, there is no need to check first if the Kernel does respond to `caller_locations`. The answer is: yes it does.
|
|\ \ |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit 37423e4ff883ad5584bab983aceb4b2b759a1fd8.
Jeremy is right that we shouldn't remove this. The fact is that many
engines are depending on this middleware to be in the default stack.
This ties our hands and forces us to keep the middleware in the stack so
that engines will work. To be extremely clear, I think this is another
smell of "the rack stack" that we have in place. When manipulating
middleware, we should have meaningful names for places in the req / res
lifecycle **not** have engines depend on a particular constant be in a
particular place in the stack. This is a weakness of the API that we
have to figure out a way to address before removing the constant.
As far as timing attacks are concerned, we can reduce the granularity
such that it isn't useful information for hackers, but is still useful
for developers.
|
|\ \ \
| | | |
| | | | |
use class to specify the middleware [ci skip]
|
| | | |
| | | |
| | | |
| | | | |
using string for middleware class names is deprecated in 83b767cef90abfc4c2ee9f4b451b0215501fae9a
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The runtime header is a potential target for timing attacks since it
returns the amount of time spent on the server (eliminating network
speed). Total time is also not accurate for streaming responses.
The middleware can be added back via:
```ruby
config.middleware.ues ::Rack::Runtime
```
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`default_middleware_stack` seems to kick off the `on_load` calls that
may mutate the middleware stack. We have to call that method before
merging middleware stacks, otherwise the middleware stacks get mutated
*after* the app middleware stack is built.
|
| | |
| | |
| | |
| | |
| | | |
We shouldn't merge the app middleware in to the config middleware for
engines.
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
jeremy/sprockets/move-asset-manifest-from-toplevel-to-config-subdir
Eliminate overlapping `app/assets` load path
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* Move `app/assets/manifest.js` to `app/assets/config/manifest.js`.
Avoid the suggestion that you can/should deep-link `stylesheets/foo`.
* Pull in all toplevel stylesheets and JavaScripts, not just
`application.js` and `.css`. Demonstrate how to use `link_directory`
with a specified `.js`/`.css` type.
* Fix RAILS_ENV handling in assets tests.
* Shush warnings spam from third-party libs that distract from tests.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Allocating a new middleware proxy in each application configuration and
then merging the app specific config with the global config when the app
is built.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Passing `--fail-fast` to the test runner will now abort the test run
on the first failure. The run continues on any unexpected errors.
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Any failures or errors will be reported inline during the run by default.
Skipped tests will be reported if run in verbose mode.
Any result is output with failure messages and a rerun snippet for that test.
Rerun snippets won't be output after a run, unless `--defer-output` is passed.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This removes the following warning.
```
railties/lib/rails/test_unit/minitest_plugin.rb:45: warning: instance variable @rake_patterns not initialize
```
|
| | |
| | |
| | |
| | | |
Accessing mime types via constants is deprecated.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
generator
This is follow up to #6643.
In #6643, the controller generator only had been fixed, in this commit to fix the scaffold generator.
|
|/ /
| |
| |
| |
| | |
This can still be added to the middleware stack, but is really not
necessary. I'll follow up with a commit that deprecates the constant
|
| |
| |
| |
| |
| | |
When config `action_mailer.show_previews` is set, previews are displayed
regardless of local request check.
|
| | |
|
|\ \
| | |
| | | |
Updated MySQL documentation link to MySQL latest version 5.7 everywhe…
|
| | |
| | |
| | |
| | |
| | | |
skip]
Bumps from `5.6` to `5.7`
|
|/ / |
|
| | |
|
|\ \
| | |
| | | |
raise LoadError when a non-existent file or directory is specified to the test runner
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
test runner sets file to be tested in plugin_rails_options,
but in plugin_rails_options, processing has been made to the argument of the
actual command rather than the argument of Minitest.run.
For example, if you run `./bin rake db:migrate test`, the options[:patterns], `db:migrate test` was incorrectly set.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
test runner
Currently, if a file or directory that does not exist was specified in the test runner,
that argument is ignored.
This commit has been modified to cause an error if there is no file or directory.
|
|/ / |
|
| | |
|
| |
| |
| |
| |
| |
| | |
I do not know why files under the support has been require.
However, under the support even rails application does not use.
In addition, since the default under the support file nor is generated, it requires I think not necessary
|
|\ \
| | |
| | | |
Use the PORT environment variable for rails server
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
|/ / |
|
| | |
|
| |
| |
| |
| |
| |
| | |
The semantic versioning specification uses MAJOR.MINOR.PATCH – it would
make more sense to set the version to 0.1.0 for initial development
since a patch release cannot be created before a minor feature release.
|
| |
| |
| |
| |
| |
| | |
* Add missing `def` and remove useless `do` keywords.
* Move `:nodoc:` in front of the methods' definition so that methods
under these ones are correctly visible on the API.
|
|\ \
| | |
| | | |
Replace the giant comment in routes.rb with a link to the guides
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This comment not only serves no purpose, but in my experience is
actively detrimental to new developers getting started with Rails.
Expereinced developers just end up deleting this comment, and are
annoyed that they had to take this step. I also spend a lot of time
mentoring brand new developers, and a consistent theme I've seen is that
this comment just ends up intimidating them, and making them think it's
dangerous to edit this file.
One of my students just said this (due to the number of comments which
even new developers don't actually read, they just see it as a sign that
this thing is "dangerous").
> I don't edit any file that Rails generates for me, until my instructor
> says that it's OK to do so.
Realistically, this comment adds 0 value. We have very good
documentation, which we can just link to instead. If someone is truly
new enough to benefit from this info, they presumably just ran `gem
install rails`, and have an internet connection that they can use to
read the routing guide.
The choice of language here was very specific. I chose "the DSL
available" over "what is possible", because a consistent theme I've
noticed among my students is that they aren't aware that this is
actually a Ruby file, and can write any Ruby code here that they want.
This file is not the only offender, but is by far the biggest point of
pain that I've seen, and felt it was a good spot to open this
discussion.
|
|\ \ \
| | | |
| | | | |
Reload I18n.load_path in development
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
make generated scaffold functional tests work inside API engines
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* set engine's route in setup
* use fixture with engine namespace
|
|/ / / / |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Using the string version of the class reference is now deprecated when
referencing middleware. This should be written as a class not as a string.
Deprecation warning that this change fixes:
```
DEPRECATION WARNING: Passing strings or symbols to the middleware
builder is deprecated, please change
them to actual class references. For example:
"ActionDispatch::ShowExceptions" => ActionDispatch::ShowExceptions
```
|