aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* | | "warning: instance variable @routes not initialized"Akira Matsuda2015-07-171-1/+1
| | |
* | | Standardize `ActionController::Parameters#to_unsafe_h` return valueZoltan Kiss2015-07-151-1/+1
| | | | | | | | | | | | | | | | | | `ActionController::Parameters#to_h` returns a hash, so lets have `ActionController::Parameters#to_unsafe_h` return a hash instead of an `ActiveSupport::HashWithIndifferentAccess` for consistency.
* | | Update documentation on `AC::Parameters`Prem Sichanugrist2015-07-151-6/+32
| | |
* | | Make AC::Parameters not inherited from HashPrem Sichanugrist2015-07-152-28/+103
| | | | | | | | | | | | | | | | | | | | | | | | This is another take at #14384 as we decided to wait until `master` is targeting Rails 5.0. This commit is implementation-complete, as it guarantees that all the public methods on the hash-inherited Parameters are still working (based on test case). We can decide to follow-up later if we want to remove some methods out from Parameters.
* | | Rack implements `redirect?` so we don't need itAaron Patterson2015-07-142-6/+0
| | | | | | | | | | | | Rack [already implements `redirect?` on the response object](https://github.com/rack/rack/blob/1569a985e17d9caaf94d0e97d95ef642c4ab14ba/lib/rack/response.rb#L141) so we don't need to implement our own.
* | | Change AC::TestResponse to AD::TestResponsePrem Sichanugrist2015-07-141-1/+1
| | | | | | | | | | | | | | | ActionController::TestResponse was removed in d9fe10c and caused a test failure on Action View as its test case still refers to it.
* | | use a lookup table for `assert_response`Aaron Patterson2015-07-131-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | We shouldn't depend on specific methods imlemented in the TestResponse subclass because the response could actually be a real response object. In the future, we should either push the aliased predicate methods in TestResponse up to the real response object, or remove them
* | | only have one TestResponse classAaron Patterson2015-07-131-4/+1
| | |
* | | move buffer caching on to the bufferAaron Patterson2015-07-133-7/+15
| | |
* | | Merge pull request #20736 from antoine-lizee/docsRobin Dupret2015-07-131-1/+1
|\ \ \ | | | | | | | | [ci skip] docs: making clear that perform_caching has a limited impact
| * | | [ci skip] doc: making clear that perform_caching has a limited impactantoine.lizee2015-07-131-1/+1
| | | |
* | | | Merge pull request #20842 from TheBlasfem/removed_usage_lines_docsClaudio B.2015-07-112-2/+2
|\ \ \ \ | | | | | | | | | | Removed usage line docs [ci skip]
| * | | | added description instead of remove usage [ci skip]Julio Lopez2015-07-112-2/+2
| | | | |
* | | | | Merge pull request #17102 from matthewd/load-interlockAaron Patterson2015-07-102-0/+22
|\ \ \ \ \ | | | | | | | | | | | | Concurrent load interlock (rm Rack::Lock)
| * | | | | Fix the Interlock middlewareMatthew Draper2015-07-091-5/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can't actually lean on Rack::Lock's implementation, so we'll just copy it instead. It's simple enough that that's not too troubling.
| * | | | | Soften the lock requirements when eager_load is disabledMatthew Draper2015-07-092-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't need to fully disable concurrent requests: just ensure that loads are performed in isolation.
* | | | | | we don't really need an extra method to set the script nameAaron Patterson2015-07-101-5/+1
| | | | | |
* | | | | | Remove useless conditionalAaron Patterson2015-07-101-12/+0
| | | | | | | | | | | | | | | | | | | | | | | | PATH_INFO is already set, so this branch will never execute.
* | | | | | default `PATH_INFO` to the generated pathAaron Patterson2015-07-101-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | we were already generating a path in the previous code (it was just not returned), so lets just use the already computed path to popluate the PATH_INFO header
* | | | | | always default the SCRIPT_NAME to whatever is on the controllerAaron Patterson2015-07-101-1/+1
| | | | | |
* | | | | | remove useless ivar clearingAaron Patterson2015-07-101-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | Since we only work with new instances, these ivars will not be set.
* | | | | | call the `path_parameters=` setter rather than rely on mutationsAaron Patterson2015-07-101-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We should call the setter on `path_parameters` so that we know the hash will only contain the values that we've set.
* | | | | | start collecting `env` mutationsAaron Patterson2015-07-101-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'd like to put all env mutations together so we can understand how to change this code to call `call` on the controller
* | | | | | Parameters are converted to a query stringAaron Patterson2015-07-101-17/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since parameters are converted to a query string, they will automatically be turned in to strings by the query parser
* | | | | | no more HWIAAaron Patterson2015-07-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | non_path_parameters is used internally (it never escapes this method) so we should be able to safely use a regular hash.
* | | | | | remove param dup'ing logicAaron Patterson2015-07-101-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | since we are serializing parameters, we don't need to do all the dup checks on each object.
* | | | | | encode / decode parameters before assigning them to the requestAaron Patterson2015-07-101-5/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We should roundtrip the parameters through their respective encoders / decoders so that the controller will get parameters similar to what they actually get in a real world situation
* | | | | | start disconnecting the parameter parser from the instanceAaron Patterson2015-07-101-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pass in the instance variable to start decoupling the meat of the parser from the instance of the middleware
* | | | | | drop a conditional by always assigningAaron Patterson2015-07-101-6/+5
| |/ / / / |/| | | | | | | | | | | | | | | | | | | We will always make an assignment to the env hash and eliminate a conditional
* | | | | drop runtime conditionals in parameter parsingAaron Patterson2015-07-091-13/+9
| | | | | | | | | | | | | | | | | | | | | | | | | If we only deal with proc objects, then we can eliminate type checking in the parameter parsing middleware
* | | | | set parameters as a query stringAaron Patterson2015-07-091-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We should convert request parameters to a query string, then let the request object parse that query string. This should give us results that are more similar to the real-world
* | | | | build and assign parameters rather than rely on mutationsAaron Patterson2015-07-081-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | We should assign parameters to the request object rather than mutate the hash that is returned by `query_parameters` or `request_parameters`
* | | | | assign the cookie hash on request allocationAaron Patterson2015-07-082-2/+2
| | | | | | | | | | | | | | | | | | | | this prevents mutations from being available globally
* | | | | request objects are no longer recycledAaron Patterson2015-07-081-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of trying to manually clear out a request object, lets just allocate a new one. The rack ENV is reused and cleaned (still), but the request object is not.
* | | | | add a new constructor for allocating test requestsAaron Patterson2015-07-083-20/+22
| | | | |
* | | | | make `env` a required parameterAaron Patterson2015-07-081-1/+1
| | | | |
* | | | | pass the starting env and session to build_requestAaron Patterson2015-07-082-4/+4
| | | | |
* | | | | pass the session and env in to the test requestAaron Patterson2015-07-081-4/+8
| | | | |
* | | | | let the superclass build the request and responseAaron Patterson2015-07-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | We should leverage the request / response objects that the superclass has already allocated for us.
* | | | | remove useless `new` implementationAaron Patterson2015-07-081-4/+0
| | | | |
* | | | | allocate new responses rather than recycling themAaron Patterson2015-07-081-12/+5
|/ / / / | | | | | | | | | | | | | | | | There is no reason to "recycle" response objects when we can just allocate a new one.
* | | | pass cookies from the jar in the HTTP_COOKIE headereileencodes2015-07-072-17/+11
| | | | | | | | | | | | | | | | | | | | we should be pushing the cookies in via headers rather than maintaining some object and "recycling" it.
* | | | Send cookies with requesteileencodes2015-07-073-2/+9
| | | |
* | | | Merge pull request #13897 from gmalette/nested-parameter-filtering-2Arthur Nogueira Neves2015-07-061-7/+17
|\ \ \ \ | | | | | | | | | | Allow filtering params based on parent keys
| * | | | Allow filtering params based on parent keysGuillaume Malette2015-06-221-7/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the possibility to only filter parameters based on their full path instead of relying on the immediate key. config.filter_parameters += ['credit_card.code'] { 'credit_card' => { 'code' => '[FILTERED]' }, 'source' => { 'code' => '<%= puts 5 %>' } }
* | | | | Refactor cookie_jar to decouple it from request objecteileencodes2015-07-051-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change decouples `cookie_jar` allocation from the request object. We need this for moving controller tests to integration tests so we can access the `cookie_jar` object separately.
* | | | | [ci skip] Don't use TrueClass, FalseClass in docsclaudiob2015-07-021-6/+0
| |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This sort of documentation style comes from 2009, probably due to the merging of merb (see https://github.com/rails/rails/commit/38b608ecab2441cd0c4e75bc08bdf57fcf85dd71#diff-017d9bc9b1d2bdae199b938d72c15488R120). Rails follows Ruby's convention to define which values are "truthy" or "falsey", so there is no need to specify that the returned value must strictly be a TrueClass or FalseClass. /cc @fxn
* | | | [ci skip] Improve the url_for documentationRoque Pinel2015-07-011-3/+19
| |/ / |/| | | | | | | | | | | | | | | | | | | | | | | Clarify the `url_for` usage in mailers. Re-add the documentation about `url_for` and Route's path parameters, first introduced by 5c4f1859970d06228a0b67cad6d4486c1526ef2a. This was reported on #15097 and until it is decided to deprecate it or not, I believe the documentation should exist.
* | | Merge pull request #20276 from davetron5000/revert-head-on-no-templateKasper Timm Hansen2015-06-271-2/+17
|\ \ \ | | | | | | | | Allow default_render to take a block to customize behavior when there's no template
| * | | Override default_render's behavior with a blockDave Copeland2015-06-201-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 0de4a23 the behavior when there is a missing template was changed to not raise an error, but instead head :no_content. This is a breaking change and some gems rely on this happening. To allow gems and other code to work around this, allow `default_render` to take a block which, if provided, will execute the contents of that block instead of doing the `head :no_content`.