aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | Perf: memoize serialized column list and time zone column listSam2013-08-271-17/+27
| |/ /
* | | Perf: avoid array allocation where not neededSam2013-08-271-1/+1
| | |
* | | Perf: fields in pg gem causes an allocation, cache itSam2013-08-271-2/+3
|/ /
* | Add config to method calls in fixtures.wangjohn2013-08-262-24/+27
| | | | | | | | | | | | | | Allows you to change your configuration for calls to `table_name_prefix`, `table_name_suffix`, and `pluralize_table_names`. The default configuration is still ActiveRecord::Base, but you are now able to change the configuration easily.
* | Merge pull request #11827 from vipulnsward/remove_extra_caseSantiago Pastorino2013-08-261-1/+0
|\ \ | | | | | | Remove extra case.
| * | Remove extra case.Vipul A M2013-08-101-1/+0
| | |
* | | PG adapter deals with negative money values formatted with parenthesis.Yves Senn2013-08-263-0/+19
| | | | | | | | | | | | Closes #11899.
* | | Merge pull request #12014 from wangjohn/change_deprecation_horizonSantiago Pastorino2013-08-251-1/+1
|\ \ \ | | | | | | | | Changing deprecation_horizon to be Rails 4.2
| * | | Changing deprecation_horizon to be Rails 4.2wangjohn2013-08-241-1/+1
| | | | | | | | | | | | | | | | | | | | Also, +ActiveRecord::Migrator.proper_table_name+ should actually have a deprecation horizon of Rails 4.2 (not 4.1).
* | | | Removing instances of string class_names in fixtures.wangjohn2013-08-242-10/+13
|/ / / | | | | | | | | | | | | | | | | | | Also, constantizing the default_fixture_model_name when it gets loaded in from the file. Later, when the class_name is passed to a new FixtureSet, a deprecation warning will occur if the class_name is a string.
* | | Adding deprecation assertions for proper_table_name.wangjohn2013-08-241-7/+21
| | | | | | | | | | | | This prevents deprecation warnings from popping up.
* | | Merge pull request #12000 from ↵Santiago Pastorino2013-08-231-7/+1
|\ \ \ | | | | | | | | | | | | | | | | wangjohn/deprecating_class_name_string_in_fixtures Deprecating passing strings as class name in fixtures.
| * | | Deprecating passing strings as class name in fixtures.wangjohn2013-08-231-7/+1
| | | |
* | | | Making proper_table_name take in options.wangjohn2013-08-222-19/+68
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The options will specify the prefix and the suffix. Also, I'm moving the method to be an instance method on the +Migration+ instance. This makes more sense than being a class method on the +Migrator+ class because the only place that uses it is on a +Migration+ instance (in a method_missing hook). The logic for the Migrator shouldn't be doing any work to calculate the table name, it should be the Migration itself. Also made some small indentation fixes.
* | | Merge pull request #11971 from freerunningtechnologies/dynamic_respond_toAaron Patterson2013-08-222-1/+6
|\ \ \ | | | | | | | | Performance regression in AR::Base.respond_to?
| * | | Avoid compiling regexs in AR::Base.respond_to?John Hawthorn2013-08-212-1/+6
| | | | | | | | | | | | | | | | | | | | Caches the patterns of ActiveRecord::DynamicMatchers in a class instance variable.
* | | | Merge pull request #11976 from etehtsea/infYves Senn2013-08-221-2/+2
|\ \ \ \ | | | | | | | | | | [PG adapter] Use infinity const
| * | | | Use infinity constKonstantin Shabanov2013-08-221-2/+2
| |/ / /
* / / / Stray nodoc causes rest of file not parsed [ci skip]edogawaconan2013-08-221-2/+0
|/ / /
* | | write changelog entry for #11922. [ci skip]Yves Senn2013-08-201-0/+5
| | |
* | | Merge pull request #11922 from Empact/string-confusionYves Senn2013-08-202-2/+2
|\ \ \ | | | | | | | | Stop interpreting SQL 'string' columns as :string type.
| * | | Stop interpreting SQL 'string' columns as :string type.Ben Woosley2013-08-172-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SQL doesn't have a string type, and interpreting 'string' as text is contrary to at least SQLite3's behavior: "Note that a declared type of 'STRING' has an affinity of NUMERIC, not TEXT." http://www.sqlite.org/datatype3.html
* | | | documents 565c367 in the CHANGELOGXavier Noria2013-08-191-0/+4
| | | |
* | | | let AR::FinderMethods#exists? return singletons in all cases [closes #11592]Xavier Noria2013-08-192-34/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a regression. The documentation said in its introduction paragraph that the method returns truthy/falsy, but then below it was said that if there were no arguments you'd get `true` or `false`. Also when the argument is exactly `false` a singleton is documented to be returned. The method was not returning the singletons so it didn't conform to those special cases. The best solution here seems to be to just return singletons in all cases. This solution is backwards compatible. Also, the contract has been revised because it has no sense that the predicate varies that way depending on the input. I bet the previous contract was just an accident, not something mixed on purpose. Conflicts: activerecord/lib/active_record/relation/finder_methods.rb activerecord/test/cases/finder_test.rb
* | | | Merge branch 'master' of github.com:rails/docrailsVijay Dev2013-08-1713-9/+22
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | Conflicts: actionview/README.rdoc activerecord/lib/active_record/migration.rb guides/source/development_dependencies_install.md guides/source/getting_started.md
| * | | Revert "Merge branch 'master' of github.com:rails/docrails"Vijay Dev2013-08-1714-10/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 70d6e16fbad75b89dd1798ed697e7732b8606fa3, reversing changes made to ea4db3bc078fb3093ecdddffdf4f2f4ff3e1e8f9. Seems to be a code merge done by mistake.
* | | | Fixing multi-word automatic inverse detection.wangjohn2013-08-154-2/+19
| | | | | | | | | | | | | | | | | | | | Currently, ActiveRecord models with multiple words cannot have their inverse associations detected automatically.
* | | | Merge pull request #11574 from jetthoughts/11552_rescue_on_invalid_inet_assignYves Senn2013-08-143-1/+37
|\ \ \ \ | | | | | | | | | | Fix assign ip address with invalid values raise exception
| * | | | Rescue invalid ip address exceptions on assign.Paul Nikitochkin2013-08-143-1/+37
| | | | | | | | | | | | | | | | | | | | In order that set attribute should not be bang method
* | | | | Removed redundant asserts for assigns attribute operationPaul Nikitochkin2013-08-141-28/+28
|/ / / /
* | | | test-case for fixed issue #11870.Yves Senn2013-08-141-0/+4
| | | |
* | | | using assert_not instead of refuteRajarshi Das2013-08-132-4/+4
| | | |
* | | | Merge pull request #11838 from vipulnsward/drop_extra_varSteve Klabnik2013-08-121-2/+2
|\ \ \ \ | | | | | | | | | | drop extra variable
| * | | | drop extra variableVipul A M2013-08-121-2/+2
| | |/ / | |/| |
* | | | Use assert_not rather than refutePiotr Sarnacki2013-08-121-5/+5
| | | |
* | | | Refactor NestedAttributesWithCallbacksTest for clarityBen Woosley2013-08-121-67/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) Use `assert` and `refute` where possible. 2) Separately include the setup, subject, and assertions in each test - don't hide the tested call in an assertion method. 3) Name things based on their role rather than incidental facts about them - e.g. `@bird[1]` -> `bird_to_destroy`. `bird2_deletion_attributes` -> `destroy_bird_attributes`. 4) Use more succinct naming where possible - e.g. `birds_with_callback` -> `birds_with_add`, `@pirate_with_two_birds` -> `@pirate`
* | | | Restore the use of `#add_to_target` for nested attribute updates on existing ↵Ben Woosley2013-08-123-15/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | records, and don't bother updating the association if the update is going to be rejected anyway. This requires adding a `skip_callbacks` argument to `#add_to_target` so that we don't call the callbacks multiple times in this case, which is functionally an application of existing association data, rather than an addition of a new record to the association.
* | | | Fix interactions between :before_add callbacks and nested attributes assignmentDr.(USA) Joerg Schray2013-08-123-11/+168
| | | | | | | | | | | | | | | | | | | | Issue #1: :before_add callback is called when nested attributes assignment assigns to existing record if the association is not yet loaded Issue #2: Nested Attributes assignment does not affect the record in the association target when callback triggers loading of the association
* | | | chmod -xAkira Matsuda2013-08-124-0/+0
| | | |
* | | | only reconnect if there was already an active connectionAaron Patterson2013-08-111-1/+4
| | | | | | | | | | | | | | | | | | | | If you're using an in-memory database for the test database, reconnecting will lose all information that schema:load did for us.
* | | | Make 'enable_extension' revertibleEric Tipton2013-08-103-1/+16
|/ / / | | | | | | | | | | | | If 'enable_extension' is used in a migration's 'change' method, use 'disable_extension' on down migration (and vice-versa).
* | | Remove redundant `string_to_binary` from type-castingVipul A M2013-08-096-37/+4
| | |
* | | Merge pull request #11802 from ko1/fix_field_encoding_for_mysqlAaron Patterson2013-08-074-3/+14
|\ \ \ | | | | | | | | Set field encoding to client_encoding for mysql adapter.
| * | | Set field encoding to client_encoding for mysql adapter.Koichi Sasada2013-08-084-3/+14
| | | |
* | | | cast hstore values on write to be consistent with reading from the db.Yves Senn2013-08-084-4/+34
|/ / /
* | | Merge pull request #11331 from vipulnsward/remove_conditionalAaron Patterson2013-08-071-8/+1
|\ \ \ | | | | | | | | Remove conditional, results are always an instance of `ActiveRecord::Result`
| * | | Remove conditional, since results are always an instance of ↵Vipul A M2013-07-061-8/+1
| | | | | | | | | | | | | | | | `ActiveRecord::Result`
* | | | use `skip` so we can see what tests are not runAaron Patterson2013-08-081-6/+5
| |_|/ |/| |
* | | Fix multidimensional PG arrays containing non-string itemsYves Senn2013-08-073-15/+32
| | |
* | | skip `test_unicode_column_name` for `MysqlAdapter`.Yves Senn2013-08-071-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit fixes the build but we need to further investigate the root cause, to see if it can be fixed. The test fails under `MysqlAdapter` with: ``` ActiveRecord::UnknownAttributeError: unknown attribute: なまえ ``` The root cause is that the returned column names from the adapter have the wrong encoding: ```ruby columns = Weird.columns_hash.keys columns # => ["id", "a$b", "\xE3\x81\xAA\xE3\x81\xBE\xE3\x81\x88", "from"] columns.map(&:encoding) # => [#<Encoding:ASCII-8BIT>, #<Encoding:ASCII-8BIT>, #<Encoding:ASCII-8BIT>, #<Encoding:ASCII-8BIT>] columns.map {|c| c.dup.force_encoding "utf-8"} # => ["id", "a$b", "なまえ", "from"] ``` From what I can tell the MySQL variables are fine: ``` ActiveRecord::Base.connection.execute("show variables") ... character_set_client utf8 character_set_connection utf8 character_set_database utf8 character_set_filesystem binary character_set_results utf8 character_set_server utf8 character_set_system utf8 character_sets_dir /usr/local/Cellar/mysql/5.5.29/share/mysql/charsets/ collation_connection utf8_general_ci collation_database utf8_unicode_ci collation_server utf8_general_ci ... ```