Commit Graph

1566 Commits

Author SHA1 Message Date
Jeremy Kemper
8aad8cb390 Set cache control to require revalidation if cache freshness response headers are set. Don't set Content-Length header if 304 status. 2008-08-14 21:45:14 -07:00
Jeremy Kemper
c7e09a8fb2 TestRequest#recycle! uses unmemoize_all to reset cached request method, accepts, etc. 2008-08-13 17:26:27 -07:00
Josh Susser
2561be005b Refactor Filter predicate methods to use inheritance. [#815 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2008-08-13 21:48:37 +01:00
Jeremy Kemper
45b79d933c Merge branch 'conditional-get' 2008-08-12 17:03:17 -07:00
Jeremy Kemper
ba2d61dd81 Update tests for request memoization 2008-08-08 02:31:12 -07:00
Jeremy Kemper
c24a7cdd23 Don't shadow host method 2008-08-08 02:29:37 -07:00
James Rosen
14cf9a8991 dryed up resources; fixed small formatting issue in resources rdoc
Signed-off-by: Michael Koziarski <michael@koziarski.com>
2008-08-08 10:47:26 +02:00
Jeremy Kemper
b7529ed1cc Simplifying usage of ETags and Last-Modified and conditional GET requests 2008-08-07 23:43:12 -07:00
Jeremy Kemper
e43d1c226d Inherit these from AbstractRequest instead 2008-08-07 23:34:36 -07:00
Jeremy Kemper
165120a606 Be more careful about deducing action_methods 2008-08-06 15:23:57 -07:00
Jeremy Kemper
29a06f10e8 Strip newlines from cookie session data 2008-08-05 19:28:52 -07:00
Jeremy Kemper
69e9cbb99a Ensure public superclass methods don't shadow public controller methods. Case in point, ruby-debug's Kernel#start shadowing a controller's start action. 2008-08-05 17:35:08 -07:00
Jeffrey Hardy
8d72b82b8d Make assert_template failure message more friendly
Signed-off-by: Joshua Peek <josh@joshpeek.com>
2008-08-05 16:29:56 -05:00
Jeremy Kemper
ddd552504b Expose Routing::Segment::SAFE_PCHAR list of path characters that don't need escaping 2008-08-04 18:37:53 -07:00
Jeremy Kemper
ad4553587e List available actions in UnknownAction exception message 2008-07-31 17:50:53 -07:00
Tarmo Tänav
0b9bfbdebf Use "/usr/bin/env ruby" instead of "/usr/local/bin/ruby"
Signed-off-by: Joshua Peek <josh@joshpeek.com>
2008-07-31 16:39:48 -05:00
Tarmo Tänav
656f0e7c6c Fix file permissions
Signed-off-by: Joshua Peek <josh@joshpeek.com>
2008-07-31 16:36:23 -05:00
miloops
eaab895f83 Prototype helpers should generate Element.insert instead of Insertion.new, which has been deprecated in Prototype 1.6. 2008-07-30 01:42:32 -07:00
Jeremy Kemper
eb256718c3 Remove send! usage, relic of reverted 1.9 behavior 2008-07-28 13:54:10 -07:00
Joshua Peek
19db0b7324 Added back ActionController::Base.allow_concurrency flag and moved lock down to controller processing. 2008-07-28 14:31:40 -05:00
Joshua Peek
a5db148825 Prepare Route#generate and Route#recognize early. Also refactor segments a bit to try to make immutable. 2008-07-28 13:41:42 -05:00
Joshua Peek
e0513e33c4 Routing whitespace cleanup 2008-07-28 13:38:20 -05:00
Pratik Naik
6e75455125 Merge docrails changes 2008-07-28 12:33:24 +01:00
Joshua Peek
f48b9ab5c2 ActionController::Base.relative_url_root falls back to ENV['RAILS_RELATIVE_URL_ROOT'] 2008-07-24 14:06:22 -05:00
Joshua Peek
a87462afcb AbstractRequest.relative_url_root is no longer automatically configured by a HTTP header. It can now be set in your configuration environment with config.action_controller.relative_url_root 2008-07-24 13:41:51 -05:00
Joshua Peek
bc5896e708 Memoize ActionView::Base pick_template and find_partial_path for rendering duration 2008-07-22 10:27:32 -05:00
Tom Ward
d39485078e Raise ArgumentError if an invalid method is specified as part of a route's conditions. Also raise an error if HEAD is specified as the method, as rails routes all HEAD requests through the equivalent GET, though doesn't return the response body [#182 state:resolved]
Signed-off-by: Joshua Peek <josh@joshpeek.com>
2008-07-18 20:19:03 -05:00
Jeremy Kemper
57a2780f14 etag! and last_modified! conditional GET helpers 2008-07-17 23:18:10 -07:00
Joshua Peek
cd63015570 All 2xx requests are considered successful [#217 state:resolved] 2008-07-16 19:49:46 -05:00
Ripta Pasay
f7fdbae770 Use fully-qualified controller name when logging. [#600 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2008-07-17 01:33:44 +01:00
Pratik Naik
90c930f45c Allow Dispatcher exceptions to be handled in application.rb using rescue_from 2008-07-16 18:54:08 +01:00
Pratik Naik
0432d15164 Merge with docrails. 2008-07-16 13:01:23 +01:00
Pratik Naik
1d002f6bcb Make RackRequest#request_method respect _method 2008-07-16 05:02:29 +01:00
Pratik Naik
5cc3ea6969 RackResponse should not contain Status header 2008-07-16 04:17:28 +01:00
Pratik Naik
0f8206104e RackRequest#content_type should return Mime::Type 2008-07-16 03:18:35 +01:00
Joshua Peek
aca246ab25 Get buffer for fragment cache from template's @output_buffer 2008-07-15 14:43:52 -05:00
Jeremy Kemper
2167f95d85 Restore the more readable before_ and after_filters methods since they aren't called frequently 2008-07-14 10:11:53 -07:00
Joshua Peek
26bc867151 Small tweak to e0fef66 2008-07-13 14:00:40 -05:00
Joshua Peek
e0fef66149 Made ActionView::Base#first_render a little more private. And added _last_render to track the most recent render. Will fix #609 as a side effect. [#609 state:resolved] 2008-07-13 13:26:48 -05:00
Joshua Peek
99cc85bc09 Set config.action_view.warn_cache_misses = true to receive a warning if you perform an action that results in an expensive disk operation that could be cached 2008-07-12 15:31:50 -05:00
Joshua Peek
73b34e9f75 Refactor template preloading. New abstractions include Renderable mixins and a refactored Template class. 2008-07-12 14:33:46 -05:00
Michael Koziarski
e53f5fe696 Restore support for partial matches in assert_redirected_to
If both the actual redirection and the asserted redirection are hashes, succeed if the asserted redirection is a strict subset of the actual redirection.
2008-07-12 11:42:41 +02:00
Clemens Kofler
feb08984ea Added notes to Routing documentation and routes.rb regarding defaults routes opening the whole application for GET requests
Signed-off-by: Michael Koziarski <michael@koziarski.com>
2008-07-10 09:29:27 +02:00
Jeremy Kemper
d37e641336 Move accept header parsing shortcut to Mime::Type.parse 2008-07-09 11:30:18 -07:00
Jeremy Kemper
0ce7fe5308 Don't repeatedly convert only/except options 2008-07-09 10:42:30 -07:00
Cheah Chu Yeow
ce4a1bb853 Remove some Symbol#to_proc usage in runtime code. [#484 state:resolved] 2008-07-09 10:42:30 -07:00
Jeremy Kemper
f82bd31cb0 Request#accepts special-cases a single mime type 2008-07-09 10:42:30 -07:00
Michael Koziarski
4ce9931f4f Reenable the use of the Accept header to give people a chance to update their applications and provide feedback. 2008-07-09 18:36:15 +02:00
Cheah Chu Yeow
96708af6a5 Ensure url_for(nil) falls back to url_for({}). [#472 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2008-07-09 13:02:14 +01:00
Michael Koziarski
2f4aaed7b3 Disable the Accept header by default
The accept header is poorly implemented by browsers and causes strange errors when used on public sites where crawlers make requests too.  You should use formatted urls (e.g. /people/1.xml) to support API clients. Alternatively to re-enable it you need to set:

config.action_controller.use_accept_header = true

A special case remains for ajax requests which will have a javascript format for the base resource (/people/1) if the X-Requested-With header is present.  This lets ajax pages still use format.js despite there being no params[:format]
2008-07-07 07:31:49 +02:00