| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| | |
This reverts commit 254c04286c5916ae7f91eb6e173b312e7a74e364, reversing
changes made to 513a0525c24c2944630acfa465b22cd2f4601adf.
|
|\ \
| |/
|/| |
Resolver concurrency fix
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Template cache in the Resolver can be accessed by multiple threads
similtaneously in multi-threaded environments. The cache is implemented
using a Hash, which isn't threadsafe in all VMs (notably JRuby).
This commit extracts the cache to a new Cache class and adds mutexes to
prevent concurrent access.
|
|\ \
| | |
| | | |
When a route references a missing controller, raise ActionController::RoutingError with clearer message
|
| | |
| | |
| | |
| | | |
ActionController::RoutingError with a clearer message
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Although no recognized formats use non-ASCII characters, sometimes they
can be included in the :format parameter because of invalid URLS. To
prevent encoding incompatibility errors we need to escape them before
passing the path to URI.unescape.
Closes #4379
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Passing path parameters with invalid encoding is likely to trigger errors
further on like `ArgumentError (invalid byte sequence in UTF-8)`. This will
result in a 500 error whereas the better error to return is a 400 error which
allows exception notification libraries to filter it out if they wish.
Closes #4450
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Currently Rack raises a TypeError when it encounters a malformed or
ambiguous hash like `foo[]=bar&foo[4]=bar`. Rather than pass this
through to the application this commit captures the exception and
re-raises it using a new ActionController::BadRequest exception.
The new ActionController::BadRequest exception returns a 400 error
instead of the 500 error that would've been returned by the original
TypeError. This allows exception notification libraries to ignore
these errors if so desired.
Closes #3051
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Before this change, assert_recognizes, assert_generates, and
assert_routing raised ActionController::RoutingError when they failed to
recognize the route.
This commit changes them to raise Assertion instead. This aligns with
convention for logical failures, and supports reporting tools that care
about the difference between logical failures and errors e.g. the
summary at the end of a test run.
- Fixes #5899
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Make the method API more clear by explicitly showing the expected
arguments. This means that the options cannot be passed as second
argument because we are not relying on extract_options! anymore,
you are expected to give a selected key or `nil` if you want to pass
options, as it is the last argument.
Notice that this does not change the current method arguments contract
available in 3.2, it just brings back the same functionality with the
divider addition.
|
|\ \ \
| | | |
| | | | |
Tidied and standardised text_helper implementations.
|
| | | | |
|
| | | | |
|
|/ / /
| | |
| | |
| | | |
escaping of delimiters and separators
|
|\ \ \
| | | |
| | | | |
Add some common Array methods to the middleware stack
|
| | |/
| |/|
| | |
| | |
| | |
| | | |
The docs suggest that the middleware stack is an Array, so I've added
the unshift method to it. Originally I added some more Array methods,
but it was agreed that they lacked usecases.
|
|\ \ \
| | | |
| | | | |
Render img tag with empty src if empty string is passed to image_tag.
|
| |/ / |
|
|/ / |
|
| | |
|
|\ \
| | |
| | | |
TagHelper creates invalid data attributes when value is a BigDecimal
|
| | | |
|
|\ \ \
| |/ /
|/| | |
Created a Raw handler for templates.
|
| | |
| | |
| | |
| | | |
Fixes #2394
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
Greenie0506/add_separator_to_grouped_options_for_select
Add separator option to grouped_options_for_select
|
| | | |
| | | |
| | | |
| | | | |
Change prompt to options hash in grouped_options_for_select
|
|\ \ \ \
| |/ / /
|/| | | |
Feature/simple format refactoring
|
| |/ / |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
option from `submit_tag`, `button_tag` and `button_to` helpers.""
Finally remove `:disable_with` but use `:data => { :disable_with => ... }`
in examples to show off a better API (which looks nicer in Ruby 1.9)
This reverts commit a5c38a9c087e33d36397afc496be7c8e01b37ef0.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`submit_tag`, `button_tag` and `button_to` helpers."
`disable_with:` is much easier to type than `"data-disable-with" =>`,
and the fact it uses "data-disable-with" => is an implementation concern,
it should not affect the public API.
This reverts commit 683fc4db00f496e5225928afb4d4e932e0fcdc48.
|
| | | |
|
|/ /
| |
| |
| | |
`submit_tag`, `button_tag` and `button_to` helpers.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Support data: url scheme
Conflicts:
actionpack/lib/action_view/asset_paths.rb
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
acapilleri/select_with_required_true_include_first_option_blank
HTML5 validation error with options_from_collection_for_select
Fixes #5908
Conflicts:
actionpack/CHANGELOG.md
|
| | |
| | |
| | |
| | | |
and display size 1 and not multiple attribute, Fixes #5908
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This commit improves the handling of default_url_options in integration
tests by making behave closer to how a real application operates.
Specifically the following issues have been addressed:
* Options specified in routes.rb are used (fixes #546)
* Options specified in controllers are used
* Request parameters are recalled correctly
* Tests can override default_url_options directly
|
| | |
|
| | |
|