aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
Commit message (Collapse)AuthorAgeFilesLines
* Tiny documentation edits [ci skip]Robin Dupret2015-02-151-3/+3
|
* Implement http_cache_forever to ActionControllerArthur Neves2015-02-153-0/+75
| | | | | | | | | Add http_cache_forever to ActionController, so we can cache results forever. Things like static pages are a good candidate for this type of caching. This cache only controls caching headers, so it is up to the browser to cache those requests.
* Add missing commaArthur Neves2015-02-131-1/+1
|
* Correct module name in deprecation message.Guo Xiang Tan2015-02-131-1/+1
|
* Improve deprecation message.Guo Xiang Tan2015-02-131-1/+3
|
* Do not recommend `xhr` since it is going to be deprecated.Guo Xiang Tan2015-02-131-3/+0
|
* require rack/utils in exception_wrapperAndrew Lazarus2015-02-121-0/+1
|
* remove meta programmingAaron Patterson2015-02-121-3/+3
| | | | | there's really no benefit here. It's the same number of lines without the meta programming and is faster
* there is always an integration session, so remove the checkAaron Patterson2015-02-121-1/+0
|
* lazily create the integration sessionAaron Patterson2015-02-122-11/+5
| | | | now we don't have to call reset! everywhere
* use before_setup to set up test instance variablesAaron Patterson2015-02-121-7/+6
|
* Skip url_helpers instead of caching, speed up integration testseileencodes2015-02-122-18/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We shouldn't cache if it's not absolutely necessary. Removes route caching and instead skips using the `url_helpers` is the integration test session doesn't require it. Benchmark ips on integration and controller index method tests below. Without any caching or changes to `#url_helpers`: ``` Calculating ------------------------------------- INDEX: Integration Test 71.000 i/100ms INDEX: Functional Test 99.000 i/100ms ------------------------------------------------- INDEX: Integration Test 728.878 (± 8.0%) i/s - 3.692k INDEX: Functional Test 1.015k (± 6.7%) i/s - 5.148k Comparison: INDEX: Functional Test: 1015.4 i/s INDEX: Integration Test: 728.9 i/s - 1.39x slower ``` With caching on `#url_helpers`: ``` Calculating ------------------------------------- INDEX: Integration Test 74.000 i/100ms INDEX: Functional Test 99.000 i/100ms ------------------------------------------------- INDEX: Integration Test 752.377 (± 6.9%) i/s - 3.774k INDEX: Functional Test 1.021k (± 6.7%) i/s - 5.148k Comparison: INDEX: Functional Test: 1021.1 i/s INDEX: Integration Test: 752.4 i/s - 1.36x slower ``` Afer removing the caching and bypassing the `url_helpers` when not necessary in the session: ``` Calculating ------------------------------------- INDEX: Integration Test 87.000 i/100ms INDEX: Functional Test 97.000 i/100ms ------------------------------------------------- INDEX: Integration Test 828.433 (± 6.4%) i/s - 4.176k INDEX: Functional Test 926.763 (± 7.2%) i/s - 4.656k Comparison: INDEX: Functional Test: 926.8 i/s INDEX: Integration Test: 828.4 i/s - 1.12x slower ```
* Merge pull request #11790 from printercu/patch-3Rafael Mendonça França2015-02-123-14/+39
|\ | | | | | | ActionController#translate supports symbols
| * ActionController#translate also lookups shortcut without action nameMax Melentiev2013-10-223-4/+13
| |
| * ActionController#translate supports symbolsprintercu2013-09-253-12/+28
| | | | | | | | Made it similar to views helper.
* | fix typo in fresh_when example [ci skip]yuuji.yaginuma2015-02-121-3/+3
| |
* | Accept a collection in fresh_when and stale?claudiob2015-02-103-11/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The methods `fresh_when` and `stale?` from ActionController::ConditionalGet accept a single record as a short form for a hash. For instance ```ruby def show @article = Article.find(params[:id]) fresh_when(@article) end ``` is just a short form for: ```ruby def show @article = Article.find(params[:id]) fresh_when(etag: @article, last_modified: @article.created_at) end ``` This commit extends `fresh_when` and `stale?` to also accept a collection of records, so that a short form similar to the one above can be used in an `index` action. After this commit, the following code: ```ruby def index @article = Article.all fresh_when(etag: @articles, last_modified: @articles.maximum(:created_at)) end ``` can be simply written as: ```ruby def index @article = Article.all fresh_when(@articles) end ```
* | Fix wrong kwarg "record" from #18872claudiob2015-02-102-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | PR #18772 changed the parameters of `stale?` to use `kwargs`. [As for this comment](https://github.com/rails/rails/pull/18872/files#r24456288) the default value for the `etag` parameter should be `record`, not `nil`. This commit fixes the code and introduces a test that: - passed before #18872 - fails on the current master (after #18772) - passes again after setting the default value of `etag` to `record`.
* | Convert stale? and fresh_when to use keyword arguments.Kasper Timm Hansen2015-02-101-12/+10
| |
* | Explicitly ignored wildcard verbs from head_routesTerence Sun2015-02-083-0/+33
| | | | | | | | | | | | In match_head_routes, deleted the routes in which request.request_method was empty (matches all HTTP verbs) when responding to a HEAD request. This prevents catch-all routes (such as Racks) from intercepting the HEAD request. Fixes #18698
* | Merge pull request #18771 from kirs/deprecate-xhrRafael Mendonça França2015-02-059-117/+159
|\ \ | | | | | | Migrating xhr methods to keyword arguments syntax
| * | Migrating xhr methods to keyword arguments syntaxKir Shatrov2015-02-019-117/+159
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in `ActionController::TestCase` and `ActionDispatch::Integration` Old syntax: `xhr :get, :create, params: { id: 1 }` New syntax example: `get :create, params: { id: 1 }, xhr: true`
* | | `RouteSet` should not be listed in the public API [ci skip]Sean Griffin2015-02-031-10/+10
| | | | | | | | | | | | | | | The use of `# :startdoc:` inside of the class was overriding the outer-most `# :nodoc:`, causing it to be listed in the documented API.
* | | Removed magic comments # encoding: utf-8 , since its default from ruby 2.0 ↵Vipul A M2015-02-036-6/+0
| | | | | | | | | | | | onwards.
* | | Cache `url_helpers` separately for mailersAndrew White2015-02-011-44/+50
| | | | | | | | | | | | | | | The commit 3b63780 re-introduced url helper caching but we need to cache a separate module for Action Mailer without paths.
* | | Cache `url_helpers`eileencodes2015-02-011-42/+44
| | | | | | | | | | | | | | | | | | `url_helpers` used to be memoized. This was lost in a refactoring and this PR adds it back. We noticed this while investigating why integration tests are slower than controller tests.
* | | Merge pull request #18721 from sj26/pre-discard-flashAaron Patterson2015-02-014-28/+51
|\ \ \ | | | | | | | | Pre-discard flash messages
| * | | Migrate old flash behaviourSamuel Cochran2015-01-302-6/+13
| | | |
| * | | Discard from flash before persisting in sessionSamuel Cochran2015-01-292-24/+26
| | | |
| * | | Fix flash remaining after last flash deletedSamuel Cochran2015-01-292-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Inside a controller functional test after the last flash is deleted it still persists the flash because to_session_value is nil. We should delete it from the session when the serialized version is nil, same as the flash middleware.
* | | | Merge pull request #18769 from gsamokovarov/exception-wrapper-windows-pathsAndrew White2015-02-012-2/+25
|\ \ \ \ | | | | | | | | | | Show proper traces on Windows for the error pages
| * | | | Show proper traces on Windows for the error pagesGenadi Samokovarov2015-02-012-2/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is an issue brought up by @daniel-rikowski in rails/web-console#91. Citing his PR proposal here: > Prior to this, backtrace lines were simply split by a single colon. > > Unfortunately that is also the drive letter delimiter in Windows paths > which resulted in a lot of empty source fragments of "C:0". ("C" from > the drive letter and 0 from "/path/to/rails/file.rb:16".to_i) > > Now the trace line is split by the first colon followed by some digits, > which works for both Windows and Unix path styles. Now, the PR was sent against web-console, because of the templates copy issue we used to had. Instead of bothering the contributor to reopen the issue against upstream Rails itself, I will make sure he gets the credit by putting his name in [rails-contributors/hard_coded_authors.rb][]. [rails-contributors/hard_coded_authors.rb]: (https://github.com/fxn/rails-contributors/blob/master/app/models/names_manager/hard_coded_authors.rb).
* | | | | Merge pull request #18759 from yuki24/remove-warningYves Senn2015-02-011-3/+3
|\ \ \ \ \ | |/ / / / |/| | | | :scissors: warning from controller renderer test
| * | | | :scissors: warning from controller renderer testYuki Nishijima2015-01-311-3/+3
| | | | | | | | | | | | | | | | | | | | rails/actionpack/test/controller/renderer_test.rb:89: warning: possible reference to past scope - defaults
* | | | | Use public Module#include, in favor of https://bugs.ruby-lang.org/issues/8846robertomiranda2015-01-316-10/+10
|/ / / / | | | | | | | | | | | | ref: https://github.com/rails/rails/pull/18763#issuecomment-72349769
* | | | Fix a typo in deprecation warning. #process takes method instead of http_method.Juanito Fatas2015-01-311-1/+1
| | | |
* | | | [ci skip] Document format parameter of process method in AC test_case.Juanito Fatas2015-01-311-0/+1
| | | |
* | | | unify CHANGELOG format. [ci skip]Yves Senn2015-01-311-4/+5
| |/ / |/| |
* | | fix typo in `_filter` deprecation message. [ci skip]Yves Senn2015-01-301-5/+5
| | |
* | | Remove duplicated testsRafael Mendonça França2015-01-291-30/+0
| | |
* | | Consistent usage of spaces in hashes across our codebaseRafael Mendonça França2015-01-2924-105/+109
| | |
* | | Use fixed fonts only in the name of the parameterRafael Mendonça França2015-01-292-11/+11
| | |
* | | Improve CHANGELOGRafael Mendonça França2015-01-291-6/+5
| | |
* | | Switch to kwargs in ActionController::TestCase and ActionDispatch::IntegrationKir Shatrov2015-01-2944-399/+911
| | | | | | | | | | | | | | | | | | | | | | | | Non-kwargs requests are deprecated now. Guides are updated as well. `post url, nil, nil, { a: 'b' }` doesn't make sense. `post url, params: { y: x }, session: { a: 'b' }` would be an explicit way to do the same
* | | Preserve default url options when generating URLsTekin Suleyman2015-01-283-3/+33
|/ / | | | | | | | | Fixes an issue that would cause default_url_options to be lost when generating URLs with fewer positional arguments than parameters in the route definition.
* | Just assert the deprecation of one methodRafael Mendonça França2015-01-281-10/+15
| |
* | Add CHANGELOG entryRafael Mendonça França2015-01-281-0/+6
| |
* | Merge pull request #18693 from aditya-kapoor/deprecate_via_redirectRafael Mendonça França2015-01-282-15/+30
|\ \ | | | | | | | | | Deprecate *_via_redirect integration test methods
| * | Deprecate *_via_redirect integration test methodsAditya Kapoor2015-01-282-15/+30
| | |
* | | Merge pull request #18666 from cheunghy/auth_check_nilGuillermo Iguaran2015-01-282-2/+9
|\ \ \ | | | | | | | | Fixed undefined method error when doing http basic authentication.