1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
|
* Deprecate different default for `log_level` in production.
*Godfrey Chan*, *Matthew Draper*
* Generated `.gitignore` excludes the whole `log/` directory, not only
`*.log` files.
*ShunsukeAida*
* `Rails::Paths::Path.unshift` now has the same interface as `Array.unshift`.
*Igor Kapkov*
* Make `rake test` run all tests in test folder.
Deprecate `rake test:all` and replace `rake test:all:db` with `rake test:db`
*David Geukers*
* `secret_token` is now saved in `Rails.application.secrets.secret_token`
and it falls back to the value of `config.secret_token` when it is not
present in `config/secrets.yml`.
*Benjamin Fleischer*
* Remove `--skip-action-view` option from `Rails::Generators::AppBase`.
Fixes #17023.
*Dan Olson*
* Specify dummy app's db migrate path in plugin's test_helper.rb.
Fixes #16877.
*Yukio Mizuta*
* Inject `Rack::Lock` if `config.eager_load` is false.
Fixes #15089.
*Xavier Noria*
* Change the path of dummy app location in plugin's test_helper.rb for cases
you specify dummy_path option.
*Yukio Mizuta*
* Fix a bug in the `gem` method for Rails templates when non-String options
are used.
Fixes #16709.
*Yves Senn*
* The [web-console](https://github.com/rails/web-console) gem is now
installed by default for new applications. It can help you debug
development exceptions by spawning an interactive console in its cause
binding.
*Ryan Dao*, *Genadi Samokovarov*, *Guillermo Iguaran*
* Add a `required` option to the model generator for associations
*Sean Griffin*
* Add `after_bundle` callbacks in Rails templates. Useful for allowing the
generated binstubs to be added to version control.
Fixes #16292.
*Stefan Kanev*
* Pull in the custom configuration concept from dhh/custom_configuration, which allows you to
configure your own code through the Rails configuration object with custom configuration:
# config/environments/production.rb
config.x.payment_processing.schedule = :daily
config.x.payment_processing.retries = 3
config.x.super_debugger = true
These configuration points are then available through the configuration object:
Rails.configuration.x.payment_processing.schedule # => :daily
Rails.configuration.x.payment_processing.retries # => 3
Rails.configuration.x.super_debugger # => true
*DHH*
* Scaffold generator `_form` partial adds `class="field"` for password
confirmation fields.
*noinkling*
* Add `Rails::Application.config_for` to load a configuration for the current
environment.
# config/exception_notification.yml:
production:
url: http://127.0.0.1:8080
namespace: my_app_production
development:
url: http://localhost:3001
namespace: my_app_development
# config/production.rb
Rails.application.configure do
config.middleware.use ExceptionNotifier, config_for(:exception_notification)
end
*Rafael Mendonça França*, *DHH*
* Deprecate `Rails::Rack::LogTailer` without replacement.
*Rafael Mendonça França*
* Add `--skip-turbolinks` option to the app generator.
*Rafael Mendonça França*
* Invalid `bin/rails generate` commands will now show spelling suggestions.
*Richard Schneeman*
* Add `bin/setup` script to bootstrap an application.
*Yves Senn*
* Replace double quotes with single quotes while adding an entry into Gemfile.
*Alexander Belaev*
* Default `config.assets.digest` to `true` in development.
*Dan Kang*
* Load database configuration from the first `database.yml` available in paths.
*Pier-Olivier Thibault*
* Reading name and email from git for plugin gemspec.
Fixes #9589.
*Arun Agrawal*, *Abd ar-Rahman Hamidi*, *Roman Shmatov*
* Fix `console` and `generators` blocks defined at different environments.
Fixes #14748.
*Rafael Mendonça França*
* Move configuration of asset precompile list and version to an initializer.
*Matthew Draper*
* Remove sqlite3 lines from `.gitignore` if the application is not using sqlite3.
*Dmitrii Golub*
* Add public API to register new extensions for `rake notes`.
Example:
config.annotations.register_extensions("scss", "sass") { |tag| /\/\/\s*(#{tag}):?\s*(.*)$/ }
*Roberto Miranda*
* Removed unnecessary `rails application` command.
*Arun Agrawal*
* Make the `rails:template` rake task load the application's initializers.
Fixes #12133.
*Robin Dupret*
* Introduce `Rails.gem_version` as a convenience method to return
`Gem::Version.new(Rails.version)`, suggesting a more reliable way to perform
version comparison.
Example:
Rails.version #=> "4.1.2"
Rails.gem_version #=> #<Gem::Version "4.1.2">
Rails.version > "4.1.10" #=> false
Rails.gem_version > Gem::Version.new("4.1.10") #=> true
Gem::Requirement.new("~> 4.1.2") =~ Rails.gem_version #=> true
*Prem Sichanugrist*
* Avoid namespacing routes inside engines.
Mountable engines are namespaced by default so the generated routes
were too while they should not.
Fixes #14079.
*Yves Senn*, *Carlos Antonio da Silva*, *Robin Dupret*
Please check [4-1-stable](https://github.com/rails/rails/blob/4-1-stable/railties/CHANGELOG.md) for previous changes.
|