aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_dispatch
Commit message (Collapse)AuthorAgeFilesLines
* load active_support/core_ext/object/blank in active_support/railsXavier Noria2012-08-0211-11/+0
|
* Merge pull request #7198 from cfcosta/refactor-cache_control_headersRafael Mendonça França2012-07-291-11/+19
|\ | | | | Refactor ActionDispatch::Http::Cache::Response#cache_control_headers
| * Refactor ActionDispatch::Http::Cache::Response#cache_control_headers.Cainã Costa2012-07-301-11/+19
| |
* | header hash is duped before being sent up the rack stackAaron Patterson2012-07-291-12/+16
| |
* | ActionController::DataStreaming::FileBody doesn't respond to #close.Rafael Mendonça França2012-07-291-1/+1
| |
* | flushing output should write to the stream rather than mutating the response ↵Aaron Patterson2012-07-291-8/+12
|/ | | | object
* adding a buffered stream to the response objectAaron Patterson2012-07-291-2/+42
|
* initialize ivars, refactor recycle! to call initializeAaron Patterson2012-07-291-0/+2
|
* adds a missing require from Active SupportXavier Noria2012-07-281-0/+1
| | | | This file uses mattr_accessor.
* threads can wait on responses to be committedAaron Patterson2012-07-271-1/+24
|
* fix typo in documentationAnatoly Makarevich2012-07-261-1/+1
|
* Remove ActionDispatch::Head middleware in favor of Rack::HeadSantiago Pastorino2012-07-232-20/+2
| | | | Closes #7110 there's more work to do on rack-cache issue 69
* Don't assume resource param is :id when using shallow routesAndrew White2012-07-201-1/+3
| | | | | Since #5581 added support for resources with custom params we should not assume that it is :id when using shallow resource routing.
* Support constraints on resource custom params when nestingAndrew White2012-07-201-8/+12
| | | | | | | The Mapper looks for a :id constraint in the scope to see whether it should apply a constraint for nested resources. Since #5581 added support for resource params other than :id, we need to check for a constraint on the parent resource's param name and not assume it's :id.
* Add support for optional root segments containing slashesAndrew White2012-07-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optional segments with a root scope need to have the leading slash outside of the parentheses, otherwise the generated url will be empty. However if the route has non-optional elements then the leading slash needs to remain inside the parentheses otherwise the generated url will have two leading slashes, e.g: Blog::Application.routes.draw do get '/(:category)', :to => 'posts#index', :as => :root get '/(:category)/author/:name', :to => 'posts#author', :as => :author end $ rake routes root GET /(:category)(.:format) posts#index author GET (/:category)/author/:name(.:format) posts#author This change adds support for optional segments that contain a slash, allowing support for urls like /page/2 for the root path, e.g: Blog::Application.routes.draw do get '/(page/:page)', :to => 'posts#index', :as => :root end $ rake routes root GET /(page/:page)(.:format) posts#index Fixes #7073
* Fix class_eval without __FILE__ and __LINE__.kennyj2012-07-181-1/+1
|
* Merge branch 'master' of github.com:lifo/docrailsVijay Dev2012-07-151-7/+4
|\
| * Updated with_routing example to 3.x syntax [ci skip]Wojciech Wnętrzak2012-07-131-7/+4
| |
* | Raise a helpful error message on #mount misuseCarl Lerche2012-07-101-0/+4
| |
* | Rename RouteInspector to RoutesInspectorCarlos Antonio da Silva2012-07-082-3/+2
| | | | | | | | Follow the consistency defined in dbc43bc.
* | move route_inspector to actionpack@schneems and @mattt2012-07-072-5/+128
| | | | | | | | this is so we can show route output in the development when we get a routing error. Railties can use features of ActionDispatch, but ActionDispatch should not depend on Railties.
* | show routes while debugging RoutingErrorschneems2012-07-072-3/+20
|/ | | | If someone receives a routing error, they likely need to view the routes. Rather than making them visit '/rails/info/routes' or run `rake routes` we can give them that information on the page.
* Prevent conflict between mime types and Object methodsMircea Pricop2012-07-061-1/+12
| | | | | | | | | | | | | | | | | | | | | | | Assuming the type ":touch", Collector.new was calling send(:touch), which instead of triggering method_missing and generating a new collector method, actually invoked the private method `touch` inherited from Object. By generating the method for each mime type as it is registered, the private methods on Object can never be reached by `send`, because the `Collector` will have them before `send` is called on it. To do this, a callback mechanism was added to Mime::Type This allows someone to add a callback for whenever a new mime type is registered. The callback then gets called with the new mime as a parameter. This is then used in AbstractController::Collector to generate new collector methods after each mime is registered.
* add Mime.fetch so we can have default mime typesAaron Patterson2012-07-031-0/+5
|
* make the default environment have actual defaultsAaron Patterson2012-07-031-1/+7
| | | | | | instead of deleting keys on every instantiation, create defaults we actually use. eventually we can pass an environment in to the request, and create a new req / res object on each call.
* Merge pull request #6904 from guilleiguaran/remove-amo-dependency-in-apCarlos Antonio da Silva2012-06-301-7/+7
|\ | | | | Remove Active Model dependency from Action Pack
| * Remove ActiveModel dependency from ActionPackGuillermo Iguaran2012-06-301-7/+7
| | | | | | | | | | | | | | | | ActiveModel is used in ActionPack for ActiveModel::Naming for a few, mostly optional aspects of ActionPack related to automatically converting an ActiveModel compliant object into a key for params and routing. It uses only three methods of ActiveModel (ActiveModel::Naming.route_key, ActiveModel::Naming.singular_route_key and ActiveModel::Naming.param_key).
* | Revert "Allow loading external route files from the router"José Valim2012-06-292-19/+0
|/ | | | | | | | | | | | | | This reverts commit 6acebb38bc0637bc05c19d87f8767f16ce79189b. Usage of this feature did not reveal any improvement in existing apps. Conflicts: actionpack/lib/action_dispatch/routing/mapper.rb guides/source/routing.textile railties/lib/rails/engine.rb railties/lib/rails/paths.rb railties/test/paths_test.rb
* Ensure that cache-control headers are mergedJames Tucker2012-06-181-10/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | There are several aspects to this commit, that don't well fit into broken down commits, so they are detailed here: * When a user uses response.headers['Cache-Control'] = some_value, then the documented convention in ConditionalGet is not adhered to, in this case, response.cache_control is ignored due to `return if self[CACHE_CONTROL].present?` * When a middleware sets cache-control headers that would clobber, they're converted to symbols directly, without underscores. This would lead to bugs. * Items that would live in :extras if set through expires_in, are placed directly in the @cache_control hash, and not respected in many cases (somewhat adhering to the aforementioned documentation). * Although quite useless, any directive named 'extras' would be ignored. The general convention applied is that expires_* take precedence, but no longer overwrite everything and expires_* are ALWAYS applied, even if the header is set. I am still unhappy about the contents of this commit, and the code in general. Ideally it should be refactored to no longer use :extras. I'd likely recommend expanding @cache_control into a class, and giving it the power to handle the merge in a more efficient fashion. Such a commit would be a larger change that could have additional semantic changes for other libraries unless they utilize expires_in in very standard ways.
* Support unicode character route in config/routes.rb.kennyj2012-06-162-1/+8
|
* Use status, content_type, body method signature for render tooSantiago Pastorino2012-06-141-4/+3
|
* Refactor public exceptions to reuse render format methodCarlos Antonio da Silva2012-06-141-9/+6
|
* These lines don't help to mitigate CVE. They only turn [nil] into nil, w/o ↵Egor Homakov2012-06-131-3/+0
| | | | | | them [nil] turns into [] and that is quite innocent. generated SQL - `IN (NULL)` compact! did all the job.
* Merge branch 'master-sec'Aaron Patterson2012-06-121-2/+4
|\ | | | | | | | | * master-sec: Array parameters should not contain nil values.
| * Array parameters should not contain nil values.Aaron Patterson2012-06-121-2/+4
| |
* | content_type is already a Mime::Type objectSantiago Pastorino2012-06-121-1/+1
| |
* | This consider_all_requests_local doesn't make senseSantiago Pastorino2012-06-121-3/+2
|/ | | | | This middleware is only for Public Exceptions. This follows bd8c0b8a
* Return proper format on exceptionsSantiago Pastorino2012-06-111-14/+36
|
* both string and sumbol will be interpolated as string no need to convert to_sganesh2012-06-111-3/+3
|
* Merge pull request #6588 from nbibler/polymorphic_to_modelJosé Valim2012-06-011-1/+7
| | | | Correct the use of to_model in polymorphic routing
* Include routes.mounted_helpers into integration testsPiotr Sarnacki2012-06-012-3/+6
| | | | | | | | | | | | | | | In integration tests, you might want to use helpers from engines that you mounted in your application. It's not hard to add it by yourself, but it's unneeded boilerplate. mounted_helpers are now included by default. That means that given engine mounted like: mount Foo::Engine => "/foo", :as => "foo" you will be able to use paths from this engine in tests this way: foo.root_path #=> "/foo" (closes #6573)
* Merge branch 'master-sec'Aaron Patterson2012-05-311-0/+22
|\ | | | | | | | | | | * master-sec: Strip [nil] from parameters hash. Thanks to Ben Murphy for reporting this! predicate builder should not recurse for determining where columns. Thanks to Ben Murphy for reporting this
| * Strip [nil] from parameters hash.Aaron Patterson2012-05-301-0/+22
| | | | | | | | | | | | Thanks to Ben Murphy for reporting this! CVE-2012-2660
* | Simplify logic to initialize valid conditions in RouteSetCarlos Antonio da Silva2012-05-311-7/+3
| | | | | | | | | | | | Remove :to_sym call from public_instance_methods iteration, as such methods in Ruby 1.9 already return symbols. Initialize valid conditions with controller/action instead of setting them afterwards.
* | Merge branch 'master' of github.com:lifo/docrailsVijay Dev2012-05-261-4/+3
|\ \
| * | references to the old behavior removedMikhail Vaysman2012-05-251-4/+3
| | |
* | | Remove implicit dependency on pathnameJosé Valim2012-05-251-3/+3
|/ /
* / Added ActionDispatch::Request::Session#keys and ↵Philip Arndt2012-05-231-0/+8
|/ | | | ActionDispatch::Request::Session#values
* Fix bug when Rails.application is defined but is nil. See #881Marc-Andre Lafortune2012-05-211-1/+1
|
* Merge pull request #2549 from trek/RoutingErrorForMissingControllersAaron Patterson2012-05-211-3/+7
|\ | | | | When a route references a missing controller, raise ActionController::RoutingError with clearer message