1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/railties
Lachlan Sylvester 4f2ac80d4c
Add collection cache versioning
Cache versioning enables the same cache key to be reused when the object
being cached changes by moving the volatile part of the cache key out of
the cache key and into a version that is embedded in the cache entry.

This is already occurring when the object being cached is an
`ActiveRecord::Base`, but when caching an `ActiveRecord::Relation`
we are currently still putting the volatile information (max updated at
and count) as part of the cache key.

This PR moves the volatile part of the relations `cache_key` into the
`cache_version` to support recycling cache keys for
`ActiveRecord::Relation`s.
2019-04-16 22:54:15 +02:00
..
bin Adding frozen_string_literal pragma to Railties. 2017-08-14 19:08:09 +02:00
exe Adding frozen_string_literal pragma to Railties. 2017-08-14 19:08:09 +02:00
lib Add collection cache versioning 2019-04-16 22:54:15 +02:00
test Merge pull request #35997 from tjoyal/Rails/MailersController/do-not-leak-I18n-global-setting-changes 2019-04-16 15:45:20 -04:00
.gitignore Install JavaScript packages before run test 2019-02-11 09:58:08 +09:00
CHANGELOG.md generate config.cache_classes = false if Spring 2019-04-14 23:09:02 +02:00
MIT-LICENSE Bump license years for 2019 2018-12-31 10:24:38 +07:00
railties.gemspec Updated links from http to https in guides, docs, etc 2019-03-09 16:43:47 +05:30
Rakefile Better spread out the railties tests 2019-04-09 22:35:27 +09:30
RDOC_MAIN.rdoc Fix links in gemspec and docs from http to https. 2019-03-09 19:42:35 +05:30
README.rdoc Updated links from http to https in guides, docs, etc 2019-03-09 16:43:47 +05:30

= Railties -- Gluing the Engine to the Rails

Railties is responsible for gluing all frameworks together. Overall, it:

* handles the bootstrapping process for a Rails application;

* manages the +rails+ command line interface;

* and provides the Rails generators core.


== Download

The latest version of Railties can be installed with RubyGems:

* gem install railties

Source code can be downloaded as part of the Rails project on GitHub

* https://github.com/rails/rails/tree/master/railties

== License

Railties is released under the MIT license:

* https://opensource.org/licenses/MIT

== Support

API documentation is at

* https://api.rubyonrails.org

Bug reports can be filed for the Ruby on Rails project here:

* https://github.com/rails/rails/issues

Feature requests should be discussed on the rails-core mailing list here:

* https://groups.google.com/forum/?fromgroups#!forum/rubyonrails-core