2013-12-17 12:40:13 -05:00
|
|
|
|
* Move `secret_key_base` from `config/initializers/secret_token.rb`
|
|
|
|
|
to `config/secrets.yml`.
|
|
|
|
|
|
|
|
|
|
`secret_key_base` is now saved in `Rails.application.secrets.secret_key_base`
|
|
|
|
|
and it fallbacks to the value of `config.secret_key_base` when it is not
|
|
|
|
|
present in `config/secrets.yml`.
|
|
|
|
|
|
|
|
|
|
`config/initializers/secret_token.rb` is not generated by default
|
|
|
|
|
in new applications.
|
|
|
|
|
|
|
|
|
|
*Guillermo Iguaran*
|
|
|
|
|
|
|
|
|
|
* Generate a new `secrets.yml` file in the `config` folder for new
|
|
|
|
|
applications. By default, this file contains the application's `secret_key_base`,
|
|
|
|
|
but it could also be used to store other secrets such as access keys for external
|
|
|
|
|
APIs.
|
|
|
|
|
|
|
|
|
|
The secrets added to this file will be accessible via `Rails.application.secrets`.
|
|
|
|
|
For example, with the following `secrets.yml`:
|
|
|
|
|
|
|
|
|
|
development:
|
|
|
|
|
secret_key_base: 3b7cd727ee24e8444053437c36cc66c3
|
|
|
|
|
some_api_key: SOMEKEY
|
|
|
|
|
|
|
|
|
|
`Rails.application.secrets.some_api_key` will return `SOMEKEY` in the development
|
|
|
|
|
environment.
|
|
|
|
|
|
|
|
|
|
*Guillermo Iguaran*
|
|
|
|
|
|
2013-12-15 01:07:34 -05:00
|
|
|
|
* Add `ENV['DATABASE_URL']` support in `rails dbconsole`. Fixes #13320.
|
|
|
|
|
|
|
|
|
|
*Huiming Teo*
|
|
|
|
|
|
2013-11-21 20:42:10 -05:00
|
|
|
|
* Add `Application#message_verifier` method to return a message verifier.
|
2013-11-19 19:34:32 -05:00
|
|
|
|
|
|
|
|
|
This verifier can be used to generate and verify signed messages in the application.
|
|
|
|
|
|
2013-12-19 14:04:07 -05:00
|
|
|
|
message = Rails.application.message_verifier(:sensitive_data).generate('my sensible data')
|
|
|
|
|
Rails.application.message_verifier(:sensitive_data).verify(message)
|
2013-11-19 19:34:32 -05:00
|
|
|
|
# => 'my sensible data'
|
|
|
|
|
|
2013-12-02 19:42:10 -05:00
|
|
|
|
It is recommended not to use the same verifier for different things, so you can get different
|
2013-11-21 20:42:10 -05:00
|
|
|
|
verifiers passing the name argument.
|
|
|
|
|
|
2013-12-19 14:04:07 -05:00
|
|
|
|
message = Rails.application.message_verifier(:cookies).generate('my sensible cookie data')
|
2013-11-21 20:42:10 -05:00
|
|
|
|
|
2013-11-21 21:02:10 -05:00
|
|
|
|
See the `ActiveSupport::MessageVerifier` documentation for more information.
|
2013-11-19 19:34:32 -05:00
|
|
|
|
|
|
|
|
|
*Rafael Mendonça França*
|
|
|
|
|
|
2013-11-02 14:25:02 -04:00
|
|
|
|
* The [Spring application
|
|
|
|
|
preloader](https://github.com/jonleighton/spring) is now installed
|
|
|
|
|
by default for new applications. It uses the development group of
|
|
|
|
|
the Gemfile, so will not be installed in production.
|
|
|
|
|
|
|
|
|
|
*Jon Leighton*
|
|
|
|
|
|
2013-05-21 11:34:29 -04:00
|
|
|
|
* Uses .railsrc while creating new plugin if it is available.
|
|
|
|
|
Fixes #10700.
|
|
|
|
|
|
|
|
|
|
*Prathamesh Sonpatki*
|
|
|
|
|
|
2013-11-21 19:11:26 -05:00
|
|
|
|
* Remove turbolinks when generating a new application based on a template that skips it.
|
|
|
|
|
|
2013-11-22 05:30:03 -05:00
|
|
|
|
Example:
|
|
|
|
|
|
2013-11-21 19:11:26 -05:00
|
|
|
|
Skips turbolinks adding `add_gem_entry_filter { |gem| gem.name != "turbolinks" }`
|
|
|
|
|
to the template.
|
|
|
|
|
|
|
|
|
|
*Lauro Caetano*
|
|
|
|
|
|
2013-11-11 12:56:02 -05:00
|
|
|
|
* Instrument an `load_config_initializer.railties` event on each load of configuration initializer
|
|
|
|
|
from `config/initializers`. Subscribers should be attached before `load_config_initializers`
|
|
|
|
|
initializer completed.
|
|
|
|
|
|
|
|
|
|
Registering subscriber examples:
|
|
|
|
|
|
|
|
|
|
# config/application.rb
|
|
|
|
|
module RailsApp
|
|
|
|
|
class Application < Rails::Application
|
|
|
|
|
ActiveSupport::Notifications.subscribe('load_config_initializer.railties') do |*args|
|
|
|
|
|
event = ActiveSupport::Notifications::Event.new(*args)
|
|
|
|
|
puts "Loaded initializer #{event.payload[:initializer]} (#{event.duration}ms)"
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
# my_engine/lib/my_engine/engine.rb
|
|
|
|
|
module MyEngine
|
|
|
|
|
class Engine < ::Rails::Engine
|
|
|
|
|
config.before_initialize do
|
|
|
|
|
ActiveSupport::Notifications.subscribe('load_config_initializer.railties') do |*args|
|
|
|
|
|
event = ActiveSupport::Notifications::Event.new(*args)
|
|
|
|
|
puts "Loaded initializer #{event.payload[:initializer]} (#{event.duration}ms)"
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
*Paul Nikitochkin*
|
|
|
|
|
|
2013-10-29 18:58:52 -04:00
|
|
|
|
* Support for Pathnames in eager load paths.
|
|
|
|
|
|
|
|
|
|
*Mike Pack*
|
|
|
|
|
|
2013-11-11 02:17:44 -05:00
|
|
|
|
* Fixed missing line and shadow on service pages(404, 422, 500).
|
|
|
|
|
|
|
|
|
|
*Dmitry Korotkov*
|
|
|
|
|
|
2013-10-28 08:44:17 -04:00
|
|
|
|
* `BACKTRACE` environment variable to show unfiltered backtraces for
|
|
|
|
|
test failures.
|
|
|
|
|
|
|
|
|
|
Example:
|
|
|
|
|
|
2013-11-04 09:53:18 -05:00
|
|
|
|
$ BACKTRACE=1 ruby -Itest ...
|
2013-10-28 08:44:17 -04:00
|
|
|
|
# or with rake
|
2013-11-04 09:53:18 -05:00
|
|
|
|
$ BACKTRACE=1 bin/rake
|
2013-10-28 08:44:17 -04:00
|
|
|
|
|
|
|
|
|
*Yves Senn*
|
|
|
|
|
|
2013-10-27 05:43:17 -04:00
|
|
|
|
* Removal of all javascript stuff (gems and files) when generating a new
|
|
|
|
|
application using the `--skip-javascript` option.
|
|
|
|
|
|
|
|
|
|
*Robin Dupret*
|
|
|
|
|
|
2013-10-22 07:17:52 -04:00
|
|
|
|
* Make the application name snake cased when it contains spaces
|
|
|
|
|
|
|
|
|
|
The application name is used to fill the `database.yml` and
|
|
|
|
|
`session_store.rb` files ; previously, if the provided name
|
|
|
|
|
contained whitespaces, it led to unexpected names in these files.
|
|
|
|
|
|
|
|
|
|
*Robin Dupret*
|
|
|
|
|
|
2013-10-15 17:04:02 -04:00
|
|
|
|
* Added `--model-name` option to `ScaffoldControllerGenerator`.
|
2013-07-13 01:38:00 -04:00
|
|
|
|
|
|
|
|
|
*yalab*
|
|
|
|
|
|
2013-10-09 06:16:22 -04:00
|
|
|
|
* Expose MiddlewareStack#unshift to environment configuration.
|
|
|
|
|
|
|
|
|
|
*Ben Pickles*
|
|
|
|
|
|
2013-06-18 16:24:00 -04:00
|
|
|
|
* `rails server` will only extend the logger to output to STDOUT
|
|
|
|
|
in development environment.
|
|
|
|
|
|
|
|
|
|
*Richard Schneeman*
|
|
|
|
|
|
2013-09-07 16:50:54 -04:00
|
|
|
|
* Don't require passing path to app before options in `rails new`
|
|
|
|
|
and `rails plugin new`
|
|
|
|
|
|
|
|
|
|
*Piotr Sarnacki*
|
|
|
|
|
|
2013-08-15 06:30:01 -04:00
|
|
|
|
* rake notes now searches *.less files
|
|
|
|
|
|
|
|
|
|
*Josh Crowder*
|
|
|
|
|
|
2013-07-21 11:06:35 -04:00
|
|
|
|
* Generate nested route for namespaced controller generated using
|
|
|
|
|
`rails g controller`.
|
|
|
|
|
Fixes #11532.
|
2013-09-07 16:50:54 -04:00
|
|
|
|
|
2013-07-21 11:06:35 -04:00
|
|
|
|
Example:
|
2013-09-07 16:50:54 -04:00
|
|
|
|
|
2013-07-21 11:06:35 -04:00
|
|
|
|
rails g controller admin/dashboard index
|
2013-09-07 16:50:54 -04:00
|
|
|
|
|
2013-07-21 11:06:35 -04:00
|
|
|
|
# Before:
|
|
|
|
|
get "dashboard/index"
|
2013-09-07 16:50:54 -04:00
|
|
|
|
|
2013-07-21 11:06:35 -04:00
|
|
|
|
# After:
|
|
|
|
|
namespace :admin do
|
|
|
|
|
get "dashboard/index"
|
|
|
|
|
end
|
2013-09-07 16:50:54 -04:00
|
|
|
|
|
2013-07-21 11:06:35 -04:00
|
|
|
|
*Prathamesh Sonpatki*
|
2013-09-07 16:50:54 -04:00
|
|
|
|
|
2013-08-05 17:16:41 -04:00
|
|
|
|
* Fix the event name of action_dispatch requests.
|
|
|
|
|
|
|
|
|
|
*Rafael Mendonça França*
|
|
|
|
|
|
2013-08-04 10:38:14 -04:00
|
|
|
|
* Make `config.log_level` work with custom loggers.
|
|
|
|
|
|
|
|
|
|
*Max Shytikov*
|
|
|
|
|
|
2013-07-29 07:03:41 -04:00
|
|
|
|
* Changed stylesheet load order in the stylesheet manifest generator.
|
|
|
|
|
Fixes #11639.
|
|
|
|
|
|
|
|
|
|
*Pawel Janiak*
|
|
|
|
|
|
2013-07-13 06:49:31 -04:00
|
|
|
|
* Added generated unit test for generator generator using new
|
|
|
|
|
`test:generators` rake task.
|
|
|
|
|
|
|
|
|
|
*Josef Šimánek*
|
|
|
|
|
|
2013-07-13 08:30:58 -04:00
|
|
|
|
* Removed `update:application_controller` rake task.
|
|
|
|
|
|
|
|
|
|
*Josef Šimánek*
|
|
|
|
|
|
2013-07-09 16:36:50 -04:00
|
|
|
|
* Fix `rake environment` to do not eager load modules
|
|
|
|
|
|
|
|
|
|
*Paul Nikitochkin*
|
|
|
|
|
|
2013-07-08 11:13:01 -04:00
|
|
|
|
* Fix `rake notes` to look into `*.sass` files
|
|
|
|
|
|
|
|
|
|
*Yuri Artemev*
|
|
|
|
|
|
2013-07-04 13:56:23 -04:00
|
|
|
|
* Removed deprecated `Rails.application.railties.engines`.
|
|
|
|
|
|
|
|
|
|
*Arun Agrawal*
|
|
|
|
|
|
2013-07-03 15:58:01 -04:00
|
|
|
|
* Removed deprecated threadsafe! from Rails Config.
|
|
|
|
|
|
|
|
|
|
*Paul Nikitochkin*
|
|
|
|
|
|
2013-07-03 13:03:57 -04:00
|
|
|
|
* Remove deprecated `ActiveRecord::Generators::ActiveModel#update_attributes` in
|
2013-12-05 05:33:12 -05:00
|
|
|
|
favor of `ActiveRecord::Generators::ActiveModel#update`.
|
2013-07-03 13:03:57 -04:00
|
|
|
|
|
|
|
|
|
*Vipul A M*
|
|
|
|
|
|
2013-12-05 05:33:12 -05:00
|
|
|
|
* Remove deprecated `config.whiny_nils` option.
|
2013-07-01 23:55:08 -04:00
|
|
|
|
|
|
|
|
|
*Vipul A M*
|
|
|
|
|
|
2013-06-30 17:02:19 -04:00
|
|
|
|
* Rename `commands/plugin_new.rb` to `commands/plugin.rb` and fix references
|
|
|
|
|
|
|
|
|
|
*Richard Schneeman*
|
|
|
|
|
|
2013-06-29 05:54:23 -04:00
|
|
|
|
* Fix `rails plugin --help` command.
|
|
|
|
|
|
|
|
|
|
*Richard Schneeman*
|
|
|
|
|
|
2013-06-28 07:11:50 -04:00
|
|
|
|
* Omit turbolinks configuration completely on skip_javascript generator option.
|
|
|
|
|
|
|
|
|
|
*Nikita Fedyashev*
|
|
|
|
|
|
2013-06-26 19:07:26 -04:00
|
|
|
|
* Removed deprecated rake tasks for running tests: `rake test:uncommitted` and
|
|
|
|
|
`rake test:recent`.
|
2013-06-26 12:09:57 -04:00
|
|
|
|
|
|
|
|
|
*John Wang*
|
|
|
|
|
|
2013-07-29 07:03:41 -04:00
|
|
|
|
* Clearing autoloaded constants triggers routes reloading.
|
|
|
|
|
Fixes #10685.
|
2013-06-06 17:16:04 -04:00
|
|
|
|
|
|
|
|
|
*Xavier Noria*
|
|
|
|
|
|
2013-05-04 09:53:53 -04:00
|
|
|
|
* Fixes bug with scaffold generator with `--assets=false --resource-route=false`.
|
|
|
|
|
Fixes #9525.
|
2013-05-03 05:42:30 -04:00
|
|
|
|
|
|
|
|
|
*Arun Agrawal*
|
|
|
|
|
|
2013-03-18 22:12:35 -04:00
|
|
|
|
* Rails::Railtie no longer forces the Rails::Configurable module on everything
|
2013-05-18 09:52:46 -04:00
|
|
|
|
that subclasses it. Instead, the methods from Rails::Configurable have been
|
2013-03-18 22:12:35 -04:00
|
|
|
|
moved to class methods in Railtie and the Railtie has been made abstract.
|
|
|
|
|
|
|
|
|
|
*John Wang*
|
2013-06-26 19:07:26 -04:00
|
|
|
|
|
2013-06-16 20:22:31 -04:00
|
|
|
|
* Changes repetitive th tags to use colspan attribute in `index.html.erb` template.
|
2013-06-26 19:07:26 -04:00
|
|
|
|
|
2013-06-16 20:22:31 -04:00
|
|
|
|
*Sıtkı Bağdat*
|
2013-02-26 11:45:20 -05:00
|
|
|
|
|
2013-04-29 12:06:45 -04:00
|
|
|
|
Please check [4-0-stable](https://github.com/rails/rails/blob/4-0-stable/railties/CHANGELOG.md) for previous changes.
|