CHANGELOG.md 3.7 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
*   Allow column names to be passed to `remove_index` positionally along with other options.

    Passing other options can be necessary to make `remove_index` correctly reversible.

    Before:

        add_index    :reports, :report_id               # => works
        add_index    :reports, :report_id, unique: true # => works
        remove_index :reports, :report_id               # => works
        remove_index :reports, :report_id, unique: true # => ArgumentError

    After:

        remove_index :reports, :report_id, unique: true # => works

    *Eugene Kenny*

18 19 20 21
*   Allow bulk `ALTER` statements to drop and recreate indexes with the same name.

    *Eugene Kenny*

22 23 24 25
*   `insert`, `insert_all`, `upsert`, and `upsert_all` now clear the query cache.

    *Eugene Kenny*

26
*   Call `while_preventing_writes` directly from `connected_to`.
27

28
    In some cases application authors want to use the database switching middleware and make explicit calls with `connected_to`. It's possible for an app to turn off writes and not turn them back on by the time we call `connected_to(role: :writing)`.
29 30 31 32 33

    This change allows apps to fix this by assuming if a role is writing we want to allow writes, except in the case it's explicitly turned off.

    *Eileen M. Uchitelle*

34 35 36 37
*   Improve detection of ActiveRecord::StatementTimeout with mysql2 adapter in the edge case when the query is terminated during filesort.

    *Kir Shatrov*

38 39 40 41
*   Stop trying to read yaml file fixtures when loading Active Record fixtures.

    *Gannon McGibbon*

42 43 44 45 46 47
*   Deprecate `.reorder(nil)` with `.first` / `.first!` taking non-deterministic result.

    To continue taking non-deterministic result, use `.take` / `.take!` instead.

    *Ryuta Kamizono*

48 49 50 51
*   Ensure custom PK types are casted in through reflection queries.

    *Gannon McGibbon*

52 53 54 55 56 57
*   Preserve user supplied joins order as much as possible.

    Fixes #36761, #34328, #24281, #12953.

    *Ryuta Kamizono*

58
*   Allow `matches_regex` and `does_not_match_regexp` on the MySQL Arel visitor.
J
James Pearson 已提交
59 60

    *James Pearson*
61

62 63 64 65
*   Allow specifying fixtures to be ignored by setting `ignore` in YAML file's '_fixture' section.

    *Tongfei Gao*

66 67 68 69
*   Make the DATABASE_URL env variable only affect the primary connection. Add new env variables for multiple databases.

    *John Crepezzi*, *Eileen Uchitelle*

70 71 72 73 74 75 76 77
*   Add a warning for enum elements with 'not_' prefix.

        class Foo
          enum status: [:sent, :not_sent]
        end

    *Edu Depetris*

78 79 80 81
*   Make currency symbols optional for money column type in PostgreSQL

    *Joel Schneider*

82 83 84 85
*   Add support for beginless ranges, introduced in Ruby 2.7.

    *Josh Goodall*

86 87
*   Add database_exists? method to connection adapters to check if a database exists.

R
Roberto Miranda 已提交
88
    *Guilherme Mansur*
89

90 91 92 93
*   Loading the schema for a model that has no `table_name` raises a `TableNotSpecified` error.

    *Guilherme Mansur*, *Eugene Kenny*

94 95 96 97 98 99
*   PostgreSQL: Fix GROUP BY with ORDER BY virtual count attribute.

    Fixes #36022.

    *Ryuta Kamizono*

100 101 102 103 104 105
*   Make ActiveRecord `ConnectionPool.connections` method thread-safe.

    Fixes #36465.

    *Jeff Doering*

106 107 108 109
*   Add support for multiple databases to `rails db:abort_if_pending_migrations`.

    *Mark Lee*

110 111 112 113
*   Fix sqlite3 collation parsing when using decimal columns.

    *Martin R. Schuster*

114
*   Fix invalid schema when primary key column has a comment.
115

116
    Fixes #29966.
117 118 119

    *Guilherme Goettems Schneider*

120
*   Fix table comment also being applied to the primary key column.
121 122 123

    *Guilherme Goettems Schneider*

124
*   Allow generated `create_table` migrations to include or skip timestamps.
125

126 127
    *Michael Duchemin*

128

129
Please check [6-0-stable](https://github.com/rails/rails/blob/6-0-stable/activerecord/CHANGELOG.md) for previous changes.