aboutsummaryrefslogtreecommitdiffstats
path: root/railties/CHANGELOG.md
blob: ff6dcac465431f09473564af8475244d59bfcd82 (plain) (blame)
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
204
205
206
207
208
*   Generated migrations add the appropriate foreign key constraints to
    references.

    *Derek Prior*

*   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.