aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record
Commit message (Collapse)AuthorAgeFilesLines
* Additional fix for CVE-2012-2661Ernie Miller2012-06-111-3/+3
| | | | | | | | While the patched PredicateBuilder in 3.1.5 prevents a user from specifying a table name using the `table.column` format, it doesn't protect against the nesting of hashes changing the table context in the next call to build_from_hash. This fix covers this case as well.
* Fix GH #3163. Should quote database on mysql/mysql2.kennyj2012-06-111-1/+1
| | | | | | Conflicts: activerecord/test/cases/adapters/mysql/mysql_adapter_test.rb
* Merge pull request #6698 from yahonda/address_ora_911_masterRafael Mendonça França2012-06-111-1/+1
| | | | Address ORA-00911 errors because of the heading underscore.
* Merge pull request #6521 from Empact/throw-resultRafael Mendonça França2012-06-101-0/+2
| | | | | | Fix that #exists? can blow up with ThrowResult exception Conflicts: activerecord/lib/active_record/relation/finder_methods.rb
* Minimal change to query generation of exists? that makes SQLServer and ↵iaddict2012-06-101-1/+1
| | | | | | | others happy that do not work without a column alias. Conflicts: activerecord/lib/active_record/relation/finder_methods.rb
* Merge pull request #6695 from kennyj/fix_6635Rafael Mendonça França2012-06-101-5/+5
| | | | Fix #6635. We should call Scoping methods, before calling Array methods.
* ActiveRecord#attributes optimization: minimize objects createdTieg Zaharia2012-06-091-1/+3
|
* Revert "Perf: Don't load the association for #delete_all."Jon Leighton2012-06-074-33/+9
| | | | | | | | | | This reverts commit b98d1e21635d8776de8893cc09bd86c71f6c78f0. Closes #6609 Conflicts: activerecord/lib/active_record/associations/has_and_belongs_to_many_association.rb
* Fix #6591. If a field with timezone isn't changed, we don't call will_change!.kennyj2012-06-041-1/+2
|
* bumping to 3.2.5Aaron Patterson2012-05-311-1/+1
|
* Restore behavior of Active Record 3.2.3 scopesAndrew White2012-06-012-5/+4
| | | | | | | | | | | | | | A series of commits relating to preloading and scopes caused a regression. Cloning the relation calls initialize_copy which resets a number of instance variables to nil. Without this the scope thinks that it is already loaded when it is called again. Reverts the following commits: 13f1401a6cf0266a3b0a91b173f976db2d4e50f3 8491740ca5361ba9df20e1c8b906c709f5bfbc12 dffbb521a0d00c8673a3ad6e0e8ff526f32daf4e Fixes #6575, #6576 & #6577
* Merge branch '3-2-rel' into 3-2-stableAaron Patterson2012-05-311-1/+1
|\ | | | | | | | | | | | | | | * 3-2-rel: bumping to 3.2.4 adding security notifications to CHANGELOGs updating changelogs Merge pull request #6558 from parndt/fix_regression
| * bumping to 3.2.4Aaron Patterson2012-05-311-1/+1
| |
| * Merge branch '3-2-stable-sec' into 3-2-relAaron Patterson2012-05-312-4/+19
| |\ | | | | | | | | | | | | | | | * 3-2-stable-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
| * | Merge pull request #6558 from parndt/fix_regressionAaron Patterson2012-05-301-3/+4
| | | | | | | | | | | | Fix regression
* | | Merge branch '3-2-stable-sec' into 3-2-stableAaron Patterson2012-05-313-6/+21
|\ \ \ | | |/ | |/| | | | | | | | | | | | | * 3-2-stable-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 bumping to 3.2.4.rc1
| * | predicate builder should not recurse for determining where columns.Aaron Patterson2012-05-302-4/+19
| |/ | | | | | | | | | | Thanks to Ben Murphy for reporting this CVE-2012-2661
| * bumping to 3.2.4.rc1Aaron Patterson2012-05-281-2/+2
| |
* | Revert "Removes unneeded caching from ActiveRecord::Base.relation"Philip Arndt2012-05-311-3/+4
| | | | | | | | | | | | | | | | | | | | This reverts commit ebfa58abc895c0639211cb896a47b04e424322c8. This change caused a regression in my application's tests: * Failing build http://travis-ci.org/#!/resolve/refinerycms/builds/1461242 Broken tests pass after this change is reverted.
* | Merge pull request #6477 from steveklabnik/close_discovered_pg_connectionRafael Mendonça França2012-05-301-1/+2
| | | | | | | | Properly discover a connection is closed in postgresql_adapter
* | Merge pull request #5810 from kennyj/fix_5797Aaron Patterson2012-05-303-5/+6
|/ | | | | | Fix #5797. Error calling dup method on AR model with serialized field Conflicts: activerecord/lib/active_record/core.rb
* Merge pull request #5244 from fotos/myqsl2_wait_timeoutRafael Mendonça França2012-05-251-1/+1
| | | | Maximum wait_timeout on Windows is 2147483
* Merge pull request #5925 from Juanmcuello/pg_structure_dumpCarlos Antonio da Silva2012-05-241-2/+2
|\ | | | | Quote arguments in db:structure:dump for PostgreSQL.
| * Use Shellwords to scape arguments in db:structure:dump for PostgreSQL.Juan M. Cuello2012-05-221-2/+2
| | | | | | | | fixes #5913
* | Synchronize the ConnectionPool#release method to avoid thread safety issues ↵Andrew Selder2012-05-231-10/+12
|/ | | | | | | | | | | | | | | | | | | | [#6464] Fixes #6464 Synchronize the contents of the release method in ConnectionPool due to errors when running in high concurrency environments. Detected invalid hash contents due to unsynchronized modifications with concurrent users org/jruby/RubyHash.java:1356:in `keys' /usr/local/rvm/gems/jruby-1.6.7@new_import/gems/activerecord-3.2.3/lib/a ctive_record/connection_adapters/abstract/connection_pool.rb:294:in `release' /usr/local/rvm/gems/jruby-1.6.7@new_import/gems/activerecord-3.2.3/lib/a ctive_record/connection_adapters/abstract/connection_pool.rb:282:in `checkin'
* Restore the frozen state on rollback. Fixes #6417.Godfrey Chan2012-05-221-1/+3
| | | | | | | | | | | | | | | | | | | | | | This is a 3-2-stable backport for #6420 which was merged into master. Currently, when saving a frozen record, an exception would be thrown which causes a rollback. However, there is a bug in active record that "defrost" the record as a side effect: >> t = Topic.new => #<Topic id: nil, ...> >> t.freeze => #<Topic id: nil, ...> >> t.save RuntimeError: can't modify a frozen Hash >> t.frozen? => false >> t.save => true This patch fixes the bug by explictly restoring the frozen state on the attributes Hash after every rollback.
* Postgresql doesn't accept limits on binary (bytea) columns.Victor Costan2012-05-211-8/+19
|
* Fix uniqueness validator with `allow_nil: false` also for mysqlPiotr Sarnacki2012-05-191-1/+1
| | | | | MySQL's adapter was changing value for case sensitive comparison. We don't need to do it for `nil`.
* Fix `validates_uniqueness_off :field, :allow_nil => false`Piotr Sarnacki2012-05-191-2/+2
| | | | | | | | | | | | | | | | | | Closes (#5853) Uniqueness validator was not properly checking if there are any existing records, when value was `nil` and column was text type. `nil` was converted to string, which resulted in queries looking like: ```sql SELECT 1 FROM "posts" WHERE "posts"."title" = '' LIMIT 1 ``` instead of ```sql SELECT 1 FROM "posts" WHERE "posts"."title" IS NULL LIMIT 1 ```
* Merge pull request #6398 from pmahoney/threadsafe-connection-poolAaron Patterson2012-05-191-4/+8
| | | | Synchronize read and modification of @reserved_connections
* Ensure that CollectionAssociation#replace returns proper targetPiotr Sarnacki2012-05-191-1/+1
| | | | | | | | The fix commited in e2a070c was returning the `new_target`, as a try to return whatever user replaced association with. The problem is, the resulting association target may be ordered differently. In such case we want to return the target that will be later used for that association.
* Fix HABTM syntax error in Ruby 1.8.xErnie Miller2012-05-181-2/+2
|
* fix #delete_all with habtm with :delete_sqlJon Leighton2012-05-181-0/+1
|
* Perf: Don't load the association for #delete_all.Jon Leighton2012-05-184-9/+33
| | | | | | | | Bug #6289 Conflicts: activerecord/test/cases/associations/has_many_associations_test.rb
* Fix CollectionAssociation#replace to return new target (closes #6231)Piotr Sarnacki2012-05-161-0/+2
| | | | | | Conflicts: activerecord/test/cases/associations/has_many_associations_test.rb
* Remove unused private method yaml_fixtures_keyAlexey Muranov2012-05-111-3/+0
|
* Return false for exists? with new records - fixes #6199.Andrew White2012-05-101-2/+1
| | | | (cherry picked from commit fa21b73ebb8339ad388f149c817c433b6254d490)
* Merge pull request #6221 from ↵Jeremy Kemper2012-05-091-7/+26
|\ | | | | | | | | alexeymuranov/deprecate__instantiate_fixtures__arity Deprecate ActiveRecord::Fixtures.instantiate_fixtures unused parameter
| * Remove deprecated use of ::instantiate_fixturesAlexey Muranov2012-05-101-4/+4
| |
| * Deprecate ::instantiate_fixtures unused parameterAlexey Muranov2012-05-101-3/+22
| | | | | | | | | | | | Deprecate the use of AcitiveRecord::Fixtures::instantiate_fixtures(object, fixture_set_name, fixture_set, load_instances = true), use instead instantiate_fixtures(object, fixture_set, load_instances = true). To be changed in master branch.
* | Stop showing deprecations for Ruby 1.8.7 with remove_columnCarlos Antonio da Silva2012-05-092-4/+6
|/ | | | | String is Enumerable in 1.8.7, which means that passing a String to remove_column was generating deprecation warnings during tests.
* Merge pull request #6128 from frodsan/delete_all_limit_32Aaron Patterson2012-05-041-0/+2
|\ | | | | Fix #4979 against 3-2-stable
| * Fix #4979 against 3-2-stable - delete_all raise an error if a limit is providedFrancesco Rodriguez2012-05-021-0/+2
| |
* | Deprecate remove_column with array as an argumentPiotr Sarnacki2012-05-022-0/+13
|/
* Be sure to correctly fetch PK name from MySQL even if the PK has some custom ↵Akira Matsuda2012-04-191-1/+1
| | | | | | | | | | | option Backports #5900 Conflicts: activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb activerecord/test/cases/adapters/mysql/mysql_adapter_test.rb
* Removes unneeded caching from ActiveRecord::Base.relationBenedikt Deicke2012-04-191-4/+3
|
* Revert "Revert "Fix #5667. Preloading should ignore scoping.""Benedikt Deicke2012-04-191-2/+3
| | | | | | | | This reverts commit 1166d49f62ccab789be208112163ad13183224e2. Conflicts: activerecord/test/cases/associations/eager_test.rb
* Removes caching from ActiveRecord::Core::ClassMethods#relationBenedikt Deicke2012-04-191-2/+2
| | | | | | | | | | | | | | | The #relation method gets called in four places and the return value was instantly cloned in three of them. The only place that did not clone was ActiveRecord::Scoping::Default::ClassMethods#unscoped. This introduced a bug described in #5667 and should really clone the relation, too. This means all four places would clone the relation, so it doesn't make a lot of sense caching it in the first place. The four places with calls to relations are: activerecord/lib/active_record/scoping/default.rb:110:in `block in build_default_scope'" activerecord/lib/active_record/scoping/default.rb:42:in `unscoped'" activerecord/lib/active_record/scoping/named.rb:38:in `scoped'" activerecord/lib/active_record/scoping/named.rb:52:in `scope_attributes'" Conflicts: activerecord/lib/active_record/core.rb
* Revert "Fix #5667. Preloading should ignore scoping."Jeremy Kemper2012-04-181-3/+2
| | | | | | | | Causes a subtle regression where record.reload includes the default scope. Hard to reproduce in isolation. Seems like the relation is getting infected by some previous usage. This reverts commit dffbb521a0d00c8673a3ad6e0e8ff526f32daf4e.
* Check for nil loggerNorman Clarke2012-04-181-1/+1
|