aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/CHANGELOG.md
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #22854 from jcoyne/missing_templateSean Griffin2016-03-111-0/+7
|\ | | | | | | Default rendering behavior if respond_to collector doesn't have a block.
| * Render default template if block doesn't renderJustin Coyne2016-02-251-0/+7
| | | | | | | | | | | | | | | | When a `respond_to` collector doesn't have a response, then a `:no_content` response should be rendered. This brings the default rendering behavior introduced by https://github.com/rails/rails/issues/19036 to controller methods employing `respond_to`
* | Add `ActionController::Parameters#dig`Sean Griffin2016-03-091-0/+5
| | | | | | | | | | | | This method will only be added when used with Ruby 2.3.0 or greater. This method has the same behavior as `Hash#dig`, except it will convert hashes to `ActionController::Parameters`, similar to `#[]` and `#fetch`.
* | Add changelog entry for #24115 [ci skip]Rafael Mendonça França2016-03-091-0/+5
| |
* | Merge pull request #24086 from yui-knk/do_not_ad_integration_test_classYves Senn2016-03-071-0/+5
|\ \ | | | | | | | | | Prevent not-intended loading of `ActionDispatch::IntegrationTest`
| * | Prevent not-intended loading of `ActionDispatch::IntegrationTest`yui-knk2016-03-071-0/+5
|/ / | | | | | | | | | | | | | | | | | | After 9d378747326d26cf1afdac4433ead22967af0984 `ActionDispatch::IntegrationTest` class is loaded and defined in all Rails environments, not only test but also production. This is not-intended loading of a class which is only used in test environment. To prevent not-intended loading, add `ActiveSupport.run_load_hooks` to `ActionDispatch::IntegrationTest` with `action_dispatch_integration_test` name and use it in `ActionMailer`.
* / Revert "Merge pull request #20851 from tomprats/indifferent-sessions"Matthew Draper2016-02-261-9/+0
|/ | | | | | | This reverts commit 22db455dbe9c26fe6d723cac0758705d9943ea4b, reversing changes made to 40be61dfda1e04c3f306022a40370862e3a2ce39. This finishes off what I meant to do in 6216a092ccfe6422f113db906a52fe8ffdafdbe6.
* Lock down new `ImplicitRender` behavior for 5.0 RCGodfrey Chan2016-02-251-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Conceptually revert #20276 The feature was implemented for the `responders` gem. In the end, they did not need that feature, and have found a better fix (see plataformatec/responders#131). `ImplicitRender` is the place where Rails specifies our default policies for the case where the user did not explicitly tell us what to render, essentially describing a set of heuristics. If the gem (or the user) knows exactly what they want, they could just perform the correct `render` to avoid falling through to here, as `responders` did (the user called `respond_with`). Reverting the patch allows us to avoid exploding the complexity and defining “the fallback for a fallback” policies. 2. `respond_to` and templates are considered exhaustive enumerations If the user specified a list of formats/variants in a `respond_to` block, anything that is not explicitly included should result in an `UnknownFormat` error (which is then caught upstream to mean “406 Not Acceptable” by default). This is already how it works before this commit. Same goes for templates – if the user defined a set of templates (usually in the file system), that set is now considered exhaustive, which means that “missing” templates are considered `UnknownFormat` errors (406). 3. To keep API endpoints simple, the implicit render behavior for actions with no templates defined at all (regardless of formats, locales, variants, etc) are defaulted to “204 No Content”. This is a strictly narrower version of the feature landed in #19036 and #19377. 4. To avoid confusion when interacting in the browser, these actions will raise an `UnknownFormat` error for “interactive” requests instead. (The precise definition of “interactive” requests might change – the spirit here is to give helpful messages and avoid confusions.) Closes #20666, #23062, #23077, #23564 [Godfrey Chan, Jon Moss, Kasper Timm Hansen, Mike Clark, Matthew Draper]
* Preparing for 5.0.0.beta3 releaseeileencodes2016-02-241-0/+2
| | | | Adds changelog headers for beta3 release
* No need CHANGELOG entry for #23849.Rafael Mendonça França2016-02-241-16/+0
| | | | | | | It is not a released feature so we don't need to add changelogs to changes on it. [ci skip]
* Show permitted flag in the output of AC::Parameters#inspectPrathamesh Sonpatki2016-02-241-4/+20
| | | | - Fixes #23822.
* Merge pull request #20851 from tomprats/indifferent-sessionsRafael Mendonça França2016-02-241-0/+9
|\ | | | | | | Give Sessions Indifferent Access
| * Update session to have indifferent accessTom Prats2016-01-291-0/+9
| |
* | application/gzip added as default mime type into mime type listMehmet Emin İNAÇ2016-02-131-0/+4
| |
* | Add fixes accidentally removed.Kasper Timm Hansen2016-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Yesterday, when improving how `parsed_body` extracted a parser I wrote 77bbf1e. Then I thought that was too many changes in one commit and broke it up locally... or so I thought. When pushed the extra commits removed the changes! Wups! In shame, lob those changes together here: * 3b94c38 which meant to fix the CHANGELOG syntax error. * 5007df5 which meant to mention `parsed_body` in the docs. * 036a7a0 which meant to memoize the `parsed_body`.
* | Flesh out request encoding + response parsing changelog entry.Kasper Timm Hansen2016-02-121-2/+11
| | | | | | | | | | | | | | Add more info about the APIs added and how they work. Use string keys when comparing the parsed response, like how JSON would be parsed.
* | use rails instead of rakeGaurav Sharma2016-02-121-2/+2
| | | | | | since starting with Rails 5.x(beta) we prefer to use rails as the replacement of rake commands, may be change log will be the same
* | - Fixed and removed long arguments to rake routesVipul A M2016-02-121-2/+1
| | | | | | | | | | | | - Fixed related documentation and usage all around Fixes #23561
* | Add request encoding and response parsing to changelog.Kasper Timm Hansen2016-02-101-0/+38
| | | | | | | | | | Forgot to add this in the original pull request. No biggie, just show some examples.
* | Add SVG as a default mime typeDavid Heinemeier Hansson2016-02-071-0/+4
| |
* | Update CHANGELOG.mdKang-Kyu Lee2016-02-011-2/+2
| | | | | | fix indentation to show it as code
* | Add some Action Cable CHANGELOG entriesRafael Mendonça França2016-02-011-3/+0
| | | | | | | | | | | | And improve changelongs. [ci skip]
* | Preparing for Rails 5.0.0.beta2Sean Griffin2016-02-011-1/+6
| |
* | Add options for rake routes taskVipul A M2016-02-021-0/+10
|/ | | | | | | | | | Add two options: `-c` and `-g`. `-g` option returns the urls name, verb and path fields that match the pattern. `-c` option returns the urls for specific controller. Fixes #18902, and Fixes #20420 [Anton Davydov & Vipul A M]
* rm changelog for unreleased changes fixesVipul A M2016-01-221-4/+0
| | | | | | Based on https://github.com/rails/rails/pull/23167/files#r50507317 [ci skip]
* Fix `ActionController::Parameters#==` bugJon Moss2016-01-211-0/+4
| | | | See bug #21032.
* Response etags to always be weak: Prefixed W/ to value returned by ↵abhishek2016-01-201-0/+8
| | | | ActionDispatch::Http::Cache::Response#etag= such that etags set in fresh_when and stale? are weak. For #17556.
* Pass through AP CHANGELOG [ci skip]Vipul A M2016-01-181-2/+2
|
* docs, formatting pass over changelogs. [ci skip]Yves Senn2016-01-131-4/+4
|
* Add both HTTP Response Code and Type to assertion messagesSean Collins2016-01-121-0/+4
| | | | | Also, refactor logic to convert between symbol and response code, via the AssertionResponse class
* Fix typo in ActionPack CHANGELOG [ci skip]Prathamesh Sonpatki2016-01-081-1/+1
|
* add gregBen Toews2016-01-071-1/+1
|
* Better error message when running `rake routes` with CONTROLLER arg:Edouard CHIN2016-01-071-0/+8
| | | | | | | - `CONTROLLER` argument can now be supplied in different ways (Rails::WelcomeController, Rails::Welcome, rails/welcome) - If `CONTROLLER` argument was supplied but it does not exist, will warn the user that this controller does not exist - If `CONTROLLER` argument was supplied and no routes could be found matching this filter, will warn the user that no routes were found matching the supplied filter - If no routes were defined in the config/routes.rb file, will warn the user with the original message
* Allow AC::Parameters as an argument to url_helpersPrathamesh Sonpatki2016-01-071-0/+8
| | | | | | | | - Earlier only Hash was allowed as params argument to url_helpers. - Now ActionController::Parameters instances will also be allowed. - If the params are not secured then it will raise an ArgumentError to indicate that constructing URLs with non-secure params is not recommended. - Fixes #22832.
* add option for per-form CSRF tokensBen Toews2016-01-041-0/+4
|
* Test ActionController::Renderers::use_renderersBenjamin Fleischer2015-12-311-0/+4
|
* Fix AC::Parameters#to_unsafe_h to return all unfiltered valuesPrathamesh Sonpatki2015-12-311-0/+8
| | | | | | | - AC::Parameters#convert_parameters_to_hashes should return filtered or unfiltered values based on whether it is called from `to_h` or `to_unsafe_h` instead of always defaulting to `to_h`. - Fixes #22841
* Add AC::Parameters#include?Justin Coyne2015-12-291-0/+4
| | | | Fixes #22818
* release notes, extract notable changes from Action Pack CHANGELOG.Yves Senn2015-12-221-24/+25
| | | | [ci skip]
* No more no changes entries in the CHANGELOGsGenadi Samokovarov2015-12-211-3/+0
| | | | | | | | | | | | | | During the `5.0.0.beta1` release, the CHANGELOGs got an entry like the following: ``` * No changes. ``` It is kinda confusing as there are indeed changes after it. Not a biggie, just a small pass over the CHANGELOGs. [ci skip]
* Add CHANGELOG headers for Rails 5.0.0.beta1eileencodes2015-12-181-0/+5
|
* Deprecate `redirect_to :back`Derek Prior2015-12-161-0/+6
| | | | | | | Applications that use `redirect_to :back` can be forced to 500 by clients that do not send the HTTP `Referer` (sic) header. `redirect_back` requires the user to consider this possibility up front and avoids this trivially-caused application error.
* Add `redirect_back` for safer referrer redirectsDerek Prior2015-12-161-0/+6
| | | | | | | | | | | | | | | | | `redirect_to :back` is a somewhat common pattern in Rails apps, but it is not completely safe. There are a number of circumstances where HTTP referrer information is not available on the request. This happens often with bot traffic and occasionally to user traffic depending on browser security settings. When there is no referrer available on the request, `redirect_to :back` will raise `ActionController::RedirectBackError`, usually resulting in an application error. `redirect_back` takes a required `fallback_location` keyword argument that specifies the redirect when the referrer information is not available. This prevents 500 errors caused by `ActionController::RedirectBackError`.
* Fix spacing on CHANGELOG nameeileencodes2015-12-121-1/+1
| | | | So that it appears correctly in the CHANGELOG on github.
* Remove ActionController::TestCase from documentationeileencodes2015-12-121-0/+12
| | | | | | | | | | | | | | | | | | In Rails 5.1 `ActionController::TestCase` will be moved out of Rails into it's own gem. Please use `ActionDispatch::IntegrationTest` going foward. Because this will be moved to a gem I used `# :stopdoc:` instead of deleting the documentation. This will remove it from the Rails documentation but still leave the method documented for when we move it to a gem. Guides have been updated to use the routing structure used in Integration and all test examples have been updated to inherit from `ActionDispatch::IntegrationTest` instead of `ActionController::TestCase. Fixes #22496
* Update Changelog with the added response_format option in AD::DebugExceptionsJorge Bejar2015-12-091-0/+10
|
* Change the `protect_from_forgery` prepend default to `false`eileencodes2015-12-071-0/+23
| | | | | | | | | | | | | | | | | | | | | Per this comment https://github.com/rails/rails/pull/18334#issuecomment-69234050 we want `protect_from_forgery` to default to `prepend: false`. `protect_from_forgery` will now be insterted into the callback chain at the point it is called in your application. This is useful for cases where you want to `protect_from_forgery` after you perform required authentication callbacks or other callbacks that are required to run after forgery protection. If you want `protect_from_forgery` callbacks to always run first, regardless of position they are called in your application, then you can add `prepend: true` to your `protect_from_forgery` call. Example: ```ruby protect_from_forgery prepend: true ```
* [ci skip] Add author's name to CHANGELOGyui-knk2015-11-281-0/+2
|
* Merge pull request #21241 from pdg137/masterArthur Nogueira Neves2015-11-261-0/+4
|\ | | | | In url_for, never append ? when the query string is empty anyway.
| * In url_for, never append ? when the query string is empty anyway.Paul Grayson2015-10-291-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It used to behave like this: url_for(controller: 'x', action: 'y', q: {}) # -> "/x/y?" We previously avoided empty query strings in most cases by removing nil values, then checking whether params was empty. But as you can see above, even non-empty params can yield an empty query string. So I changed the code to just directly check whether the query string ended up empty. (To make everything more consistent, the "removing nil values" functionality should probably move to ActionPack's Hash#to_query, the place where empty hashes and arrays get removed. However, this would change a lot more behavior.)