aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | Improve phrasing of one sentence in the contributing guidePascal Lamouric2018-09-241-1/+1
| | | | | |
* | | | | | Merge pull request #33959 from eugeneius/eager_load_attribute_methodsRyuta Kamizono2018-09-252-0/+55
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Eagerly define attribute methods in production
| * | | | | Eagerly define attribute methods in productionEugene Kenny2018-09-242-0/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The attribute methods for a model are currently defined lazily the first time that model is instantiated, even when `config.eager_load` is true. This means the first request to use each model incurs the cost, which usually involves a database round trip to fetch the schema definition. By defining the attribute methods for all models while the application is booting, we move that work out of any individual request. When using a forking web server, this also reduces the number of times the schema definition is queried by doing it once in the parent process instead of from each forked process during their first request.
* | | | | | Merge pull request #33960 from utilum/update_minimagick_version_to_4.9.2Ryuta Kamizono2018-09-241-2/+2
|\ \ \ \ \ \ | |/ / / / / |/| | | | | update mini_magick to the latest version
| * | | | | update mini_magick to the latest versionutilum2018-09-241-2/+2
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | v 4.9.2 avoids some warnings that show in our tests. Although Gemfile.lock currently specifies 4.8.0, the CI already runs 4.9.2 so 4.8.0 warnings do not show in our CI logs.
* | | | | Extract `instrument` method.Kasper Timm Hansen2018-09-231-26/+11
| | | | | | | | | | | | | | | | | | | | Similar to Action View's and Action Controller's instrument helpers.
* | | | | `Persistence#increment!` requires an attribute argument which is incrementedRyuta Kamizono2018-09-242-1/+6
| | | | |
* | | | | Merge pull request #33829 from mtsmfm/encode-filenameKasper Timm Hansen2018-09-2310-82/+104
|\ \ \ \ \ | | | | | | | | | | | | Encode Content-Disposition filenames on send_data and send_file
| * | | | | Encode Content-Disposition filenames on send_data and send_fileFumiaki MATSUSHIMA2018-09-1310-82/+104
| | | | | |
* | | | | | Merge pull request #33949 from sjain1107/no-private-defKasper Timm Hansen2018-09-239-72/+87
|\ \ \ \ \ \ | | | | | | | | | | | | | | Remove private def
| * | | | | | Remove private defSakshi Jain2018-09-239-72/+87
| | | | | | |
* | | | | | | Merge pull request #33951 from abartov/patch-1George Claghorn2018-09-231-0/+2
|\ \ \ \ \ \ \ | |_|_|/ / / / |/| | | | | | Added mandatory region and bucket
| * | | | | | Added mandatory region and bucketAsaf Bartov2018-09-231-0/+2
| |/ / / / / | | | | | | | | | | | | The 'setup' section was misleadingly leaving out :bucket and :region in the sample, but servers don't start without them.
* | | | | | Merge pull request #32971 from y-yagi/use_plus_operator_to_unfreeze_stringYuji Yaginuma2018-09-23101-364/+366
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Enable `Performance/UnfreezeString` cop
| * | | | | Enable `Performance/UnfreezeString` copyuuji.yaginuma2018-09-23101-364/+366
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Ruby 2.3 or later, `String#+@` is available and `+@` is faster than `dup`. ```ruby # frozen_string_literal: true require "bundler/inline" gemfile(true) do source "https://rubygems.org" gem "benchmark-ips" end Benchmark.ips do |x| x.report('+@') { +"" } x.report('dup') { "".dup } x.compare! end ``` ``` $ ruby -v benchmark.rb ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux] Warming up -------------------------------------- +@ 282.289k i/100ms dup 187.638k i/100ms Calculating ------------------------------------- +@ 6.775M (± 3.6%) i/s - 33.875M in 5.006253s dup 3.320M (± 2.2%) i/s - 16.700M in 5.032125s Comparison: +@: 6775299.3 i/s dup: 3320400.7 i/s - 2.04x slower ```
* | | | | Make sure this test check the issue solved in #31135Rafael Mendonça França2018-09-221-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this change this test was passing even if we revert #31135. The reason for that is that `app 'development'` will load the environment in the test process and it is happening before db_create_and_drop is called. This was not asserting that the environment was loaded in the db:create task itself. To test it we enhance the db:create task with a block that writes to a tmp file the value of the config. If the environment is loaded before that task enhancement runs the content of the file will have "true" insteand of "false".
* | | | | Fix "warning: shadowing outer local variable - job"yuuji.yaginuma2018-09-221-2/+2
| | | | |
* | | | | Merge pull request #33564 from avit/escape_javascript_castingRafael França2018-09-212-4/+9
|\ \ \ \ \ | | | | | | | | | | | | Let escape_javascript handle conversion to string
| * | | | | Let escape_javascript handle conversion to stringAndrew Vit2018-09-212-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This brings `escape_javascript` in line with the behavior of `json_escape` and allows other value types to be output without needing explicit casting in the view template. Example: <%= javascript_tag do %> var locale = '<%== j I18n.locale %>'; // locale is a symbol <% end %>
* | | | | | No private def in the codebaseRafael Mendonça França2018-09-212-13/+16
| | | | | |
* | | | | | Merge pull request #33932 from schneems/schneems/recyclable-key-support-cacheRichard Schneeman2018-09-218-0/+69
|\ \ \ \ \ \ | | | | | | | | | | | | | | [close #33907] Error when using "recyclable" cache keys with a store that does not support it
| * | | | | | Switch to supports_cache_versioning? check to a class methodschneems2018-09-208-29/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Moving the `supports_cache_versioning?` check to a class method. - Shorten the method doc. - Expand on the error message.
| * | | | | | [close #33907] Error when using "recyclable" cache keys with a store that ↵schneems2018-09-208-0/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | does not support it If you are using the "in cache versioning" also known as "recyclable cache keys" the cache store must be aware of this scheme, otherwise you will generate cache entries that never invalidate. This PR adds a check to the initialization process to ensure that if recyclable cache keys are being used via ``` config.active_record.cache_versioning = true ``` Then the cache store needs to show that it supports this versioning scheme. Cache stores can let Rails know that they support this scheme by adding a method `supports_in_cache_versioning?` and returning true.
* | | | | | | Merge pull request #33940 from ianfleeton/chaptersRyuta Kamizono2018-09-211-13/+13
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Replace line items with chapters [ci skip]
| * | | | | | | Replace line items with chapters [ci skip]Ian Fleeton2018-09-211-13/+13
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Line items are a holdover from when orders were used in the examples instead of books.
* | | | | | | Merge pull request #33934 from tgxworld/add_missing_test_caseRyuta Kamizono2018-09-211-0/+7
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Add missing test case for `redirect_to` when request includes a port.
| * | | | | | | Add missing test case for `redirect_to` when request includes a port.Guo Xiang Tan2018-09-211-0/+7
| | | | | | | |
* | | | | | | | Merge pull request #33922 from ↵Richard Schneeman2018-09-201-0/+35
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | schneems/schneems/collection-caching-easier-to-understand [ci skip] document collection_caching.rb
| * | | | | | | | [ci skip] document collection_caching.rbschneems2018-09-191-0/+35
| | | | | | | | |
* | | | | | | | | Merge pull request #33933 from davidcelis/patch-1Yuji Yaginuma2018-09-211-0/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Fix missing curly brace in documentation
| * | | | | | | | | Fix missing curly brace in documentationDavid Celis2018-09-201-0/+1
|/ / / / / / / / / | | | | | | | | | | | | | | | | | | This example was just missing a closing curly brace to complete the closure 😄
* | | | | | | | | Merge pull request #33906 from dark-panda/ignore-psqlrc-when-using-psqlRafael França2018-09-204-12/+12
|\ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / |/| | | | | | | | Ignore psqlrc files when executing psql commands
| * | | | | | | | Ignore psqlrc files when executing psql commandsJ Smith2018-09-174-12/+12
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | psqlrc files can affect the execution of commands in ways that can hold up execution by blocking or otherwise cause unexpected side effects and should best be ignored when using psql programmatically.
* | | | | | | | Merge pull request #33930 from bogdanvlviv/correct-spelling-in-33891George Claghorn2018-09-201-1/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Correct spelling in "Contributing to Ruby on Rails" guide [ci skip]
| * | | | | | | | Correct spelling in "Contributing to Ruby on Rails" guide [ci skip]bogdanvlviv2018-09-201-1/+1
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ambigity -> ambiguity Related to #33891
* | | | | | | | Merge pull request #33850 from sharang-d/fix-asset_enqueued_with-for-hashesRafael França2018-09-203-9/+38
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Make sure `assert_enqueued_with()` & `assert_performed_with()` work reliably with hash arguments
| * | | | | | | | Make `assert_<enqueued|performed>_with()` compare hashes ignoring order of keysSharang Dashputre2018-09-213-9/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test helpers now treat `{ a: 1, b: 2 }` and `{ b: 2, a: 1 }` as equals
* | | | | | | | | Merge pull request #33891 from jgorman/remote_namesRafael França2018-09-201-40/+12
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Contributing to Ruby on Rails Guide: standardize git remote names [ci skip].
| * | | | | | | | | Standardize git remote names.John Gorman2018-09-151-40/+12
| | | | | | | | | |
* | | | | | | | | | Use utf8mb4 in all tests and examplesRyuta Kamizono2018-09-214-11/+11
| |/ / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since #33875, Rails dropped supporting MySQL 5.1 which does not support utf8mb4. We no longer need to use legacy utf8 (utf8mb3) conservatively.
* | | | | | | | | Merge pull request #33112 from yahonda/ci_postgresql10Rafael França2018-09-201-3/+48
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | CI against PostgreSQL 10
| * | | | | | | | | CI against PostgreSQL 10Yasuo Honda2018-09-181-3/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Replace port number 5433 to 5432 (default value) which Active Record unit tests expect - Restart PostgreSQL 10 service after changing port number - PostgreSQL 10 is a addon for the current Travis CI. Installing PostgreSQL 10 would cause longer CI to getting additional apt packages Refer https://docs.travis-ci.com/user/database-setup/#PostgreSQL - Use `sudo: required` for railties CI expecting PostgreSQL is up and running
* | | | | | | | | | Merge pull request #33925 from rafaelfranca/rm-fix-column_defaultsSean Griffin2018-09-202-1/+15
|\ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|/ / / |/| | | | | | | | | Make a deep copy of the _default_attributes in column_defaults
| * | | | | | | | | Make a deep copy of the _default_attributes in column_defaultsRafael Mendonça França2018-09-202-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When column_defaults is called it calls `value` on each instance of Attribute inside the _default_attributes set. Since value is memoized in the Attribute instance and that Attribute instance is shared across all instances of a model the next call to the default value will be memozied not running the proc defined by the user. Fixes #33031.
* | | | | | | | | | Merge pull request #33929 from yahonda/update_utf8mb4_railsguideRyuta Kamizono2018-09-201-1/+2
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | Update MySQL server version and character set in Rails Guide [skip ci]
| * | | | | | | | | | Update MySQL server version and character set in Rails Guide [skip ci]Yasuo Honda2018-09-201-1/+2
| | |/ / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Related to #33853
* | | | | | | | | | Merge pull request #33928 from freeletics/fix-key-envYuji Yaginuma2018-09-204-12/+8
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | Fixed to RAILS_MASTER_KEY as a default env key for decrypting.
| * | | | | | | | | | Fixed to RAILS_MASTER_KEY as a default env key for decrypting.Wojciech Wnętrzak2018-09-204-12/+8
|/ / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes mistake left in https://github.com/rails/rails/pull/33521/files#diff-2a29095afcfe2c683b82a779a94c2208R59 and misunderstanding in https://github.com/rails/rails/commit/d69b04de0ff33237209afea6f6cac3ab27934908
* | | | | | | | | | Fix deprecation hash warning - activerecord testVitor Oliveira2018-09-201-1/+1
| | | | | | | | | |
* | | | | | | | | | Merge pull request #33927 from bogdanvlviv/follow-up-33912Ryuta Kamizono2018-09-201-5/+2
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | Make `ActiveRecord::Result#to_a` as alias to `ActiveRecord::Result#to_ary`