aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | Memoize user provided defaults before type castingSean Griffin2016-03-243-5/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a proc is given as a default value, the form builder ends up displaying `Proc#to_s` when the default is used. That's because we didn't handle the proc until type casting. This issue technically can occur any time that a proc is the value before type casting, but in reality the only place that will occur is when a proc default is provided through the attributes API, so the best place to handle this edge case is there. I've opted to memoize instead of just moving the `Proc#call` up, as this made me realize that it could potentially interact very poorly with dirty checking. The code here is a little redundant, but I don't want to rely on how `value_before_type_cast` is implemented in the super class, even if it's just an `attr_reader`. Fixes #24249 Close #24306
* | | | | Make 'migrate' clear the schema cache afterwardChris Arcand2016-03-242-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without clearing the caches afterward, removals done in migrations would not be reflected in a separate task in the same process. That is, given a table with a migration to remove a column, the schema cache would still reflect that a table has that in something such as the 'db:seed' task: `rake db:migrate db:seed` (A common thing to do in a script for a project ala `bin/setup`) vs `rake db:migrate && rake db:seed` (Two processes) The first would not reflect that the column was removed. The second would (cache reset).
* | | | | Fix a tip in Active Record time attributes deprecationGenadi Samokovarov2016-03-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I have hit this deprecation in a newly created Rails 5 application and the suggested tip lead me to a `NoMethodError`. It's not trivial to actually make the following work, because of the ActiveRecord::Base class attributes setting dance in the Active Record railtie. config.active_record.time_zone_aware_types << :time Decided to suggest setting it explicitly to the values we need. [ci skip]
* | | | | Change for `ActiveRecord::Migration.[]` to raise `ArgumentError` instead of ↵yui-knk2016-03-242-1/+4
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `RuntimeError` The error is raised because user passed invalid version number to a public api of `ActiveRecord`, so `ArgumentError` is more suitable. And add a test case checking if an error is raised when unknown migration version is passed, because these test cases are not implemented.
* | | | Merge pull request #24167 from ↵Jeremy Daer2016-03-233-28/+44
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | kamipo/append_sql_mode_instead_of_overwriting_in_strict_mode Append sql_mode instead of overwriting in strict mode
| * | | | Append sql_mode instead of overwriting in strict modeRyuta Kamizono2016-03-132-28/+37
| | | | | | | | | | | | | | | | | | | | For keep the default SQL mode.
* | | | | guides, sync 5.0 release notes with changelogsYves Senn2016-03-221-1/+2
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | [ci skip] Sync AV, AR, AJ, AS, AM changelogs with our 5.0 release notes draft. This is a follow up to c94045d and contains changes made since the release of beta1.
* | | | Merge pull request #22518 from ↵Arthur Nogueira Neves2016-03-182-1/+18
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | RochesterinNYC/better-error-message-for-includes-relations-missing Improve error message for missing relations for includes and eager_load
| * | | | Improve clarity of error message for missing includes and eager_loadJames Wen2016-01-282-1/+18
| | | | | | | | | | | | | | | | | | | | relations
* | | | | Merge pull request #24201 from rails/rake-db-createRafael França2016-03-173-10/+17
|\ \ \ \ \ | | | | | | | | | | | | Creates development and test databases in db:migrate task
| * | | | | Creates development and test databases in db:migrate taskRafael Mendonça França2016-03-143-10/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts a334425caff9b2140d5e99fcfc2eb8c4ab10bdfa. The main reason is that now the workflow is inconsistent when using spring. When using spring `RAILS_ENV` is always set, so only one database is created. This means that in development `bin/rake db:create` and `bundle exec rake db:create` have different results. It also breaks the `bin/setup` script since `bin/rake db:setup db:test:prepare` will fail.
* | | | | | Remove log-related stuff from ActiveSupport::DependenciesAaron Ang2016-03-151-5/+0
|/ / / / / | | | | | | | | | | | | | | | | | | | | In this patch, all log-related stuff in `ActiveSupport::Dependencies` is removed because the logging is no longer useful.
* | | | | [ci skip] Fix the FinderMethods#find documentakihiro172016-03-141-2/+2
| | | | | | | | | | | | | | | | | | | | We should use #find_or_initialize_by and #find_or_create_by because #first_or_initialize and #first_or_create methods are not the public API
* | | | | Fix `warning: method redefined; discarding old female`Ryuta Kamizono2016-03-121-3/+0
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ``` $ ARCONN=mysql2 be ruby -w -Itest test/cases/scoping/default_scoping_test.rb Using mysql2 /Users/kamipo/src/github.com/rails/rails/activerecord/lib/active_record/scoping/named.rb:158: warning: method redefined; discarding old female /Users/kamipo/src/github.com/rails/rails/activerecord/lib/active_record/scoping/named.rb:158: warning: previous definition of female was here /Users/kamipo/src/github.com/rails/rails/activerecord/lib/active_record/scoping/named.rb:158: warning: method redefined; discarding old male /Users/kamipo/src/github.com/rails/rails/activerecord/lib/active_record/scoping/named.rb:158: warning: previous definition of male was here ```
* | | | Merge pull request #23797 from ↵Rafael França2016-03-113-3/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | kamipo/case_sensitive_comparison_for_non_string_column The BINARY Operator is only needed for string columns
| * | | | The BINARY Operator is only needed for string columnsRyuta Kamizono2016-02-223-3/+13
| | | | | | | | | | | | | | | | | | | | Follow up to #13040.
* | | | | Fix test failures caused by #23958Sean Griffin2016-03-111-1/+1
| | | | | | | | | | | | | | | | | | | | I'm unsure how this passed CI in the pull request.
* | | | | Merge pull request #24054 from kamipo/extract_default_primary_keyRafael França2016-03-115-22/+22
|\ \ \ \ \ | | | | | | | | | | | | Extract `default_primary_key?` to refactor `column_spec_for_primary_key`
| * | | | | Extract `default_primary_key?` to refactor `column_spec_for_primary_key`Ryuta Kamizono2016-03-115-22/+22
| | | | | |
* | | | | | Merge pull request #24087 from kamipo/dump_bigint_instead_of_integer_limit_8Rafael França2016-03-114-13/+13
|\ \ \ \ \ \ | | | | | | | | | | | | | | Dump `bigint` instead of `integer` with `limit: 8` for schema dumper
| * | | | | | Dump `bigint` instead of `integer` with `limit: 8` for schema dumperRyuta Kamizono2016-03-114-13/+13
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: ```ruby create_table "big_numbers", force: :cascade do |t| t.integer "bigint_column", limit: 8 end ``` After: ```ruby create_table "big_numbers", force: :cascade do |t| t.bigint "bigint_column" end ```
* | | | | | Merge pull request #23677 from kamipo/passing_table_name_to_column_initializeRafael França2016-03-119-29/+58
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Passing `table_name` to `Column#initialize` to avoid `instance_variable_set`
| * | | | | Passing `table_name` to `Column#initialize` to avoid `instance_variable_set`Ryuta Kamizono2016-03-085-17/+11
| | | | | |
| * | | | | Initialize `column.table_name` immediately for `column.serial?` correctly ↵Ryuta Kamizono2016-03-088-21/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | working Currently the results of `column.serial?` is not correct. For `column.serial?` correctly working, initialize `column.table_name` immediately.
* | | | | | Merge pull request #23958 from kamipo/fix_bigserial_appears_with_limit_8Rafael França2016-03-112-2/+6
|\ \ \ \ \ \ | | | | | | | | | | | | | | Fix bigserial appears with limit 8 for schema dumper
| * | | | | | Fix bigserial appears with limit 8 for schema dumperRyuta Kamizono2016-03-042-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: ```ruby create_table "postgresql_big_serials", force: :cascade do |t| t.bigserial "seq", limit: 8, null: false end ``` After: ```ruby create_table "postgresql_big_serials", force: :cascade do |t| t.bigserial "seq", null: false end ```
* | | | | | | Fixed comments of add_foreign_key methodSalman Afzal Siddiqui2016-03-101-2/+2
| | | | | | | | | | | | | | | | | | | | | The comments of add_foreign_key method was displaying incorrect constraint name.
* | | | | | | revises the homepage URL in the gemspecs [ci skip]Xavier Noria2016-03-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | References https://github.com/rails/homepage/issues/46.
* | | | | | | use same name to type objectyuuji.yaginuma2016-03-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow up to #24079
* | | | | | | Merge pull request #23666 from meinac/fix_abstract_default_scope_bugSean Griffin2016-03-085-1/+38
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Execute default_scope defined by abstract class within the scope of subclass
| * | | | | | | Execute default_scope defined by abstract class within the scope of subclassMehmet Emin İNAÇ2016-03-085-1/+38
| | |/ / / / / | |/| | | | |
* / | | | | | add test case for schema dumping of PG bytea columns.Yves Senn2016-03-081-0/+9
|/ / / / / /
* | | | | | Merge pull request #24034 from kamipo/remove_outdated_commentArthur Nogueira Neves2016-03-071-1/+0
|\ \ \ \ \ \ | | | | | | | | | | | | | | Remove outdated comment [ci skip]
| * | | | | | Remove outdated comment [ci skip]Ryuta Kamizono2016-03-041-1/+0
| |/ / / / / | | | | | | | | | | | | | | | | | | Currently column options handled by the type map in Rails 4.2.
* | | | | | Add changelog for batch touch records.Arthur Neves2016-03-071-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | related to #19324 and #18606 [skip ci]
* | | | | | move changelog to right place [skip ci]Arthur Neves2016-03-071-6/+6
| | | | | |
* | | | | | Add changelog for #20997Arthur Neves2016-03-071-0/+6
| | | | | |
* | | | | | Merge pull request #23922 from rthbound/fix-funny-spellingArthur Nogueira Neves2016-03-071-2/+2
|\ \ \ \ \ \ | | | | | | | | | | | | | | Fixes funny spelling in an AR test
| * | | | | | Fixes funny spellingRyan T. Hosford2016-02-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - marked_for_destroyal -> marked_for_destruction
* | | | | | | Merge pull request #23993 from kamipo/no_need_to_extract_limit_for_booleanSean Griffin2016-03-072-5/+1
|\ \ \ \ \ \ \ | |_|_|_|_|/ / |/| | | | | | No need to extract a limit for a boolean type
| * | | | | | No need to extract a limit for a boolean typeRyuta Kamizono2016-03-042-5/+1
| | | | | | |
* | | | | | | Merge branch 'master' of github.com:rails/docrailsVijay Dev2016-03-061-1/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: guides/source/association_basics.md
| * | | | | | | [ci skip] Fix `'id'` to be fixed-width fontyui-knk2016-02-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As shown below, we should use <tt>...</tt> for string literal ``` $ echo "+'id'+" | rdoc --pipe <p>+&#39;id&#39;+</p> $ echo "<tt>'id'</tt>" | rdoc --pipe <p><code>&#39;id&#39;</code></p> ```
* | | | | | | | This code won't workAkira Matsuda2016-03-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ci skip]
* | | | | | | | Fix typo `--ssl-cipher`Ryuta Kamizono2016-03-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow up to #22543.
* | | | | | | | Merge pull request #24079 from y-yagi/chage_date_time_to_datetimeSean Griffin2016-03-051-1/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | chage `date_time` type ` to `datetime`
| * | | | | | | | chage `date_time` type ` to `datetime`yuuji.yaginuma2016-03-061-1/+1
| | |_|_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | Since we are using `datetime` in migration, better to use `datetime` is I think that confusion is less.
* / | | | | | | make attributes API example to work [ci skip]yuuji.yaginuma2016-03-061-2/+2
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | There is a need to pass the keyword arguments to `attribute` method.
* | | | | | | fix typo in attribute example [ci skip]yuuji.yaginuma2016-03-051-1/+1
| | | | | | |
* | | | | | | A small documentation fix about autosave associations [ci skip]Mehmet Emin İNAÇ2016-03-051-1/+1
| | | | | | |