aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
Commit message (Collapse)AuthorAgeFilesLines
* Correctly use the response's status code calling headRobin Dupret2014-12-314-5/+23
| | | | | | | | | | | | | | | | Commit 20fece1 introduced the `_status_code` method to fix calls to `head :ok`. This method has been added on both ActionController::Metal and ActionDispatch::Response. As for the latter, this method is just equivalent to the `response_code` one so commit aefec3c removed it from the `Reponse` object so call to the `_status_code` method on an ActionController::Base instance would be handled by the `Metal` class (which `Base` inherits from) but the status code is not updated according to the response at this level. The fix is to actually rely on `response_code` for ActionController::Base instances but this method doesn't exist for bare Metal controllers so we need to define it.
* stop referencing `env` in url_forAaron Patterson2014-12-302-1/+5
| | | | | encapsulate env in the request so that we can eventually move away from the env hash
* use methods on the request rather than direct hash accessAaron Patterson2014-12-302-2/+10
| | | | this will help decouple us from using the rack env hash
* Remove single space response body for head requestPrathamesh Sonpatki2014-12-303-5/+17
| | | | | | | | | | | | | | - The single space response was added due to a bug in safari in https://github.com/rails/rails/commit/cb0f8fda9652c4d24d04693bdb82cecd3b067e5c and https://github.com/rails/rails/commit/807df4fcf021fc4d15972aa1c17ba7398d43ab0d. - This was removed from the `render nothing: true` in https://github.com/rails/rails/pull/14883. - Removing it from response of :head also. As :head is more obvious alternative to call `render nothing: true`(http://guides.rubyonrails.org/layouts_and_rendering.html#using-head-to-build-header-only-responses), removing it from head method also. - Closes #18253.
* Merge pull request #18251 from tjgrathwell/fix-polymorphic-routes-to-modelRafael Mendonça França2014-12-302-5/+10
|\ | | | | | | Fix form_for to work with objects that implement to_model
| * Fix form_for to work with objects that implement to_modelTravis Grathwell2014-12-291-5/+6
|/ | | | | | | | | | | | | Previously, if you tried to use form_for with a presenter object that implements to_model, it would crash in action_dispatch/routing/polymorphic_routes.rb when asking the presenter whether it is .persisted? Now, we always ask .persisted? of the to_model object instead. This seems to been an issue since 1606fc9d840da869a60213bc889da6fcf1fdc431 Signed-off-by: Eugenia Dellapenna <eugenia.dellapenna@gmail.com>
* Move longer form example from integration guide to api reference, below anZachary Scott2014-12-291-0/+78
| | | | | | | | existing example. [ci skip] My reasoning is that this is probably too much information for the complete Rails testing guide, as we're trying to cover testing all aspects of the framework.
* Minor documentation edits [ci skip]Robin Dupret2014-12-281-1/+1
|
* Merge pull request #18209 from claudiob/bump-to-2-2Guillermo Iguaran2014-12-281-1/+1
|\ | | | | Require Ruby 2.2 for Rails 5.0
| * Require Ruby 2.2 for Rails 5.0claudiob2014-12-261-1/+1
| | | | | | | | | | Stems from [this comment](https://github.com/rails/rails/pull/18203#issuecomment-68138096) by @robin850 and by the blog post http://weblog.rubyonrails.org/2014/12/19/Rails-4-2-final
* | Update example test documentationBen Prew2014-12-281-4/+2
|/ | | Example does not work with session headers, should use request headers. [ci skip]
* Remove ActionController::ModelNamingclaudiob2014-12-252-16/+0
| | | | | | | | | | | | | | The methods in these modules are not used anywhere. They used to be invoked in polymorphic_routes.rb but their usage was removed in e821045. What is your opinion about removing these methods? They do belong to the public API, but in reality their code has already been duplicated to ActionView::ModelNaming, since they are used by methods like `dom_id` and `dom_class` to associated records with DOM elements (in ActionView). Please tell me if you think that removing this module is a good idea and, in that case, if the PR is okay as it is, or you'd rather start by showing a deprecation message, and remove the module in Rails 5.1.
* - Removed unused parameter to cookie serialize method and fixed usage of the ↵Vipul A M2014-12-241-4/+4
| | | | same elsewhere
* cleanup CHANGELOGs. [ci skip]Yves Senn2014-12-231-2/+2
|
* Merge branch 'master' of github.com:rails/docrailsVijay Dev2014-12-201-0/+109
|\
| * Add docs for ActionDispatch::Http::URL methodsclaudiob2014-12-181-0/+109
| | | | | | | | | | | | | | | | | | | | Add docs for `extract_domain`, `extract_subdomains`, `extract_subdomain`. Add doc examples for `url`, `protocol`, `raw_host_with_port`, `host`, `host_with_port`, `port`, `standard_port`, `standard_port?`, `optional_port`, `port_string`. [ci skip]
* | Merge pull request #18102 from arthurnn/nodoc_constantArthur Nogueira Neves2014-12-191-0/+1
| | | | | | | | Add nodoc to some constants [skip ci]
* | Use released rackGodfrey Chan2014-12-192-2/+2
| | | | | | | | `rack.version` was bumped in https://github.com/rack/rack/commit/28e77c710ac2ddb35c436d78d72e28f28f964446
* | Revert "Merge pull request #18003 from ↵Godfrey Chan2014-12-191-11/+6
| | | | | | | | | | | | | | | | | | | | sikachu/permit_all_parameters-thread-safety" This reverts commit da5cc10e945552da54234f858470238a3fc36767. Fixes #18091 See also https://github.com/rails/rails/pull/18003#commitcomment-9030909
* | Fix typo in nodoc should be `:nodoc:` for RDoc to parse correctlyZachary Scott2014-12-171-1/+1
| |
* | Merge pull request #17995 from ↵Rafael Mendonça França2014-12-162-0/+9
|\ \ | | | | | | | | | | | | jethroo/fix/assert_template_with_unsupported_layout_type assert template should raise ArgumentError for unsupported layout types
| * | adding that assert_template with :layout will raise ArgumentError for ↵Carsten Wirth2014-12-162-0/+9
| | | | | | | | | | | | unknown layout type
* | | Merge pull request #18052 from timoschilling/reset_variantsRafael Mendonça França2014-12-162-1/+9
|\ \ \ | | | | | | | | allow reseting of request variants
| * | | allow reseting of request variantsTimo Schilling2014-12-162-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current implementation of `variants=` don't allow a resetting to nil, wich is the default value. This results in the following code smell: ```ruby case request.user_agent when /iPhone/ request.variants = :phone when /iPad/ request.variants = :ipad end ``` With the ability to reset variants to nil, it could be: ```ruby request.variants = case request.user_agent when /iPhone/ :phone when /iPad/ :ipad end ```
* | | | Remove misleading test: around_action return falseclaudiob2014-12-151-19/+1
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When an `around_action` does not `yield`, then the corresponding action is *never* executed and the `after_` actions are *never* invoked. The value returned by the `around_action` does not have any impact on this: an `around_action` can "return" `true`, `false`, or `"pizza"`, but as long as `yield` is not invoked, the corresponding action and after callbacks are not executed. The test suite for `ActionController::Callbacks` currently includes separate tests to distinguish the cases in which a non-yielding `around_actions` returns `true` or `false`. In my opinion, having such tests is misleading, giving the impression that the returned value might have some sort of impact, while it does not. At least that's the impression I got when I read those tests. For completeness, the tests were introduced 7 years ago by @NZKoz in e80fabb.
* | / Don't convert empty arrays to nils when deep munging paramsChris Sinjakli2014-12-155-17/+15
| |/ |/|
* | Merge pull request #18022 from agrobbin/url-helpers-optional-scopesSantiago Pastorino2014-12-133-1/+17
|\ \ | | | | | | Allow URL helpers to work with optional scopes
| * | allow URL helpers to work with optional scopesAlex Robbin2014-12-133-1/+17
| | |
* | | ParameterFilter shouldn't try to dup symbol keysNate Berkopec2014-12-132-3/+3
|/ /
* | Fix handling of positional url helper arguments when format is falseTatiana Soukiassian2014-12-133-2/+42
| | | | | | | | | | | | | | There is no need to subtract one from the path_params size when there is no format parameter because it is not present in the path_params array. Fixes #17819.
* | Merge pull request #18006 from sikachu/add-params-to_unsafe_hRafael Mendonça França2014-12-122-0/+12
|\ \ | | | | | | Add AC::Parameters#to_unsafe_h
| * | Add AC::Parameters#to_unsafe_hPrem Sichanugrist2014-12-122-0/+12
| |/ | | | | | | | | | | | | | | | | As suggested in #16299([1]), this method should be a new public API for retrieving unfiltered parameters from `ActionController::Parameters` object, given that `Parameters#to_hash` will no longer work in Rails 5.0+ as we stop inheriting `Parameters` from `Hash`. [1]: https://github.com/rails/rails/pull/16299#issuecomment-50220919
* / Make AC::Params.permit_all_parameters thread safePrem Sichanugrist2014-12-121-1/+10
|/ | | | | | | As discussed in #16299[1], this attribute is not thread safe and could potentially create a security issue. [1]: https://github.com/rails/rails/pull/16299#discussion_r15424533
* Only check that it is a Rails application onceRafael Mendonça França2014-12-081-5/+7
| | | | Also avoid using try since is_a? is faster for this case.
* Mounted Rack apps should have default named routes based on app nameT.J. Schuck2014-12-062-14/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a regression in 4.2.0 from 4.1.8. https://github.com/rails/rails/pull/17823 fixed a similar regression regarding _explicitly_ named routes for a mounted Rack app, but there was another regression for the default value. With a route like: Rails.application.routes.draw do mount Mountable::Web, at: 'some_route' end The "Prefix" column of rake routes gives the following: - 4.1.8: mountable_web - 4.2.0.beta1-4: [nothing] - 4.2.0.rc1: [nothing] - 4.2.0.rc2: some_route <- regression This fixes the default to go back to being based off the name of the class like the docs specify: https://github.com/rails/rails/blob/785d04e3109f69d0b9b9f4732179592f0ef04e52/actionpack/lib/action_dispatch/routing/mapper.rb#L558-L560 Explicitly named routes still work correctly per https://github.com/rails/rails/pull/17823: Rails.application.routes.draw do mount Mountable::Web, at: 'some_route', as: 'named' end - 4.1.8: named - 4.2.0.beta1-4: [nothing] - 4.2.0.rc1: [nothing] - 4.2.0.rc2: named
* remove unused `#optional_parts`Sergey Alekseev2014-12-051-4/+0
| | | | | This method was copied from journey at https://github.com/rails/rails/commit/56fee39c392788314c44a575b3fd66e16a50c8b5#diff-2cfaf53c860732fea8689d6f2002594bR78. `grep -nr 'optional_parts' .`
* remove unused `#generalized_table`Sergey Alekseev2014-12-051-45/+0
| | | | This method wass copied from journey at https://github.com/rails/rails/commit/56fee39c392788314c44a575b3fd66e16a50c8b5#diff-d89de8881fc4b9f10cb3e4fc7b2463f3R53. However it looks the method was unused in journey at those point as well.
* Typo: Hello = Guten Tag (in German)Tu Hoang2014-12-052-3/+3
|
* We don't need to call to_sym. Just compare the stringRafael Mendonça França2014-12-041-1/+1
|
* Merge pull request #17792 from rockrep/masterRafael Mendonça França2014-12-042-1/+11
|\ | | | | | | allow 'all' for :domain option in addition to :all
| * allow 'all' for :domain option in addition to :allrockrep2014-11-262-1/+11
| |
* | remove unused #await_closeSergey Alekseev2014-12-041-6/+0
| | | | | | | | | | | | | | | | | | The method was added in https://github.com/rails/rails/commit/30d21dfcb7fafe49b3805b8249454485a90097b6#diff-5055d9f16b442adb1d2f0f65903a196bR141. With the method call in https://github.com/rails/rails/commit/30d21dfcb7fafe49b3805b8249454485a90097b6#diff-cc7bb557df2247c0a42bc180fdb6eb05R47. Later one more method call was added in https://github.com/rails/rails/commit/401787db4bc428dce88b04e343a64c6a6c3b681c#diff-cc7bb557df2247c0a42bc180fdb6eb05R183. And both method calls were deleted in https://github.com/rails/rails/commit/3df07d093a1e4207caa63fd2e3b67599211f5800#diff-cc7bb557df2247c0a42bc180fdb6eb05L47 and https://github.com/rails/rails/commit/3df07d093a1e4207caa63fd2e3b67599211f5800#diff-cc7bb557df2247c0a42bc180fdb6eb05L189. Just do `grep -nr 'await_close' .`.
* | Remove "rescue" clause around "require 'openssl'"claudiob2014-12-031-10/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some `require 'openssl'` statements were surrounded by `rescue` blocks to deal with Ruby versions that did not support `OpenSSL::Digest::SHA1` or `OpenSSL::PKCS5`. [As @jeremy explains](https://github.com/rails/rails/commit/a6a0904fcb12b876469c48b1c885aadafe9188cf#commitcomment-8826666) in the original commit: > If jruby didn't have jruby-openssl gem, the require wouldn't work. Not sure whether either of these are still relevant today. According to the [release notes for JRuby 1.7.13](http://www.jruby.org/2014/06/24/jruby-1-7-13.html): > jruby-openssl 0.9.5 bundled which means the above `rescue` block is not needed anymore. All the Ruby versions supported by the current version of Rails provide those OpenSSL libraries, so Travis CI should also be happy by removing the `rescue` blocks. --- Just to confirm, with JRuby: $ ruby --version #=> jruby 1.7.16.1 (1.9.3p392) 2014-10-28 4e93f31 on Java HotSpot(TM) 64-Bit Server VM 1.8.0_20-b26 +jit [darwin-x86_64] $ irb irb(main):001:0> require 'openssl' #=> true irb(main):002:0> OpenSSL::Digest::SHA1 #=> OpenSSL::Digest::SHA1 irb(main):003:0> OpenSSL::PKCS5 # => OpenSSL::PKCS5 And with Ruby 2.1: $ ruby --version #=> ruby 2.1.2p95 (2014-05-08 revision 45877) [x86_64-darwin13.0] $ irb irb(main):001:0> require 'openssl' #=> true irb(main):002:0> OpenSSL::Digest::SHA1 #=> OpenSSL::Digest::SHA1 irb(main):003:0> OpenSSL::PKCS5 #=> OpenSSL::PKCS5
* | Fix "nonexistent" typo in testsMelissa Xie2014-12-021-2/+2
| |
* | Action View is needed for DebugExceptionsRafael Mendonça França2014-12-021-0/+2
| | | | | | | | We should remove this dependency later.
* | Merge pull request #17873 from kirs/refactor-debug-erbRafael Mendonça França2014-12-024-23/+54
|\ \ | | | | | | Refactor debug view
| * | Refactor debug viewKir Shatrov2014-12-024-23/+54
| | | | | | | | | Avoid logic in ERB and use helpers
* | | Merge pull request #17862 from lucasmazza/lm-hide-actionRafael Mendonça França2014-12-022-1/+4
|/ / | | | | | | `_generate_paths_by_default` should always be private.
* | Merge pull request #17827 from rkh/rkh-fix-or-patternAaron Patterson2014-12-012-0/+7
|\ \ | | | | | | Fix OR in Journey patterns
| * | make OR in journey patterns compile to a valid regular expressionKonstantin Haase2014-11-292-0/+7
| | |