aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Merge pull request #26305 from kamipo/follow-up-to-26301Kasper Timm Hansen2016-08-281-3/+1
|\ \ \ \ | | | | | | | | | | Switch back to `Hash.dup`
| * | | | Switch back to `Hash.dup`Ryuta Kamizono2016-08-281-3/+1
| | | | | | | | | | | | | | | | | | | | Follow up to #26301.
* | | | | Remove "Under Ruby 1.9" [ci skip]Ryuta Kamizono2016-08-281-9/+9
|/ / / / | | | | | | | | | | | | Rails dropped Ruby 1.9 support, but this comment still true.
* / / / Switch back to `Hash.dup`Jon Moss2016-08-271-4/+2
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The performance difference between `Hash[]` and `Hash.dup` looks to have been narrowed by @tenderlove via this commit --> https://github.com/ruby/ruby/commit/b3803cc49ad382e23291d75ce57ffb2b74bb9577#diff-eff9999082c8ce7d8ba1fc1d79f439cf. Since this commit first appeared in Ruby 2.0.0, and since Rails now requires a minimum Ruby version of 2.2.2, this performance boost should be available for all users. Relevant links: - This behavior was originally added via https://github.com/rails/rails/commit/02174a3efc6fa8f2e5e6f114e4cf0d8a06305b6a - The conversation on the Ruby issue tracker lives here --> https://bugs.ruby-lang.org/issues/7166
* / / Fix "warning: assigned but unused variable - task"Ryuta Kamizono2016-08-261-1/+1
|/ /
* | Test that AR query cache isn't busted when types are not same objectJames Coleman2016-08-241-0/+20
| | | | | | | | | | | | | | | | | | | | This is fixed in 5.0 as an ancillary part of 574f255629a45cd67babcfb9bb8e163e091a53b8 but here I also add a test for the condition. I'd previously backported the fix (and added a test) in the below commit; this brings the fix back up to master. (cherry picked from commit fce3dbf30241f2a65c777e192a7171b0eea81453)
* | Merge pull request #26182 from bogdan/remove-relation-metaprogrammingRafael França2016-08-234-94/+59
|\ \ | | | | | | Remove over meta programming in AR::Relation
| * | Remove over meta programming in AR::RelationBogdan Gusiev2016-08-234-94/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduced low level methods #set_value and #get_value for setting query attributes: relation.set_value(:where, {id: 1}) relation.get_value(:includes) Used those internally when working with relation's attributes at the abstract level
* | | Remove unnecessary `format_string`Ryuta Kamizono2016-08-231-15/+2
| | | | | | | | | | | | | | | `format_string` is used for standardized column types/arguments spaces. Now the standardization was removed at df84e9867219e9311aef6f4efd5dd9ec675bee5c.
* | | Merge pull request #26228 from kamipo/remove_unnecessary_any_and_manyRafael França2016-08-232-28/+12
|\ \ \ | | | | | | | | Remove unnecessary `any?` and `many?` methods for collection proxy
| * | | Remove unnecessary `any?` and `many?` methods for collection proxyRyuta Kamizono2016-08-192-28/+12
| | | | | | | | | | | | | | | | Simply use its own methods because `CollectionProxy` inherits `Relation`.
* | | | Merge pull request #26253 from kamipo/fix_ci_failureRafael França2016-08-231-2/+2
|\ \ \ \ | | | | | | | | | | Fix CI failure caused by df84e9867219e9311aef6f4efd5dd9ec675bee5c
| * | | | Fix CI failure caused by df84e9867219e9311aef6f4efd5dd9ec675bee5cRyuta Kamizono2016-08-231-2/+2
| | | | |
* | | | | Merge pull request #26231 from philipqnguyen/scoped-dependent-destroyJon Moss2016-08-221-0/+6
|\ \ \ \ \ | |/ / / / |/| | | | Doc on scoped has_many, dependent: :destroy
| * | | | Doc on scoped has_many, dependent: :destroyPhilip Nguyen2016-08-221-0/+6
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is to close #26111 Developers need to be aware that `dependent: :destroy` on a scoped `has_many` association would only destroy the associated objects in that scope. Potentially leaving other associated objects outside that scope untouched.
* | | | Remove the SchemaDumper options and change the default behaviorRafael Mendonça França2016-08-223-134/+16
| | | | | | | | | | | | | | | | | | | | Now the schema dumper by default doesn't align the types and arguments in the ruby format anymore.
* | | | Fix `OID::Bit#cast_value`Ryuta Kamizono2016-08-202-4/+5
|/ / / | | | | | | | | | Fixes #26137.
* | | Merge pull request #26219 from kamipo/remove_unused_blob_or_text_columnRafael França2016-08-192-9/+0
|\ \ \ | | | | | | | | Remove unused `blob_or_text_column?` method
| * | | Remove unused `blob_or_text_column?` methodRyuta Kamizono2016-08-192-9/+0
| | | |
* | | | Merge pull request #26218 from kamipo/remove_unnecessary_lengthRafael França2016-08-192-12/+6
|\ \ \ \ | |/ / / |/| | | Remove unnecessary `length` method for collection proxy
| * | | Remove unnecessary `length` method for collection proxyRyuta Kamizono2016-08-192-12/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | `length` is delegated to `records` (`load_target`) by `ActiveRecord::Delegation`. https://github.com/rails/rails/blob/v5.0.0/activerecord/lib/active_record/relation/delegation.rb#L38
* | | | Merge pull request #25675 from TimPetricola/schema-no-standardized-column-widthsRafael Mendonça França2016-08-193-10/+122
|\ \ \ \ | | | | | | | | | | | | | | | Option not to line up column attributes in schema.rb
| * | | | Option not to line up column types and attributes in schema.rbTim Petricola2016-08-173-13/+125
| | | | |
* | | | | Add chengelog entry to #25976Rafael Mendonça França2016-08-191-0/+7
| | | | | | | | | | | | | | | | | | | | [Rafael Mendonça França + Robin Dupret]
* | | | | Merge pull request #26154 from ↵Rafael Mendonça França2016-08-196-84/+70
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | kamipo/remove_text_default_treated_as_empty_string Remove text default treated as an empty string in non-strict mode
| * | | | Remove text default treated as an empty string in non-strict modeRyuta Kamizono2016-08-196-84/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Strict mode controls how MySQL handles invalid or missing values in data-change statements such as INSERT or UPDATE. If strict mode is not in effect, MySQL inserts adjusted values for invalid or missing values and produces warnings. ```ruby def test_mysql_not_null_defaults_non_strict using_strict(false) do with_mysql_not_null_table do |klass| record = klass.new assert_nil record.non_null_integer assert_nil record.non_null_string assert_nil record.non_null_text assert_nil record.non_null_blob record.save! record.reload assert_equal 0, record.non_null_integer assert_equal "", record.non_null_string assert_equal "", record.non_null_text assert_equal "", record.non_null_blob end end end ``` It is inconsistent with other types that only text/blob defaults treated as an empty string. This commit fixes the inconsistency.
* | | | | Merge pull request #26217 from kamipo/revert_23067Rafael França2016-08-191-1/+1
|\ \ \ \ \ | | | | | | | | | | | | Revert "`sql_for_insert` returns values for passing to `exec_insert`"
| * | | | | Revert "`sql_for_insert` returns values for passing to `exec_insert`"Ryuta Kamizono2016-08-191-1/+1
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts #23067. #23067 is for propagating `pk` value from `sql_for_insert` to `exec_insert` (avoiding extra query for pg adapter). Now `exec_insert` includes `sql_for_insert` since #26002 therefore this propagating is no longer needed.
* | | | | Merge pull request #25989 from ↵Rafael França2016-08-192-11/+6
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | kamipo/remove_unnecessary_select_for_collection_proxy Remove unnecessary `select` method for `CollectionProxy`
| * | | | | Remove unnecessary `select` method for `CollectionProxy`Ryuta Kamizono2016-08-182-11/+6
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently `CollectionProxy` inherits `Relation` and `Relation` includes `QueryMethods`. This method is completely duplicated. https://github.com/rails/rails/blob/v5.0.0/activerecord/lib/active_record/relation/query_methods.rb#L271-L275
* | | | | Merge pull request #26089 from travisoneill/sqlite_rollback_fixRafael Mendonça França2016-08-194-5/+31
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | Sqlite3 Migration Error Fixed (issue #26087)
| * | | | Added nil case handling to allow rollback migration in case oftravis.h.oneill@gmail.com2016-08-174-5/+31
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | invalid column type /activerecord/lib/active_record/connection_adapters /abstract/schema_definitions.rb:306 type = type.to_sym Changed to the following to handle nil case: type = type.to_sym if type Added regression test for this case: /activerecord/test/cases/migration_test.rb:554 if current_adapter?(:SQLite3Adapter) def test_allows_sqlite3_rollback_on_invalid_column_type Person.connection.create_table :something, force: true do |t| t.column :number, :integer t.column :name, :string t.column :foo, :bar end assert Person.connection.column_exists?(:something, :foo) assert_nothing_raised { Person.connection.remove_column :something, :foo, :bar } assert !Person.connection.column_exists?(:something, :foo) assert Person.connection.column_exists?(:something, :name) assert Person.connection.column_exists?(:something, :number) ensure Person.connection.drop_table :something, if_exists: true end end
* | | | Merge pull request #24099 from k0kubun/preserve-readonlyRafael Mendonça França2016-08-185-4/+31
|\ \ \ \ | | | | | | | | | | | | | | | Preserve readonly flag only for readonly association
| * | | | Preserve readonly flag only for readonly associationTakashi Kokubun2016-07-305-4/+29
| | | | | | | | | | | | | | | | | | | | Fixes #24093
* | | | | Merge pull request #26200 from kamipo/remove_unnecessary_ordinal_methodsRafael França2016-08-183-93/+84
|\ \ \ \ \ | | | | | | | | | | | | Remove unnecessary ordinal methods for collection association
| * | | | | Remove unnecessary ordinal methods for collection associationRyuta Kamizono2016-08-183-93/+84
| | |/ / / | |/| | | | | | | | | | | | | | | | | | Currently `CollectionProxy` inherits `Relation` therefore we can use its own methods rather than delegating to collection association.
* | | | | Merge pull request #25999 from kamipo/remove_sanitize_conditionsRafael França2016-08-183-4/+8
|\ \ \ \ \ | | | | | | | | | | | | Remove `sanitize_conditions` and use `sanitize_sql` instead of `sanitize_conditions`
| * | | | | Deprecate `sanitize_conditions`. Use `sanitize_sql` insteadRyuta Kamizono2016-08-183-4/+8
| |/ / / / | | | | | | | | | | | | | | | Because `sanitize_conditions` protected method is only used in one place.
* / / / / Remove unnecessary `test_sql_for_insert_with_returning_disabled`Ryuta Kamizono2016-08-182-9/+2
|/ / / / | | | | | | | | | | | | | | | | Because `sql_for_insert` is only called in `use_insert_returning?` is true since #26002.
* | | | Merge pull request #25396 from ↵Rafael França2016-08-171-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | kamipo/fix_error_message_for_out_of_range_integer_value Fix error message for out of range byte size integer value for consistency
| * | | | Fix error message for out of range byte size integer value for consistencyRyuta Kamizono2016-08-071-1/+1
| | | | | | | | | | | | | | | | | | | | Related f27a932, #25391.
* | | | | Merge pull request #25976 from kamipo/pluck_uses_loaded_targetRafael França2016-08-173-2/+20
|\ \ \ \ \ | | | | | | | | | | | | `pluck` should use `records` (`load_target`) when `loaded?` is true
| * | | | | `pluck` should use `records` (`load_target`) when `loaded?` is trueRyuta Kamizono2016-08-043-2/+20
| | | | | |
* | | | | | Fix indentationRafael Mendonça França2016-08-171-3/+3
| | | | | |
* | | | | | Merge pull request #25987 from aquajach/masterRafael Mendonça França2016-08-172-1/+10
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Fix does_not_support_reverse? to find sql functions with commas in nested brackets
| * | | | | | check if order contains comma first in does_not_support_reverse?Jack Chen Songyong2016-07-291-1/+1
| | | | | | |
| * | | | | | have does_not_support_reverse? support sql functions with commas in nested ↵Jack2016-07-292-1/+10
| | |_|/ / / | |/| | | | | | | | | | | | | | | | brackets
* | | | | | Merge pull request #26002 from ↵Rafael França2016-08-173-8/+19
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | kamipo/sql_for_insert_should_be_called_inside_exec_insert `sql_for_insert` should be called inside `exec_insert`
| * | | | | | `sql_for_insert` should be called inside `exec_insert`Ryuta Kamizono2016-08-063-8/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `exec_insert` cannot return last inserted id if `use_insert_returning?` is true. `sql_for_insert` should be called inside `exec_insert`.
* | | | | | | Merge pull request #26009 from kamipo/fix_inconsistent_finder_methods_signatureRafael França2016-08-173-49/+38
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Fix inconsistent the signature of finder methods for collection association