aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
Commit message (Collapse)AuthorAgeFilesLines
* Fix changelog entry about fast_string_to_time fixCarlos Antonio da Silva2012-11-241-2/+2
| | | | | Introduced in 53ca22f2e11cd3050d75385bc31b6bb5055a2738. Thanks @rochefort. [ci skip]
* Move initialize_copy method around to let new method / build alias closerCarlos Antonio da Silva2012-11-241-8/+8
|
* Merge pull request #8291 from senny/8265_build_with_polymorphic_associationRafael Mendonça França2012-11-223-1/+15
|\ | | | | | | | | | | | | prevent mass assignment of polymorphic type when using `build` Conflicts: activerecord/CHANGELOG.md
| * prevent mass assignment of polymorphic type when using `build`Yves Senn2012-11-223-1/+15
| | | | | | | | Closes #8265
* | Remove the #sum method from CollectionAssociationCarlos Antonio da Silva2012-11-211-9/+0
| | | | | | | | | | | | | | Since edd94cee9af1688dd036fc58fd405adb30a5e0da, CollectionProxy delegates all calculation methods - except count - to the scope, which does basically what this method was doing, but since we're delegating from the proxy, the association method was never called.
* | Deprecate Relation#sum with a block.Carlos Antonio da Silva2012-11-215-3/+22
| | | | | | | | | | | | | | To perform a sum calculation over the array of elements, use to_a.sum(&block). Please check the discussion in f9cb645dfcb5cc89f59d2f8b58a019486c828c73 for more context.
* | Revert "Yield only one argument instead of splatting."Carlos Antonio da Silva2012-11-213-37/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f9cb645dfcb5cc89f59d2f8b58a019486c828c73. Conflicts: activerecord/CHANGELOG.md Revert "Allow blocks for count with ActiveRecord::Relation. Document and test that sum allows blocks" This reverts commit 9cc2bf69ce296b7351dc612a8366193390a305f3. Conflicts: activerecord/lib/active_record/relation/calculations.rb
* | Don't allocate new strings in compiled attribute methodsJon Leighton2012-11-213-21/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This improves memory and performance without having to use symbols which present DoS problems. Thanks @headius and @tenderlove for the suggestion. This was originally committed in f1765019ce9b6292f2264b4601dad5daaffe3a89, and then reverted in d3494903719682abc0948bef290af0d3d7b5a440 due to it causing problems in a real application. This second attempt should solve that. Benchmark --------- require 'active_record' require 'benchmark/ips' ActiveRecord::Base.establish_connection(adapter: 'sqlite3', database: ':memory:') class Post < ActiveRecord::Base connection.create_table :posts, force: true do |t| t.string :name end end post = Post.create name: 'omg' Benchmark.ips do |r| r.report('Post.new') { Post.new name: 'omg' } r.report('post.name') { post.name } r.report('post.name=') { post.name = 'omg' } r.report('Post.find(1).name') { Post.find(1).name } end Before ------ Calculating ------------------------------------- Post.new 1419 i/100ms post.name 7538 i/100ms post.name= 3024 i/100ms Post.find(1).name 243 i/100ms ------------------------------------------------- Post.new 20637.6 (±12.7%) i/s - 102168 in 5.039578s post.name 1167897.7 (±18.2%) i/s - 5186144 in 4.983077s post.name= 64305.6 (±9.6%) i/s - 317520 in 4.998720s Post.find(1).name 2678.8 (±10.8%) i/s - 13365 in 5.051265s After ----- Calculating ------------------------------------- Post.new 1431 i/100ms post.name 7790 i/100ms post.name= 3181 i/100ms Post.find(1).name 245 i/100ms ------------------------------------------------- Post.new 21308.8 (±12.2%) i/s - 105894 in 5.053879s post.name 1534103.8 (±2.1%) i/s - 7634200 in 4.979405s post.name= 67441.0 (±7.5%) i/s - 337186 in 5.037871s Post.find(1).name 2681.9 (±10.6%) i/s - 13475 in 5.084511s
* | Move migration test together with other join table testsCarlos Antonio da Silva2012-11-212-7/+6
|/
* Merge pull request #7716 from steveklabnik/issue_7715Rafael Mendonça França2012-11-212-1/+8
|\ | | | | Coerce strings in create_join_table.
| * Coerce strings in create_join_table.Steve Klabnik2012-11-212-1/+8
| | | | | | | | | | | | | | If you accidentally pass a string and a symbol, this breaks. So we coerce them both to strings. Fixes #7715
* | TypoChris Patuzzo2012-11-211-1/+1
| |
* | Merge pull request #6245 from bogdan/bc_timestampRafael Mendonça França2012-11-214-3/+24
|\ \ | | | | | | Postgresql adapter: fix handling of BC timestamps
| * | Fix postgresql adapter to handle bc timestamps correctlyBogdan Gusiev2012-11-214-3/+24
| | |
* | | Refactoring, testing and documenting pg_connection.distinctSemyon Perepelitsa2012-11-212-13/+39
|/ /
* | Remove return guard and use code convetionsRafael Mendonça França2012-11-201-7/+11
| |
* | Postgresql doesn't accepts limits on text columns.Victor Costan2012-11-204-0/+35
| |
* | Be a bit less conservative with mysql in adapterCarlos Antonio da Silva2012-11-191-1/+1
| |
* | Remove not needed begin..end from AR#saveCarlos Antonio da Silva2012-11-191-5/+3
| |
* | Initialize accessors to remove some warnings in Ruby 2.0Carlos Antonio da Silva2012-11-192-7/+4
| |
* | Merge pull request #3023 from Tho85/preserve_sti_typeRafael Mendonça França2012-11-183-2/+31
|\ \ | | | | | | | | | | | | | | | | | | AR::Base.becomes should not change the STI type Conflicts: activerecord/CHANGELOG.md
| * | AR::Base.becomes should not change the STI typeThomas Hollstegge2012-11-173-2/+31
| | | | | | | | | | | | If you want to change the STI type too, use AR::Base.becomes! instead
* | | Add rename_index to change_table.Jarek Radosz2012-11-193-0/+23
| | |
* | | Ensure ordering to make the test pass with postgresqlCarlos Antonio da Silva2012-11-181-4/+5
| | |
* | | Add test to ensure preloading works as expected with "select" and "includes".Dieter Komendera2012-11-181-0/+13
| | | | | | | | | | | | This didn't work in rails 3.1. See #2303 for more information and original pull request.
* | | Remove not used require and some useless test commentsCarlos Antonio da Silva2012-11-172-14/+3
| | |
* | | Bump mysql gem version to the newly 2.9.0, fix build.Carlos Antonio da Silva2012-11-171-1/+1
| | |
* | | Fix typo in module name and make #in_time_zone privateCarlos Antonio da Silva2012-11-173-3/+5
| | |
* | | Extract #in_time_zone helper method duplication to a moduleCarlos Antonio da Silva2012-11-173-24/+17
| | |
* | | Simplify helper method in attribute methods testCarlos Antonio da Silva2012-11-171-3/+1
| | |
* | | Remove return guardCarlos Antonio da Silva2012-11-172-3/+1
|/ /
* | Add a deprecation before removing find_table_nameAlexey Muranov2012-11-171-0/+6
| | | | | | The `ActiveRecord::Fixtures::find_table_name` method was removed from "master" almost a year ago, but it was never deprecated. Here it comes back, more dead than alive.
* | Fix some AR changelog entries [ci skip]Carlos Antonio da Silva2012-11-161-6/+5
| |
* | Test for has_many bug on unsaved recordsGeorge Brocklehurst2012-11-161-0/+7
| | | | | | | | See issue #7950.
* | Merge branch 'master' of github.com:lifo/docrailsVijay Dev2012-11-1722-204/+204
|\ \ | | | | | | | | | | | | Conflicts: actionpack/lib/action_dispatch/routing/redirection.rb
| * | 1.9 Syntax related changesAvnerCohen2012-11-1015-93/+93
| | |
| * | 1.9 hash syntax changesAvnerCohen2012-11-087-111/+111
| | |
* | | arel columns can be used for grouping so that "weird" column names are usableAaron Patterson2012-11-153-0/+11
| | |
* | | stop hardcoding FrontBase adapter conditionalsAaron Patterson2012-11-151-1/+1
| | |
* | | stop passing *args to generate aliasesAaron Patterson2012-11-151-4/+2
| | |
* | | create fewer relation objectsAaron Patterson2012-11-151-3/+6
| | |
* | | Assert the query result instead of checking for nothing raisedCarlos Antonio da Silva2012-11-131-4/+2
| | | | | | | | | | | | | | | | | | | | | Nothing should be raised anyway :smile: Thanks @spastorino :heart: https://github.com/rails/rails/pull/8202/files#r2112067
* | | Merge pull request #8202 from nikitug/regression_test_on_dynamic_finder_resultCarlos Antonio da Silva2012-11-132-0/+13
|\ \ \ | | | | | | | | Regression test for #7238
| * | | Regression test for #7238Nikita Afanasenko2012-11-132-0/+13
| | | |
* | | | Merge pull request #8176 from senny/7551_pluck_with_selectRafael Mendonça França2012-11-133-2/+19
|\ \ \ \ | | | | | | | | | | `#pluck` can be used on a relation with `select` clause (#7551)
| * | | | `#pluck` can be used on a relation with `select` clause.Yves Senn2012-11-123-1/+18
| | | | | | | | | | | | | | | | | | | | Closes #7551
| * | | | cleanup, removed whitespace from CHANGELOGYves Senn2012-11-121-1/+1
| | | | |
* | | | | Add a regression test on #8195Nikita Afanasenko2012-11-131-0/+7
| |/ / / |/| | |
* | | | only clear caches if we are actually connected to the databaseAaron Patterson2012-11-121-2/+4
| | | |
* | | | Merge and add tests related to 5215Vipul A M2012-11-123-18/+25
|/ / /