Skip to content

This is in regards to the config.load_paths depreciation message #6

wants to merge 780 commits into from

In Rails 2.3.9 I thought the wording was more vague than it should be. Previous message:

config.load_paths is deprecated and removed in Rails 3, please use autoload_paths instead

New message:

config.load_paths is deprecated and removed in Rails 3, please use config.autoload_paths instead

This request is to pull it in to 2.3.9 future updates; not master. I went ahead and updated the message for "config.load_paths=", "config.load_paths_once", and "config.load_paths_once=" as well.

jeremy and others added some commits Mar 9, 2010
@jeremy jeremy Disprefer JSONGem decoder since it only decodes JSON objects abb8fbd
@rubys rubys Add deprecation warning for overwrite_params and remove rdoc
[#4073 state:committed]

Signed-off-by: Jeremy Kemper <>
@jeremy jeremy OutputBuffer#to_yaml should return string yaml, not some custom class…
… dump
@jeremy jeremy Write strings to fragment cache, not outputbuffers eed8a88
@jeremy jeremy Be sure to pass through args to to_yaml 40c393c
@spastorino spastorino There's a Ruby issue with File.basename different versions returns di…
…fferent things, so we shouldn't test that


Signed-off-by: Jeremy Kemper <>
@jeremy jeremy read_ and write_fragment cache preserve html safety yet cache strings…
… only
@basvk basvk Fixed a bug in JSON decoding with Yaml backend, where a combination o…
…f dates, escaped or unicode encoded data and arrays would make the parser fail with a ParseError exception.


Signed-off-by: Yehuda Katz <>
Signed-off-by: Jeremy Kemper <>
@jeremy jeremy to_str works here b3d32a5
@spastorino spastorino object_and_class_ext_test warnings removed
Signed-off-by: Jeremy Kemper <>
@spastorino spastorino Change array entries to safe doesn't worth then the array is joined a…
…s a string losing the safe property of his entries

Signed-off-by: José Valim <>
@Manfred Manfred Improve performance of Multibyte::Utils.
Replace explicit for-loops by faster enumeration methods.


Signed-off-by: Jeremy Kemper <>
@jamesgolick jamesgolick Improve performance of multibyte utils.
Switch from using String#match to using String#=~. There's no need to
generate a MatchData for each iteration since we're not using it.

Signed-off-by: Jeremy Kemper <>
@spastorino spastorino translation method of TranslationHelper module returns always SafeBuf…
…fer [#4194 status:resolved]

Signed-off-by: Jeremy Kemper <>
@spastorino spastorino scope_key_by_partial fix for Ruby 1.9 when there's virtual_path
[#4202 state:committed]

Signed-off-by: Jeremy Kemper <>
@jeremy jeremy Bundler returns a Pathname from #loaded_from; work around it f175d19
@jeremy jeremy Don't rely on Active Support being loaded here c0137f6
@nono nono button_to should generate an html_safe string
Signed-off-by: Michael Koziarski <>
@spastorino spastorino ActionView::SafeBuffer should be there for backwards compatibility [#…
…4241 state:committed]

Signed-off-by: Michael Koziarski <>
@tomlea tomlea Fix incorrect relative paths being used when looking up templates.
The bug will manifest itself by failing to locate templates when running tests,
or when running as a daemon (from /).

It relates the the different behavior of ActionView::Template::Path#to_s and
ActionView::Template::Path#to_str when a RAILS_ROOT is defined. #to_s reports
a path relative to the root, and #to_str reports an absolute path.

Signed-off-by: José Valim <>
@divoxx divoxx Set mailer template_root as absolute path [#2263 state:resolved]
Signed-off-by: José Valim <>
@miloops miloops Allow deprecation messages with or without a final period.
Signed-off-by: José Valim <>
@josevalim josevalim Added compatibility to Ruby 1.9.2. 157c180
@jrafanie jrafanie Marshaling a time object added an instance variable to the object whi…
…ch affected the quoting of serialized attributes because the to_yaml of the original object did not match the to_yaml of the marshaled one. Also, Marshal.dump was modifying the source object which the client may not be aware of.

Signed-off-by: wycats <>
@spastorino spastorino Time marshalling backported [#4286 state:committed]
Signed-off-by: wycats <>
@spastorino spastorino flatten not needed here
Signed-off-by: wycats <>
@spastorino spastorino backport of inconsistency with cattr_reader and matter_reader with so…
…me tweaks

Signed-off-by: wycats <>
@pixeltrix pixeltrix Add the ability to specify table_name_prefix on individual modules
[#4032 state:committed]

Signed-off-by: Jeremy Kemper <>
@ernie ernie belongs_to associations now honor :primary_key option for joins
Signed-off-by: Jeremy Kemper <>
@joeyAghion joeyAghion use supplied primary key when eager-loading belongs_to associations r…
…ather than default primary key


Signed-off-by: Jeremy Kemper <>
@dudleyf dudleyf Trivial doc update on nested attributes delete renaming
Signed-off-by: José Valim <>
Joseph Wilk Fixed a bug where create_table could not be called without a block [#…
…2221 state:resolved]

Signed-off-by: Pratik Naik <>
@xuanxu xuanxu new assertion: assert_blank
Signed-off-by: Xavier Noria <>
@xuanxu xuanxu New assertion: assert_present
Signed-off-by: Xavier Noria <>
@spastorino spastorino Don't cache the utc_offset we are already caching the timezone [#4301]
Signed-off-by: Jeremy Kemper <>
@fxn fxn avoid method redefined; discarding old empty? warning [Santiago Pasto…
@lifo lifo Dont try to load the record from the db if preloading didn't find any…
@lifo lifo Dont use Rails 3 finder syntax in Rails 2.3.x test [#4303 state:resol…
@dhh dhh Added Object#presence that returns the object if it's #present? other…
…wise returns nil [DHH/Colin Kelley]
@jeremy jeremy HTML safety: give a deprecation warning if an array of option tags is…
… passed to select tag. Be sure to join the tag yourself and mark them .html_safe
@spastorino spastorino utc_offset is no longer required on TimeZone and if it's not supplied…
… we delegate to TZInfo
@spastorino spastorino delegate unknown timezones to TZInfo 2c148cd
@jeremy jeremy CI: add tzinfo e2ec41a
@jeremy jeremy Adjust test in case tzinfo is not available 19161e0
@jeremy jeremy Check more carefully for vendored tzinfo a72bcdb
@pixeltrix pixeltrix Backport of lazy evaluation of has_many ..., :dependent => :___
[#2627 state:committed]

Signed-off-by: Jeremy Kemper <>
Kristopher Murata Parameterize should accept malformed utf8 characters [#4323 state:res…

Signed-off-by: Jeremy Kemper <>
@Savar Savar remove_index now uses quote_table_name() [#4300 state:resolved]
Signed-off-by: Michael Koziarski <>
@spastorino spastorino Generate routes for nested resources with nil object raise RoutingErr…
…or [#4262 state:committed]

Signed-off-by: Jeremy Kemper <>
@dhh dhh Fixed that default locale templates should be used if the current loc…
…ale template is missing [DHH]
@rolfb rolfb Changed the way inflections for uncountables work for 'funky jeans'
Signed-off-by: José Valim <>
@josevalim josevalim Fix tests broken in 0653a6d30e1a2746c6fbab768a989e2b3750cb32 f87a518
@spastorino spastorino fix stack trace lines on class_eval
Signed-off-by: José Valim <>
@josevalim josevalim Fix a failure added on 958b0e977a263100e3767d749afc08986acc4e7e 4a02437
@jeremy jeremy CI: message for some outstanding failures 56c5290
@jeremy jeremy Refactor for readability efec9b2
@jeremy jeremy CI: show all headers for diagnosis d91d6fe
@jeremy jeremy Only set response etag if body is not blank 2cd29f4
@hypothetical hypothetical made error_message_on work by passing in the object name if there is …
…no object [#3246 state:resolved]

Signed-off-by: José Valim <>
@yaroslav yaroslav Fix Array#to_xml to produce valid markup when working with namespaced…
… classes [#3624 state:resolved]

Signed-off-by: José Valim <>
@anildigital anildigital Fix for plugin not getting installed on Windows environment [#4320 st…

Signed-off-by: José Valim <>
@lifo lifo Ensure not to load the entire association when bulk updating existing…
… records using nested attributes
@fxn fxn fix dash -> edit in an example, and a few touches now that we are here b8b568e
@libc libc Implement find_in_batches without with_scope [#2227 state:resolved]
Signed-off-by: Pratik Naik <>
@mislav mislav ruby 1.8.7 compat: `starts/ends_with?` doesn't cast to string
`starts/ends_with?` methods shouldn't cast argument to string because
ruby 1.8.7 doesn't seem to do that. for example:

    # => true in ActiveSupport implementation, false in ruby 1.8.7

[#3199 state:committed]

Signed-off-by: Jeremy Kemper <>
@jeremy jeremy Distinguish test for 1.8.6 compat c55cdd8
@mislav mislav cleanup `update/reset_counters`; refactor tests ef0591e
@mislav mislav fix `reset_counters` to work even with complex class names
e.g. it guesses that a belongs_to association to Namespace::MyModel is
named "my_model", unlike before where it would look up an association
named "namespace::mymodel" and fail.
Ruby on Rails member
mislav commented on c55cdd8 Apr 17, 2010

Why was this necessary? With this change, you made this test be skipped in ruby 1.8.6, which was the target version for this test in the first place.

Now these lines only run in Ruby 1.9 :/

Ruby on Rails member

Because the test failed on 1.8.6. Did you mean to test that !s.ends_with?(:lo) may raise NoMethodError?

Ruby on Rails member

It shouldn't. Looks like I didn't solve it properly. Will patch it now

Ruby on Rails member

Pushed to "starts_ends" branch in my fork. Please pull. They should return false for non-strings

Ruby on Rails member

Pulled. Thanks!

mislav and others added some commits Apr 17, 2010
@mislav mislav `String#starts/ends_with?` should return false for non-string argumen…
…t, not raise error

Signed-off-by: Jeremy Kemper <>
@jeremy jeremy Fix 1.9-specific syntax error in test 8b79c7c
@jeremy jeremy Upgrade bundled i18n from 1.3.3 to 1.3.7 fd5c6e2
@jeremy jeremy MemoryStore#read_multi(*keys) for dev-mode compatibility with memcach…
…e store
@spastorino spastorino TimeZones lazy load
Signed-off-by: Jeremy Kemper <>
@spastorino spastorino load tzinfo on initialize only
Signed-off-by: Xavier Noria <>
Sam Elliott and Santiago Pastorino Is not nessesary to have @_rails_html_safe instance var when the stri…
…ng is unsafe, also it breaks to_yaml [#3535 state:committed]
@libc libc PostgreSQL adapter: escape_bytea, quote_string and unescape_bytea are…
…n't thread-safe in Ruby 1.8 [#3237 state:resolved]

Signed-off-by: wycats <>
@jeremy jeremy PostgreSQL: use standard-conforming strings if possible c9e1570
@jeremy jeremy PostgreSQL: remove the unnecessary heuristic checking whether the val…
…ue is escaped
@jeremy jeremy Remove quoted_string_prefix entirely since PostgreSQL was the only da…
…tabase adapter relying on it.
@jeremy jeremy Ruby 1.9: ERB template encoding using a magic comment at the top of t…
…he file
@jeremy jeremy Ensure ERB source begins with the encoding comment 70034d8
@amatsuda amatsuda Fix pattern to match various magic comment formats 4082001
@jeremy jeremy Expect an incompatible encoding exception when a template doesn't hav…
…e a magic comment and its source encoding doesn't match the default external encoding
@jeremy jeremy Expect an incompatible encoding exception when a template with a magi…
…c comment renders a partial without one and its source encoding doesn't match the default external encoding
@e2 e2 actionpack: added missing encoding comments [#4466 state:resolved]
Signed-off-by: Jeremy Kemper <>
@jeremy jeremy Fix unstated AS::Multibyte dependency 8716ee4
@jeremy jeremy Fix backport error: wrong exception name 9e262de
Joe Martinez Add ActiveResource::Base.include_root_in_json, like Active Record, to…
… serialize instances as hash of model name -> attributes hash rather than the bare attributes hash. [#2584 state:committed]

Signed-off-by: Santiago Pastorino <>
Signed-off-by: Jeremy Kemper <>
@cghawthorne cghawthorne Destroy respects optimistic locking.
Now works with :dependent => :destroy and includes unit tests for that
case.  Also includes better error messages when updating/deleting stale

[#1966 state:committed]

Signed-off-by: Jeremy Kemper <>
Neeraj Singh making rake:migrate VERSION=0 a noop called in succession. [#2137 sta…

Signed-off-by: José Valim <>
@marius marius repair the activesupport message encryptor tests for me, do so in the…
… same way as jeremy did with message verifier

[#4517 state:committed]

Signed-off-by: Jeremy Kemper <>
@lifo lifo Use class_inheritable_accessor for connection_handler 04fa5af
@brianmario brianmario Allow pre-casted values (other than nil) to pass through from calcula…
…tions un-touched

[#4514 state:committed]

Signed-off-by: Jeremy Kemper <>
@rubymerchant rubymerchant AR JSON Serializer now supports custom root option.
Signed-off-by: Jeremy Kemper <>
@lifo lifo Use primary key in conditions, not 'id' [#4395 state:resolved]
Signed-off-by: Pratik Naik <>


@brianmario brianmario add support for mysql2 adapter to dbconsole
[#4532 state:committed]

Signed-off-by: Jeremy Kemper <>
@spastorino spastorino simple_format should return html_safe but not escape text, that's for…
… rails_xss plugin [#3767 state:committed]

Signed-off-by: Jeremy Kemper <>
@spastorino spastorino Make find_or_create and find_or_initialize work mixing explicit param…
…eters and a hash. ht: Marc-André Lafortune

[#4457 state:committed]

Signed-off-by: Jeremy Kemper <>

Do you mean to do this? You're assigning the same object to two separate variables, and then merging them later on 1955 (when they're going to be the same?) Perhaps you mean to define these variables both as empty hashes? Is there something I'm missing?

Ruby on Rails member

Ryan, you're right in part. I didn't mean to do this but this works well because of the line 1949.
if line 1949 is executed the hashes are not the same anymore.
But if args hasn't a hash they will be the same as you said but the functionality don't fail. Why? because i merge the same hash so nothing happends and i execute attributes= twice for unprotected_attributes so it's ok.
Anyways is not the intended solution and of couse is best to do a separate assignment, i will fix this later.

fxn and others added some commits Jun 5, 2010
@fxn fxn deprecates Array#random_element in favor of Array#sample, backported …
…from Ruby 1.9, thanks to Marc-Andre Lafortune
@sikachu sikachu Make sure that rails recognized the full notation of IPv6 loopback ad…
…dress, and recognize in IPv4

[#3257 state:resolved]

Signed-off-by: José Valim <>
@chewi chewi Don't overwrite unsaved updates when loading an association but prese…
…rve the order of the loaded records. [#4642 state:resolved]

Signed-off-by: Pratik Naik <>
@lifo lifo Fix AR perf script e4accde
@MasterLambaster MasterLambaster Fix test which prevents connection reset on failing and remove hardco…
…ded connection

[#4689 state:committed]

Signed-off-by: Jeremy Kemper <>
Maxime RETY Fix Yajl backend discovery in ActiveSupport::JSON

Signed-off-by: Jeremy Kemper <>
@chewi chewi When not overwriting unsaved updates in nested attributes, allow alre…
…ady-saved records to be refreshed.

Signed-off-by: José Valim <>
@sikachu sikachu Update bundled i18n gem to 0.4.1 to make sure every project will be w…
…arn about using deprecated %{..} interpolation.

This will also make sure that by changing {{..}} into %{..} won't break any Rails 2.3.x application, since it would load the vendored version if it's not satisfy the version requirement.

Signed-off-by: José Valim <>
@sikachu sikachu Change all i18n interpolations from {{...}} to %{...}
This will silent all warning if there's a i18n version 0.4.x gem install on user's machine.

[#4913 state:resolved]

Signed-off-by: José Valim <>
@jstorimer jstorimer CookieStore should preserve the Set-Cookie header Array [#4743 state:…

Signed-off-by: Jeremy Kemper <>
@jeremy jeremy CI: add i18n gem e703fc1
@zilkey zilkey remove_column should raise an ArgumentError when no columns are passe…
#4803 state:resolved]

Signed-off-by: Michael Koziarski <>
@NZKoz NZKoz make text_field and hidden_field omit the value attribute if the deve…
…loper explicitly passes in :value => nil [#4839 state:resolved]

Signed-off-by: Michael Koziarski <>


@NZKoz NZKoz Revert "make text_field and hidden_field omit the value attribute if …
…the developer explicitly passes in :value => nil [#4839 state:reopened]"

This reverts commit 52c922f
Paweł Kondzior STI should identify itself inside named_scope
[#1570 state:resovled]

Signed-off-by: José Valim <>
Neeraj Singh test for #1570
Signed-off-by: José Valim <>
@maxim maxim Fix eager loading of polymorphic has_one associations nested-included…
… under polymorphic belongs_to associations. [#3233 state:resolved]

Signed-off-by: José Valim <>
Neeraj Singh Fragment cache not generating the proper cache key in log
[#4827 state:resolved]

Signed-off-by: José Valim <>
@harking harking Fixes #2415 by creating a new instance of the Model when saving attri…
…butes to that model and the associated attributes already exist. Tests included. [#2415 state:resolved]

Signed-off-by: José Valim <>
kane quote scoped columns in validates_uniqueness_of [#4909 state:resolved]
Signed-off-by: José Valim <>
Neeraj Singh fixes to the tests for patch #4909
Signed-off-by: José Valim <>
@josevalim josevalim Use size for Ruby 1.8.6 compatibility. 68bfd8a
@fxn fxn deprecates load_(once_)paths in dependencies and app config in favor …
…of autolaod_(once_)paths
@sikachu sikachu Make sure that Rails doesn't resent session_id cookie over and over a…
…gain if it's already there [#2485 state:resolved]

This apply to only Active Record store and Memcached store, as they both store only the session_id, which will be unchanged, in the cookie.

Signed-off-by: José Valim <>
@mudge mudge Alias ActiveSupport::OrderedHash#update to ActiveSupport::OrderedHash…

This ensures that an OrderedHash's keys are set up appropriately when using update.

[#4973 state:committed]

Signed-off-by: Jeremy Kemper <>
@chaitanyav chaitanyav Add OrderedHash#invert to preserve order in ruby 1.8
Signed-off-by: José Valim <>
@josevalim josevalim Tidy up tests in previous commit since they did not assure an Ordered…
…Hash is returned (the test would pass for an array and would pass by chance for hashes).

[#4875 state:resolved]
@dolzenko dolzenko Add module_eval missing file_name and line_number args
[#4712 state:resolved]

Signed-off-by: José Valim <>
@spastorino spastorino Don't store incorrect values in zones_map backport
[#4942 state:committed]

Signed-off-by: José Valim <>
@texel texel test that unknown zones don't store mapping keys

Signed-off-by: Santiago Pastorino <>
Signed-off-by: José Valim <>

This might not be what we want - it does a lookup (and creates a TimeZone object) regardless of whether one already exists in zone_map

Ruby on Rails member

@texel you're right please add a patch on the #4942 ticket and assign to me

Done and done. Thanks!

sikachu and others added some commits Jun 29, 2010
@sikachu sikachu Fix [54a5088cd56d28303c1af204b9f632083ff6a3f5] where the i18n gem was…
I've tested and confirm that `2-3-stable` will use the vendored `i18n` gem if there's no `i18n` gem with version >= 0.4.1 installed

Signed-off-by: José Valim <>
@dtrasbo dtrasbo Only tell users that the Rails gem is missing if it's actually the ca…
…se [#2901 state:committed]

Signed-off-by: José Valim <>
@dtrasbo dtrasbo Deprecate ActiveRecord::Base#class_name [#379 state:committed]
Signed-off-by: José Valim <>
@texel texel Rewrite the clause to pluck the existing value from zones_map before …
…performing a lookup. [#4942 state:resolved]

Signed-off-by: José Valim <>
@tenderlove tenderlove AssociationCollection#create_by_*, find_or_create_by_* work properly …
…now. [#1108 state:resolved]

Signed-off-by: Jeremy Kemper <>
@jberkel jberkel Backported patch from [#4762]
URL fragments should not have safe characters escaped. Ref: Appendix A,

Signed-off-by: José Valim <>
@chewi chewi Don't remove scheduled destroys when loading an association.
Signed-off-by: José Valim <>
@tenderlove tenderlove fisting Session::AbstractStore#clear to actually clear the session. […
…5030 state:resolved]

Signed-off-by: Jeremy Kemper <>
@josevalim josevalim Use bind instead of instance_exec cause it may be causing memory leak…
…s. Also, provide a simpler and sane implementation for scoped. [#5044 state:resolved]
@mislav mislav add missing require to ActiveRecord "base_test.rb"
Signed-off-by: Jeremy Kemper <>
@mislav mislav test that ActiveRecord `destroy` and `destroy_all` return destroyed r…

Signed-off-by: Jeremy Kemper <>
@gammons gammons fixes #2362, eager loading :through associations will join the :sourc…
…e model if there are :conditions

Signed-off-by: José Valim <>
@metaskills metaskills Fix the #using_limitable_reflections? helper to work correctly by not…
… examining the length of an array which contains false/true, hence always passing.

Signed-off-by: José Valim <>
@hardbap hardbap A generated plugin's test are not run by 'rake test'
Signed-off-by: José Valim <>
perezd commented on 5efb150 Jul 11, 2010

How does this changeset effect polymorphic associations? In Rails 2.3.8, my polymorphic nested attributes don't work anymore, it tells me I don't have an initialized constant that matches MyClass::PolymorphicAssociationClassName as a NameError. PolymorphicAssociationClassName would be MyClass::Owner which does not exist as a true class, but is the name of my polymorph association.

Is this a bug? I cannot upgrade to Rails 2.3.8, things worked fine in 2.3.5!

jlewallen and others added some commits Jul 7, 2010
@jlewallen jlewallen Set destroyed=true in opt locking's destroy [#5058 state:resolved]
Signed-off-by: José Valim <>
@lovitt lovitt Sessions should not be created until written to and session data shou…
…ld be destroyed on reset. [#4938 state:resolved]

Signed-off-by: José Valim <>
@tenderlove tenderlove fixing performance regression from 2.3.5 -> 2.3.8 7b6383f
@NZKoz NZKoz Only skip eager loading the code if dependency_loading is still enabled.
Otherwise rake tasks which depend on environment will get errors about missing constants.

I'm getting no such file to load -- active_support/core_ext/kernel/singleton_class (LoadError).

Perhaps you meant to require 'active_support/core_ext/object/singleton_class.rb' ?

Also see

If the file has the extension .rb, it is loaded as a source file; [..]
Otherwise, Ruby tries adding .rb, .so, and so on to the name.

johannesh, the problem isn't the extension but the path.

$ git checkout master
Switched to branch 'master'
$ find . -name singleton_class.rb
$ git checkout 2-3-stable
Switched to branch '2-3-stable'
$ find . -name singleton_class.rb

I know. All I stated was that the extension is optional.


This file seems to be missing from the commit active_support/core_ext/module/remove_method.rb

Ruby on Rails member

Sorry about that guys. Rails was picking up files out of my installed gems when I ran the tests. I've backported those two files here: 4ae4828


It's fine to add this to Rails 3, but I don't think it's a good idea to backport this to Rails 2.3. It's a major change of behavior. In the past I have taken full advantage of the fact that facade methods are not used to generate form values. This change causes breakages all over, and I have a feeling it may affect a lot of people. After all, this was not a bug -- this particular behavior has been documented in books, blog posts etc. Can you please re-consider this change for 2.3?

I agree with feldpost on this one. In addition to this, the method is called "value_BEFORE_type_cast", but it does deliver the value AFTER the type cast. This is misleading at best.

When validation errors happen on form, the form needs to display the invalid value. This code change prevents us from showing user entered invalid value. A case in point is any invalid numeric value gets turned into 0.0 (after the type cast).

Ruby on Rails member

This has now been reverted in 2-3-stable

Thanks, Michael.

Cool, thank you!

Why hasn't this been reverted in Rails 3 too? Is the failed-validation behaviour not a problem there?

Ruby on Rails member

After discussing this we agreed to revert this behavior everywhere. So i'm reverting this on Rails 3 too

subbarao and others added some commits Jul 22, 2010
@subbarao subbarao In nested_attributes when association is not loaded and association r…
…ecord is saved then in memory record attributes should be saved

[#5053 state:resolved]

Signed-off-by: José Valim <>
@fxn fxn it is no longer true that load_paths are going to be removed in final 15cafbe
@NZKoz NZKoz Revert "Ruby 1.9.2: explicitly raise NoMethodError for attempts at ex…
…plicit coercion"

This reverts commit 64082b3.

This change broke compatibility with 1.8.6 and was only needed for older 1.9.2 versions


@spastorino spastorino Making time_zone_options_for_select return a html_safe string master …
@Jeff-Lawson Jeff-Lawson Bug Fix -- clean up connection after stored procedure [#3151 state:re…
…solved] for 2-3-stable
@Jeff-Lawson Jeff-Lawson Bug Fix -- clean up connection after stored procedure [#3151 state:re…
…solved] for 2-3-stable
@fxn fxn revises guides generation add3ccb
@fxn fxn restores railties/README as home page of the API 11361a9
@mikel mikel Make ActiveResource::InvalidRequestError more user friendly
Signed-off-by: Xavier Noria <>
@jeremy jeremy Exclude guides from gem to keep file size small bdace5d
@jeremy jeremy Prepare for Rails 2.3.9. Release 2.3.9.pre gems. b2c9198
@mikel mikel Updating documentation on ActiveResource HTTP Mock and also adding te…
…st coverage
@mikel mikel Back porting HttpMock test from Rails 3 master 56fdfeb
@mikel mikel Adding option to ActiveResource to allow you to not reset the previou…
…sly stored requests and responses by passing false to respond_to

Backport of commit 2a1b23f851ea3d4634fc68b74fe6b1afed23d3ef on rails/master
@jeremy jeremy require 'thread' for Mutex dependency 6f17422
@metaskills metaskills Conversion of a two dimensional array that is ruby 1.8.6 safe. Fix pa…
…ren warnings too.

Signed-off-by: Michael Koziarski <>
@jeremy jeremy Rails 2.3.9 a61a39e

Is there a reason why was this deprecated?


Should we really be swallowing issues with the index name being too long? This seems like unexpected behavior and an exception should just be raised. Granted a warning is logged, but the console output looks like everything worked okay. I'm unaware of anyone that checks the detailed log when things look okay.

Ruby on Rails member
josh commented on 85b6d79 Oct 26, 2010

Header values should never be an Array. We should revert this.

Agreed, we should go the other direction and always force it to be a string. I'll write a patch.

Ruby on Rails member

Rather than just patch it up everywhere we should probably refactor the session code so that it goes through the CookieJar rather than writing out the session cookie directly itself. That way we're delegating the cookie handling to Rack, where it should be.

Ruby on Rails member
josh replied Oct 27, 2010

I noticed this upgrading an app to 2.3.9 and Rack::Lint went nuts. Most rack servers will still handle legacy Array headers fine so this isn't super critical.

@pixeltrix I extracted some helpers to Rack::Utils awhile back for this reason.

This seems super broken too. We're converting Set-Cookie to an Array on the way out. (I'm sure git blame says I wrote the code too)

Array headers are fine internally as long as we cast them to strings on the way out so other middleware doesn't have to deal with them.

Ruby on Rails member

@josh I saw those and now that 2-3-stable is requiring Rack 1.1 we can use them. I think there's at least three places where cookies are being built so it's ripe for refactoring. This commit needs reverting as well.

@pixeltrix that commit followed the convention that I set up with this commit. I'll have a look at using set_cookie_header! where possible instead.

Ruby on Rails member

@jstorimer the session stores probably shouldn't be calling set_cookie_header! directly - we should let ActionController::CookieJar do the heavy lifting.

Ruby on Rails member

Pixeltrix, the cookie store in Rails master already delegates to the cookie jar. All other stores are coming from Rack (where we can't have any delegation).

The response is also broken in Rails 3. I remember there is a logic to convert the Set-Cookie from an Array to a String and this definitely needs to be fixed as well.

boone replied Dec 2, 2010

Is there a ticket in Lighthouse where I can track this issue? Thanks.

@boone Looks like this was already taken care of in e0eb8e9


I had an error here because session is a Hash and doesn't have a destroy method. Seems consistent with the line below where session is initialized as a Hash. Shouldn't this case be checked ? (like if session.responds_to? :destroy, or something)

@seuros seuros added a commit to seuros/django that referenced this pull request Aug 12, 2014
@seuros seuros Lazy-load adapters, fixes #6 91461dc
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.