- 29 8月, 2018 1 次提交
-
-
由 Eileen Uchitelle 提交于
We originally did the whole `load_database_yaml` thing because this test wasn't cooperating and we needed to finish the namespaced rake tasks for multiple databases. However, it turns out that YAML can't eval ERB if you don't tell it it's ERB so you get Pysch parse errors if you're using multi-line ERB or ERB with conditionals. It's a hot mess. After trying a few things and thinking it over we decided that it wasn't worth bandaiding over, the test needed to be improved. The test was added in #31135 to test that the env is loaded in these tasks. But it was blowing up because we were trying to read a database name out of the configuration - however that's not the purpose of this change. We want to read environment files in the rake tasks, but not in the config file. In this PR we changed the test to test what the PR was actually fixing. We've also deleted the `load_database_yaml` because it caused more problems than it was worth. This should fix the issues described in https://github.com/rails/rails/pull/32274#issuecomment-384161057. We also had these problems at GitHub. Co-authored-by: Nalimi <aibrahim2k2@gmail.com>
-
- 28 8月, 2018 2 次提交
-
-
由 Yuya Tanaka 提交于
`changes_applied` should be called before continuing around callback chain. Otherwise the mutation tracker returns old value for methods like `changed`? or `id_in_database` in around callbacks. Also methods depend on `id_in_database`, like `update_column`, are not working in `around_create` callbacks. ``` class Foo < ActiveRecord::Base around_create :around_create_callback def around_create_callback ... yield p id_in_database # => nil update_column(:generated_column, generate_value) # silently fails end ... end ```
-
由 Nate Pinsky 提交于
* Add documentation for `:collation` option The table definition supports a `:collation` option for string and text columns, but this is not documented anywhere that I could find. I'm not sure if the "If not specified" part is accurate. From [this PR](https://github.com/rails/rails/commit/1515c4d98da3f730ef971fa5a13cad828bd9bef4), it looks like it passes `nil` and lets the database handle the collation, but I'm happy to change it if I misread the code. [ci skip] * FIX remove whitespace [Nate Pinsky + Rafael Mendonça França]
-
- 27 8月, 2018 1 次提交
-
-
由 Kevin Deisz 提交于
-
- 25 8月, 2018 2 次提交
-
-
由 Kevin Deisz 提交于
-
由 Kevin Deisz 提交于
-
- 22 8月, 2018 2 次提交
-
-
由 Ryuta Kamizono 提交于
This was introduced at 24f6bf0d.
-
-
- 20 8月, 2018 2 次提交
-
-
由 Ryuta Kamizono 提交于
The `Relation::Merger` has a problem that order values would be merged as nested array. That was caused an issue #33664 since if array value is passed to `order` and first element in the array includes `?`, the array is regarded as a prepared statement and bind variables. https://api.rubyonrails.org/classes/ActiveRecord/Sanitization/ClassMethods.html#method-i-sanitize_sql_for_order Just merging that as splat args like other values would fix the issue. Fixes #33664.
-
由 Ryuta Kamizono 提交于
Fixes #33520.
-
- 19 8月, 2018 1 次提交
-
-
由 Ryuta Kamizono 提交于
To prevent style check in review like https://github.com/rails/rails/pull/33608#discussion_r211087605.
-
- 15 8月, 2018 3 次提交
-
-
由 Yoshiyuki Kinjo 提交于
-
由 bogdanvlviv 提交于
- Move changelog entry of #33530 up in order to preserve the chronology since we always add new entries on the top of a changelog file. - Clarify the changelog entry - Clarify the docs of remove_foreign_key - Ensure reversible of `remove_foreign_key` with `:primary_key` and `:to_table` options.
-
由 bogdanvlviv 提交于
-
- 14 8月, 2018 2 次提交
-
-
由 Rich 提交于
remove_foreign_key supports - remove_foreign_key :accounts, :branches - remove_foreign_key :accounts, to_table: :branches but the second one is not reversible. This branch is to fix and allow second one to be reversible. [Nikolay Epifanov, Rich Chen]
-
由 Lachlan Sylvester 提交于
-
- 13 8月, 2018 1 次提交
-
-
由 Eugene Kenny 提交于
If a transaction is opened and closed without any queries being run, we can safely omit the `BEGIN` and `COMMIT` statements, as they only exist to modify the connection's behaviour inside the transaction. This removes the overhead of those statements when saving a record with no changes, which makes workarounds like `save if changed?` unnecessary. This implementation buffers transactions inside the transaction manager and materializes them the next time the connection is used. For this to work, the adapter needs to guard all connection use with a call to `materialize_transactions`. Because of this, adapters must opt in to get this new behaviour by implementing `supports_lazy_transactions?`. If `raw_connection` is used to get a reference to the underlying database connection, the behaviour is disabled and transactions are opened eagerly, as we can't know how the connection will be used. However when the connection is checked back into the pool, we can assume that the application won't use the reference again and reenable lazy transactions. This prevents a single `raw_connection` call from disabling lazy transactions for the lifetime of the connection.
-
- 11 8月, 2018 2 次提交
-
-
由 Yasuo Honda 提交于
Related to #33520
-
由 Dillon Welch 提交于
The first thing this method does is run on the argument. This change passes in a string so we don't allocate a bunch of unnecessary extra strings by calling to_s on a symbol over and over.
-
- 03 8月, 2018 1 次提交
-
-
由 Ryuta Kamizono 提交于
-
- 02 8月, 2018 3 次提交
-
-
由 Alireza Bashiri 提交于
What? From now on when `accepts_nested_attributes_for` defined and `extend` option added the overwritten `build` method being called. [Alireza Bashiri, Martins Polakovs]
-
由 Britni Alexander 提交于
-
由 Alberto Almagro 提交于
This commit follows the path we started at commit #ea4f0e2b and continued at PR #33229.
-
- 01 8月, 2018 2 次提交
-
-
由 Britni Alexander 提交于
-
由 Ryuta Kamizono 提交于
This reverts commit d162188d, reversing changes made to 35767828. Reason: #24131 conflicts the #5153's default order contract, it means that existing apps would be broken by that change. We don't want to break existing apps without a deprecation cycle.
-
- 31 7月, 2018 1 次提交
-
-
由 Ryuta Kamizono 提交于
Since 9ac7dd47, class level `update`, `destroy`, and `delete` were placed in the `Persistence` module as class methods. But `Relation#update` without passing ids which was introduced at #11898 is not a class method, and it was caused the extra scoping regression #33470. I moved the relation method back into the `Relation` to fix the regression. Fixes #33470.
-
- 30 7月, 2018 1 次提交
-
-
由 George Claghorn 提交于
-
- 29 7月, 2018 5 次提交
-
-
由 Ryuta Kamizono 提交于
To make it easier to construct boundable predicate.
-
由 Ryuta Kamizono 提交于
The target object for counter cache is not always determined by the primary key value on the model. I'd like to extract `update_couters` onto the `Relation` for the internal use.
-
由 Bart de Water 提交于
-
由 Bart de Water 提交于
`5 =~ /\d/` returns nil, but Integer doesn't have a `match?` method.
-
由 Bart de Water 提交于
In cases where the MatchData object is not used, this provides a speed-up: https://github.com/JuanitoFatas/fast-ruby/#stringmatch-vs-stringmatch-vs-stringstart_withstringend_with-code-start-code-end
-
- 28 7月, 2018 2 次提交
-
-
由 Kasper Timm Hansen 提交于
Clean up some concepts in the code while we're here.
-
由 lsylvester 提交于
-
- 27 7月, 2018 1 次提交
-
-
由 Yannick Schutz 提交于
* PostgreSQL 10 new relkind for partitioned tables Starting with PostgreSQL 10, we can now have partitioned tables natively * Add comment * Remove extra space * Add test for partition table in postgreSQL10 * Select 'p' for "BASE TABLE" and add a test case to support PostgreSQL 10 partition tables * Address RuboCop offense * Addressed incorrect `postgresql_version` Fixes #33008. [Yannick Schutz & Yasuo Honda & Ryuta Kamizono]
-
- 25 7月, 2018 1 次提交
-
-
由 Ryuta Kamizono 提交于
Follow up of #33358 for SQLite3.
-
- 24 7月, 2018 2 次提交
-
-
由 Paul McMahon 提交于
http links will be redirected to the https version, but still better to just directly link to the https version.
-
由 Dillon Welch 提交于
Use attr_reader/attr_writer instead of methods method is 12% slower Use flat_map over map.flatten(1) flatten is 66% slower Use hash[]= instead of hash.merge! with single arguments merge! is 166% slower See https://github.com/rails/rails/pull/32337 for more conversation
-
- 22 7月, 2018 2 次提交
-
-
由 Orhan Toy 提交于
The consecutive verbatim blocks were being merged making the output look weird.
-
由 Orhan Toy 提交于
The examples with `.where` uses hash w/ symbol keys so it would be more consistent to also do this with `.new`. Also from my experience the hash w/ symbol keys is more widely used with `where/new/create` etc. in ActiveRecord.
-