1. 18 8月, 2015 1 次提交
  2. 13 8月, 2015 1 次提交
  3. 26 7月, 2015 1 次提交
  4. 24 7月, 2015 1 次提交
  5. 21 7月, 2015 1 次提交
  6. 24 6月, 2015 1 次提交
  7. 11 6月, 2015 1 次提交
  8. 05 6月, 2015 1 次提交
    • S
      Return a `Point` object from the PG Point type · 9f4a3fd7
      Sean Griffin 提交于
      This introduces a deprecation cycle to change the behavior of the
      default point type in the PostgreSQL adapter. The old behavior will
      continue to be available for the immediate future as `:legacy_point`.
      
      The current behavior of returning an `Array` causes several problems,
      the most significant of which is that we cannot differentiate between an
      array of points, and a point itself in the case of a column with the
      `point[]` type.
      
      The attributes API gives us a reasonable way to have a proper
      deprecation cycle for this change, so let's take advantage of it. If we
      like this change, we can also add proper support for the other geometric
      types (line, lseg, box, path, polygon, and circle), all of which are
      just aliases for string today.
      
      Fixes #20441
      9f4a3fd7
  9. 28 5月, 2015 1 次提交
  10. 27 5月, 2015 1 次提交
  11. 04 5月, 2015 2 次提交
  12. 03 5月, 2015 2 次提交
  13. 11 4月, 2015 1 次提交
  14. 25 3月, 2015 1 次提交
  15. 23 3月, 2015 1 次提交
  16. 20 3月, 2015 1 次提交
  17. 17 3月, 2015 1 次提交
    • B
      Closes rails/rails#18864: Renaming transactional fixtures to transactional tests · 09658635
      Brandon Weiss 提交于
      I’m renaming all instances of `use_transcational_fixtures` to
      `use_transactional_tests` and “transactional fixtures” to
      “transactional tests”.
      
      I’m deprecating `use_transactional_fixtures=`. So anyone who is
      explicitly setting this will get a warning telling them to use
      `use_transactional_tests=` instead.
      
      I’m maintaining backwards compatibility—both forms will work.
      `use_transactional_tests` will check to see if
      `use_transactional_fixtures` is set and use that, otherwise it will use
      itself. But because `use_transactional_tests` is a class attribute
      (created with `class_attribute`) this requires a little bit of hoop
      jumping. The writer method that `class_attribute` generates defines a
      new reader method that return the value being set. Which means we can’t
      set the default of `true` using `use_transactional_tests=` as was done
      previously because that won’t take into account anyone using
      `use_transactional_fixtures`. Instead I defined the reader method
      manually and it checks `use_transactional_fixtures`. If it was set then
      it should be used, otherwise it should return the default, which is
      `true`. If someone uses `use_transactional_tests=` then it will
      overwrite the backwards-compatible method with whatever they set.
      09658635
  18. 11 3月, 2015 2 次提交
  19. 10 3月, 2015 1 次提交
    • S
      Fix intermittent test failures · 761b5541
      Sean Griffin 提交于
      The table is being modified in tests, without reloading the column
      information on the appropriate class. This is leading to incorrect
      column information in many cases.
      
      The failures fixed by this commit can be replicated with:
      
          ARCONN=postgresql ruby -Itest test/cases/adapters/postgresql/hstore_test.rb --seed 21574
      761b5541
  20. 09 3月, 2015 1 次提交
    • S
      Fix intermittent test failures · 503c2d41
      Sean Griffin 提交于
      The default value of `"pg_arrays"."tags"` is being changed to `[]` in
      one test, but the column information on the model isn't reset after it's
      changed back. As such, we think the default value is `[]` when in the
      database it's actually `nil`. That means any test which was assigning
      `[]` to a new record would have that key skipped with partial writes, as
      it hasn't changed from the default. However since the *actual* default
      value is `nil`, we get back values that the test doesn't expect, and it
      fails.
      503c2d41
  21. 06 3月, 2015 1 次提交
  22. 04 3月, 2015 2 次提交
  23. 03 3月, 2015 1 次提交
  24. 26 2月, 2015 1 次提交
    • R
      Add `SchemaMigration.create_table` support any unicode charsets for MySQL. · 3239b6a9
      Ryuta Kamizono 提交于
      MySQL unicode support is not only `utf8mb4`.
      Then, The index length problem is not only `utf8mb4`.
      
      http://dev.mysql.com/doc/refman/5.6/en/charset-unicode.html
      
          SELECT * FROM information_schema.character_sets WHERE maxlen > 3;
          +--------------------+----------------------+------------------+--------+
          | CHARACTER_SET_NAME | DEFAULT_COLLATE_NAME | DESCRIPTION      | MAXLEN |
          +--------------------+----------------------+------------------+--------+
          | utf8mb4            | utf8mb4_general_ci   | UTF-8 Unicode    |      4 |
          | utf16              | utf16_general_ci     | UTF-16 Unicode   |      4 |
          | utf16le            | utf16le_general_ci   | UTF-16LE Unicode |      4 |
          | utf32              | utf32_general_ci     | UTF-32 Unicode   |      4 |
          +--------------------+----------------------+------------------+--------+
      3239b6a9
  25. 25 2月, 2015 1 次提交
    • Y
      rework `disable_referential_integrity` for PostgreSQL. · 72c15572
      Yves Senn 提交于
      [Toby Ovod-Everett & Andrey Nering & Yves Senn]
      
      Closes #17726.
      Closes #10939.
      
      This patch makes three distinct modifications:
      
      1. no longer fall back to disabling user triggers if system triggers can't be disabled
      2. warn the user when referential integrity can't be disabled
      3. restore aborted transactions when referential integrity can't be disabled
      
      The motivation behind these changes is to make the behavior of Rails
      transparent and less error-prone. To require superuser privileges is not optimal
      but it's what Rails currently needs. Users who absolutely rely on disabling user triggers
      can patch `disable_referential_integrity`.
      
      We should investigate `SET CONSTRAINTS` as a possible solution which does not require
      superuser privileges.
      
      /cc @matthewd
      72c15572
  26. 19 2月, 2015 1 次提交
  27. 18 2月, 2015 5 次提交
  28. 13 2月, 2015 1 次提交
  29. 12 2月, 2015 1 次提交
  30. 11 2月, 2015 2 次提交
    • R
      The datetime precision with zero should be dumped · 18e0ffe9
      Ryuta Kamizono 提交于
      `precision: 0` was not dumped by f1a0fa9e.
      However, `precision: 0` is valid value for PostgreSQL timestamps.
      18e0ffe9
    • S
      Refactor microsecond precision to be database agnostic · f1a0fa9e
      Sean Griffin 提交于
      The various databases don't actually need significantly different
      handling for this behavior, and they can achieve it without knowing
      about the type of the object.
      
      The old implementation was returning a string, which will cause problems
      such as breaking TZ aware attributes, and making it impossible for the
      adapters to supply their logic for time objects.
      f1a0fa9e
  31. 08 2月, 2015 1 次提交