1. 04 5月, 2015 2 次提交
  2. 03 5月, 2015 3 次提交
  3. 07 4月, 2015 2 次提交
  4. 06 4月, 2015 1 次提交
  5. 23 3月, 2015 2 次提交
  6. 20 3月, 2015 1 次提交
  7. 17 3月, 2015 1 次提交
  8. 06 3月, 2015 1 次提交
  9. 04 3月, 2015 1 次提交
  10. 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
  11. 25 2月, 2015 2 次提交
  12. 24 2月, 2015 1 次提交
  13. 22 2月, 2015 1 次提交
  14. 20 2月, 2015 2 次提交
  15. 18 2月, 2015 2 次提交
  16. 16 2月, 2015 1 次提交
  17. 12 2月, 2015 1 次提交
  18. 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
  19. 08 2月, 2015 2 次提交
  20. 07 2月, 2015 1 次提交
    • S
      Allow a symbol to be passed to `attribute`, in place of a type object · 101c19f5
      Sean Griffin 提交于
      The same is not true of `define_attribute`, which is meant to be the low
      level no-magic API that sits underneath. The differences between the two
      APIs are:
      
      - `attribute`
        - Lazy (the attribute will be defined after the schema has loaded)
        - Allows either a type object or a symbol
      - `define_attribute`
        - Runs immediately (might get trampled by schema loading)
        - Requires a type object
      
      This was the last blocker in terms of public interface requirements
      originally discussed for this feature back in May. All the
      implementation blockers have been cleared, so this feature is probably
      ready for release (pending one more look-over by me).
      101c19f5
  21. 04 2月, 2015 1 次提交
    • S
      rm `Column#cast_type` · 158c7eb1
      Sean Griffin 提交于
      The type from the column is never used, except when being passed to the
      attributes API. While leaving the type on the column wasn't necessarily
      a bad thing, I worry that it's existence there implies that it is
      something which should be used.
      
      During the design and implementation process of the attributes API,
      there have been plenty of cases where getting the "right" type object
      was hard, but I had easy access to the column objects. For any
      contributor who isn't intimately familiar with the intents behind the
      type casting system, grabbing the type from the column might easily seem
      like the "correct" thing to do.
      
      As such, the goal of this change is to express that the column is not
      something that should be used for type casting. The only places that are
      "valid" (at the time of this commit) uses of acquiring a type object
      from the column are fixtures (as the YAML file is going to mirror the
      database more closely than the AR object), and looking up the type
      during schema detection to pass to the attributes API
      
      Many of the failing tests were removed, as they've been made obsolete
      over the last year. All of the PG column tests were testing nothing
      beyond polymorphism. The Mysql2 tests were duplicating the mysql tests,
      since they now share a column class.
      
      The implementation is a little hairy, and slightly verbose, but it felt
      preferable to going back to 20 constructor options for the columns. If
      you are git blaming to figure out wtf I was thinking with them, and have
      a better idea, go for it. Just don't use a type object for this.
      158c7eb1
  22. 19 1月, 2015 1 次提交
    • S
      Add an `:if_exists` option to `drop_table` · 48e99a45
      Stefan Kanev 提交于
      If set to `if_exists: true`, it generates a statement like:
      
          DROP TABLE IF EXISTS posts
      
      This syntax is supported in the popular SQL servers, that is (at least)
      SQLite, PostgreSQL, MySQL, Oracle and MS SQL Sever.
      
      Closes #16366.
      48e99a45
  23. 03 1月, 2015 2 次提交
  24. 02 1月, 2015 2 次提交
  25. 31 12月, 2014 2 次提交
  26. 29 12月, 2014 1 次提交
  27. 28 12月, 2014 1 次提交