| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | | |
|
|\ \ \
| | | |
| | | | |
Return truthy value from head method
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It was returning false in normal circumstances.
This broke the `head :ok and return if` construct.
Add appropriate test.
|
|\ \ \ \
| | | | |
| | | | | |
Use request.session.id instead of request.session_options[:id]
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
As of the upgrade to Rack 1.5, request.session_options[:id] is no
longer populated. Reflect this change in the tests by using
request.session.id instead.
Related change in Rack:
https://github.com/rack/rack/commit/83a270d6
|
|\ \ \ \
| |/ / /
|/| | | |
304 response should not include Content-Type header
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Rack::Lint raises an error saying "Content-Type header found in 304
response, not allowed".
|
|\ \ \ \
| |/ / /
|/| | | |
Let strip_tags leave HTML escaping to Rails.
|
| | | |
| | | |
| | | |
| | | | |
Prevents double escaping errors, such as "&" becoming "&".
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This fixes the reasons 4cf3b8a, 303567e, and fa63448 needed to be
reverted in 7142059. The revert has been reverted and this fixes
the issues caused previously.
If we call `super` first we will end up nuking the session settings in the
application tests that do `setup do` - so any session login or cookie
settings will not be persisted thoughout the test sessions.
Calling `super` last prevents `@integration_session` from getting nuked
and set to nil if it's already set.
Test added to prevent regression of this behavior in the future.
|
| | | |
| | | |
| | | |
| | | | |
This reverts commit 714205988315d2f98aa3e749747c44470e18676b.
|
|/ / /
| | |
| | |
| | | |
This is a follow-up to #19257
|
| | | |
|
|\ \ \
| | | |
| | | | |
Fix documentation of url_for module [ci skip]
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
- The request needs to be instance of ActionDispatch::Request or an
object that responds to host, optional_port, protocol and
symbolized_path_parameter.
- This documentation was correctly added in
https://github.com/rails/rails/commit/e3b3f416b57f5642ea25078485f7e9394ad04526
but was changed to
https://github.com/rails/rails/commit/e1ceae576e3911f3e6708b5d19a0e3ef63769eb7.
- Fixes #16160.
|
|\ \ \ \
| |/ / /
|/| | | |
Run all our tests in random order
|
| | | |
| | | |
| | | |
| | | | |
This reverts commit 7025d7769dc53f0a3ffab8b537727ef3fee367fc.
|
|/ / /
| | |
| | |
| | |
| | | |
This way we can get the relative_url_root from the application without
setting another global value
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
gsamokovarov/revert-ruby-2-2-0-kwarg-crash-workarounds
Revert work arounds for upstream Ruby 2.2.0 kwargs bug
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The bug caused a segfault and you can find more info about it at:
https://bugs.ruby-lang.org/issues/10685.
We did a couple of work arounds, but 2.2.1 rolled out and those aren't
needed anymore.
Here are the reverted commits:
- Revert "Work around for upstream Ruby bug #10685",
commit 707a433870e9e06af688f85a4aedc64a90791a64.
- Revert "Fix segmentation fault in ActionPack tests",
commit 22e0a22d5f98e162290d9820891d8191e720ad3b.
I'm also bumping the Ruby version check to 2.2.1 to prevent future
segfaults.
|
|\ \ \ \
| | | | |
| | | | | |
Added doc [ci skip]
|
| | | | | |
|
|/ / / / |
|
|/ / / |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
If you would like to use a custom request class, please subclass and implemet
the `request_class` method.
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | | |
Fallback to RAILS_RELATIVE_URL_ROOT in `url_for`
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fixed an issue where the `RAILS_RELATIVE_URL_ROOT` environment
variable is not prepended to the path when `url_for` is called.
If `SCRIPT_NAME` (used by Rack) is set, it takes precedence.
|
|\ \ \ \
| | | | |
| | | | | |
Work around for upstream Ruby bug #10685
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
In f6e293ec54f02f83cdb37502bea117f66f87bcae we avoided a segfault in the
tests, however I think we should try to avoid the crash, as it may
happen in user code as well.
Here is what I distiled the bug down to:
```ruby
# Rails case - works on 2.0, 2.1; crashes on 2.2
require 'action_dispatch'
ActionDispatch::Response.new(200, "Content-Type" => "text/xml")
# General case - works on 2.0, 2.1; crashes on 2.2
def foo(optional = {}, default_argument: nil)
end
foo('quux' => 'bar')
```
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Partition routes during setup.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Partitioning of all the routes is currently being done during the
first request. Since there is no need to clear the cache for
`partitioned_routes` when adding a new route. We can move the
partitioning of the routes during setup time.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
[ci skip] Add documentation for Helpers#all_helpers_from_path
|
| | | | | | | |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
this patch makes errors slightly more expensive when someone is missing
a route key, but in exchange it drops 4 allocations per `url_for` call.
Since missing a route key is an error, optimizing for the non-error path
seems like a good trade off
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
we already know the length of the args, so we can use that length for
parallel iteration and cut down on allocations for `url_for` calls.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
this centralizes the logic for determining the script name key and drops
object allocations when calling `engine_script_name` (which is called on
each `url_for`).
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Since there are disparities between the raised error messages on the
different implementations, let's avoid being too accurate.
|
|/ / / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Since the `ForkingExecutor` class seems to be pretty slow on Rubinius
due to DRb (c.f. http://git.io/xIVg), let's avoid running tests with
it on this platform.
Also, the `parallelize_me!` call make the suite to output a bunch of
errors due to rubinius/rubinius#2934 since there are thread-safety
problems with autoloading.
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
```ruby
article = Article.new.tap(&:save!)
view.url_for article
result = ObjectSpace::AllocationTracer.trace do
3000.times { view.url_for article }
end
p ObjectSpace::AllocationTracer.allocated_count_table[:T_STRING] / 3000
```
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
I found that nil values were being incorrectly sent to
`parse_nested_query` in Rack. Originally it was thought that Rails was
doing something incorrect but it was actually rack-test. This was fixed
in brynary/rack-test@4a4b2c1 and is no longer an issue. This commit
bumps rack-test in Rails so changes to Rack don't cause failures.
See rack/rack#813 for more information.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
_generate_paths_by_default wasn't used in AD::Routing::UrlFor, so we
should be able to move it where it is used in AV::Routing
|
|\ \ \ \ \ \
| |_|/ / / /
|/| | | | | |
|