rails 4.1.7 → 4.1.15
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/guides/CHANGELOG.md +60 -0
- data/guides/bug_report_templates/action_controller_gem.rb +2 -2
- data/guides/bug_report_templates/action_controller_master.rb +2 -2
- data/guides/bug_report_templates/generic_gem.rb +15 -0
- data/guides/bug_report_templates/generic_master.rb +26 -0
- data/guides/source/3_1_release_notes.md +1 -1
- data/guides/source/4_1_release_notes.md +4 -4
- data/guides/source/action_view_overview.md +0 -8
- data/guides/source/active_support_core_extensions.md +1 -48
- data/guides/source/asset_pipeline.md +2 -2
- data/guides/source/engines.md +29 -8
- data/guides/source/getting_started.md +1 -1
- data/guides/source/security.md +1 -1
- data/guides/source/testing.md +1 -1
- data/guides/source/upgrading_ruby_on_rails.md +2 -2
- metadata +19 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fcaff3458f45aba96c6c273e29e1a997f2e06026
|
4
|
+
data.tar.gz: 3b96f72398dd22d6fa9ce238e495aa55349b236f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: da53fcaa591ba1b1b7f36af397e67397acb2f580c153c039eddd327e34badaa3227392b8dae6b9fc2953ad6385337ef218d21e1a3e77642b43899308ec535fcf
|
7
|
+
data.tar.gz: 7170c0c53d26d23db10d25681b1677b9c299a6ac8b2bfabdaec522b2bdf7d2efe66f1d4317657e3e05f5967b174d0de0f1ae76c5cecaa50dd44e2c8cce6ad37a
|
data/guides/CHANGELOG.md
CHANGED
@@ -1,3 +1,63 @@
|
|
1
|
+
## Rails 4.1.15 (March 07, 2016) ##
|
2
|
+
|
3
|
+
* No changes.
|
4
|
+
|
5
|
+
|
6
|
+
## Rails 4.1.14.2 (February 26, 2016) ##
|
7
|
+
|
8
|
+
* No changes.
|
9
|
+
|
10
|
+
|
11
|
+
## Rails 4.1.14.1 (January 25, 2015) ##
|
12
|
+
|
13
|
+
* No changes.
|
14
|
+
|
15
|
+
|
16
|
+
## Rails 4.1.14 (November 12, 2015) ##
|
17
|
+
|
18
|
+
* No changes.
|
19
|
+
|
20
|
+
|
21
|
+
## Rails 4.1.13 (August 24, 2015) ##
|
22
|
+
|
23
|
+
* No changes.
|
24
|
+
|
25
|
+
|
26
|
+
## Rails 4.1.12 (June 25, 2015) ##
|
27
|
+
|
28
|
+
* No changes.
|
29
|
+
|
30
|
+
|
31
|
+
## Rails 4.1.11 (June 16, 2015) ##
|
32
|
+
|
33
|
+
* No changes.
|
34
|
+
|
35
|
+
|
36
|
+
## Rails 4.1.10 (March 19, 2015) ##
|
37
|
+
|
38
|
+
* No changes.
|
39
|
+
|
40
|
+
|
41
|
+
## Rails 4.1.9 (January 6, 2015) ##
|
42
|
+
|
43
|
+
* No changes.
|
44
|
+
|
45
|
+
|
46
|
+
## Rails 4.1.8 (November 16, 2014) ##
|
47
|
+
|
48
|
+
* No changes.
|
49
|
+
|
50
|
+
|
51
|
+
## Rails 4.1.7.1 (November 19, 2014) ##
|
52
|
+
|
53
|
+
* No changes.
|
54
|
+
|
55
|
+
|
56
|
+
## Rails 4.1.7 (October 29, 2014) ##
|
57
|
+
|
58
|
+
* No changes.
|
59
|
+
|
60
|
+
|
1
61
|
## Rails 4.1.6 (September 11, 2014) ##
|
2
62
|
|
3
63
|
* No changes.
|
@@ -7,8 +7,8 @@ require 'action_controller/railtie'
|
|
7
7
|
class TestApp < Rails::Application
|
8
8
|
config.root = File.dirname(__FILE__)
|
9
9
|
config.session_store :cookie_store, key: 'cookie_store_key'
|
10
|
-
|
11
|
-
|
10
|
+
secrets.secret_token = 'secret_token'
|
11
|
+
secrets.secret_key_base = 'secret_key_base'
|
12
12
|
|
13
13
|
config.logger = Logger.new($stdout)
|
14
14
|
Rails.logger = config.logger
|
@@ -16,8 +16,8 @@ require 'action_controller/railtie'
|
|
16
16
|
class TestApp < Rails::Application
|
17
17
|
config.root = File.dirname(__FILE__)
|
18
18
|
config.session_store :cookie_store, key: 'cookie_store_key'
|
19
|
-
|
20
|
-
|
19
|
+
secrets.secret_token = 'secret_token'
|
20
|
+
secrets.secret_key_base = 'secret_key_base'
|
21
21
|
|
22
22
|
config.logger = Logger.new($stdout)
|
23
23
|
Rails.logger = config.logger
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# Activate the gems you are reporting the issue against.
|
2
|
+
gem 'activesupport', '4.0.0'
|
3
|
+
require 'active_support'
|
4
|
+
require 'active_support/core_ext/object/blank'
|
5
|
+
require 'minitest/autorun'
|
6
|
+
|
7
|
+
# Ensure backward compatibility with Minitest 4
|
8
|
+
Minitest::Test = MiniTest::Unit::TestCase unless defined?(Minitest::Test)
|
9
|
+
|
10
|
+
class BugTest < Minitest::Test
|
11
|
+
def test_stuff
|
12
|
+
assert "zomg".present?
|
13
|
+
refute "".present?
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
unless File.exist?('Gemfile')
|
2
|
+
File.write('Gemfile', <<-GEMFILE)
|
3
|
+
source 'https://rubygems.org'
|
4
|
+
gem 'rails', github: 'rails/rails'
|
5
|
+
gem 'arel', github: 'rails/arel'
|
6
|
+
GEMFILE
|
7
|
+
|
8
|
+
system 'bundle'
|
9
|
+
end
|
10
|
+
|
11
|
+
require 'bundler'
|
12
|
+
Bundler.setup(:default)
|
13
|
+
|
14
|
+
require 'active_support'
|
15
|
+
require 'active_support/core_ext/object/blank'
|
16
|
+
require 'minitest/autorun'
|
17
|
+
|
18
|
+
# Ensure backward compatibility with Minitest 4
|
19
|
+
Minitest::Test = MiniTest::Unit::TestCase unless defined?(Minitest::Test)
|
20
|
+
|
21
|
+
class BugTest < Minitest::Test
|
22
|
+
def test_stuff
|
23
|
+
assert "zomg".present?
|
24
|
+
refute "".present?
|
25
|
+
end
|
26
|
+
end
|
@@ -169,7 +169,7 @@ Rails Architectural Changes
|
|
169
169
|
|
170
170
|
The major change in Rails 3.1 is the Assets Pipeline. It makes CSS and JavaScript first-class code citizens and enables proper organization, including use in plugins and engines.
|
171
171
|
|
172
|
-
The assets pipeline is powered by [Sprockets](https://github.com/
|
172
|
+
The assets pipeline is powered by [Sprockets](https://github.com/rails/sprockets) and is covered in the [Asset Pipeline](asset_pipeline.html) guide.
|
173
173
|
|
174
174
|
### HTTP Streaming
|
175
175
|
|
@@ -8,10 +8,10 @@ Highlights in Rails 4.1:
|
|
8
8
|
* Action Pack variants
|
9
9
|
* Action Mailer previews
|
10
10
|
|
11
|
-
These release notes cover only the major changes. To
|
12
|
-
fixes and changes, please refer to the change logs or check out the
|
13
|
-
|
14
|
-
|
11
|
+
These release notes cover only the major changes. To learn about various bug
|
12
|
+
fixes and changes, please refer to the change logs or check out the [list of
|
13
|
+
commits](https://github.com/rails/rails/commits/4-1-stable) in the main Rails
|
14
|
+
repository on GitHub.
|
15
15
|
|
16
16
|
--------------------------------------------------------------------------------
|
17
17
|
|
@@ -1137,14 +1137,6 @@ If `@post.author_ids` is [1], this would return:
|
|
1137
1137
|
<input name="post[author_ids][]" type="hidden" value="" />
|
1138
1138
|
```
|
1139
1139
|
|
1140
|
-
#### country_options_for_select
|
1141
|
-
|
1142
|
-
Returns a string of option tags for pretty much any country in the world.
|
1143
|
-
|
1144
|
-
#### country_select
|
1145
|
-
|
1146
|
-
Returns select and option tags for the given object and method, using country_options_for_select to generate the list of option tags.
|
1147
|
-
|
1148
1140
|
#### option_groups_from_collection_for_select
|
1149
1141
|
|
1150
1142
|
Returns a string of `option` tags, like `options_from_collection_for_select`, but groups them by `optgroup` tags based on the object relationships of the arguments.
|
@@ -1281,7 +1281,7 @@ The method `squish` strips leading and trailing whitespace, and substitutes runs
|
|
1281
1281
|
|
1282
1282
|
There's also the destructive version `String#squish!`.
|
1283
1283
|
|
1284
|
-
Note that it handles both ASCII and Unicode whitespace
|
1284
|
+
Note that it handles both ASCII and Unicode whitespace.
|
1285
1285
|
|
1286
1286
|
NOTE: Defined in `active_support/core_ext/string/filters.rb`.
|
1287
1287
|
|
@@ -3003,53 +3003,6 @@ The method `Range#overlaps?` says whether any two given ranges have non-void int
|
|
3003
3003
|
|
3004
3004
|
NOTE: Defined in `active_support/core_ext/range/overlaps.rb`.
|
3005
3005
|
|
3006
|
-
Extensions to `Proc`
|
3007
|
-
--------------------
|
3008
|
-
|
3009
|
-
### `bind`
|
3010
|
-
|
3011
|
-
As you surely know Ruby has an `UnboundMethod` class whose instances are methods that belong to the limbo of methods without a self. The method `Module#instance_method` returns an unbound method for example:
|
3012
|
-
|
3013
|
-
```ruby
|
3014
|
-
Hash.instance_method(:delete) # => #<UnboundMethod: Hash#delete>
|
3015
|
-
```
|
3016
|
-
|
3017
|
-
An unbound method is not callable as is, you need to bind it first to an object with `bind`:
|
3018
|
-
|
3019
|
-
```ruby
|
3020
|
-
clear = Hash.instance_method(:clear)
|
3021
|
-
clear.bind({a: 1}).call # => {}
|
3022
|
-
```
|
3023
|
-
|
3024
|
-
Active Support defines `Proc#bind` with an analogous purpose:
|
3025
|
-
|
3026
|
-
```ruby
|
3027
|
-
Proc.new { size }.bind([]).call # => 0
|
3028
|
-
```
|
3029
|
-
|
3030
|
-
As you see that's callable and bound to the argument, the return value is indeed a `Method`.
|
3031
|
-
|
3032
|
-
NOTE: To do so `Proc#bind` actually creates a method under the hood. If you ever see a method with a weird name like `__bind_1256598120_237302` in a stack trace you know now where it comes from.
|
3033
|
-
|
3034
|
-
Action Pack uses this trick in `rescue_from` for example, which accepts the name of a method and also a proc as callbacks for a given rescued exception. It has to call them in either case, so a bound method is returned by `handler_for_rescue`, thus simplifying the code in the caller:
|
3035
|
-
|
3036
|
-
```ruby
|
3037
|
-
def handler_for_rescue(exception)
|
3038
|
-
_, rescuer = Array(rescue_handlers).reverse.detect do |klass_name, handler|
|
3039
|
-
...
|
3040
|
-
end
|
3041
|
-
|
3042
|
-
case rescuer
|
3043
|
-
when Symbol
|
3044
|
-
method(rescuer)
|
3045
|
-
when Proc
|
3046
|
-
rescuer.bind(self)
|
3047
|
-
end
|
3048
|
-
end
|
3049
|
-
```
|
3050
|
-
|
3051
|
-
NOTE: Defined in `active_support/core_ext/proc.rb`.
|
3052
|
-
|
3053
3006
|
Extensions to `Date`
|
3054
3007
|
--------------------
|
3055
3008
|
|
@@ -208,7 +208,7 @@ information on how precompiling works.
|
|
208
208
|
NOTE: You must have an ExecJS supported runtime in order to use CoffeeScript.
|
209
209
|
If you are using Mac OS X or Windows, you have a JavaScript runtime installed in
|
210
210
|
your operating system. Check
|
211
|
-
[ExecJS](https://github.com/
|
211
|
+
[ExecJS](https://github.com/rails/execjs#readme) documentation to know all
|
212
212
|
supported JavaScript runtimes.
|
213
213
|
|
214
214
|
You can also disable generation of controller specific asset files by adding the
|
@@ -969,7 +969,7 @@ The following line invokes `uglifier` for JavaScript compression.
|
|
969
969
|
config.assets.js_compressor = :uglifier
|
970
970
|
```
|
971
971
|
|
972
|
-
NOTE: You will need an [ExecJS](https://github.com/
|
972
|
+
NOTE: You will need an [ExecJS](https://github.com/rails/execjs#readme)
|
973
973
|
supported runtime in order to use `uglifier`. If you are using Mac OS X or
|
974
974
|
Windows you have a JavaScript runtime installed in your operating system.
|
975
975
|
|
data/guides/source/engines.md
CHANGED
@@ -590,11 +590,11 @@ This is the final step required to get the new comment form working. Displaying
|
|
590
590
|
the comments, however, is not quite right yet. If you were to create a comment
|
591
591
|
right now, you would see this error:
|
592
592
|
|
593
|
-
```
|
593
|
+
```
|
594
594
|
Missing partial blorgh/comments/comment with {:handlers=>[:erb, :builder],
|
595
595
|
:formats=>[:html], :locale=>[:en, :en]}. Searched in: *
|
596
596
|
"/Users/ryan/Sites/side_projects/blorgh/test/dummy/app/views" *
|
597
|
-
"/Users/ryan/Sites/side_projects/blorgh/app/views"
|
597
|
+
"/Users/ryan/Sites/side_projects/blorgh/app/views"
|
598
598
|
```
|
599
599
|
|
600
600
|
The engine is unable to find the partial required for rendering the comments.
|
@@ -828,12 +828,12 @@ $ bin/rake blorgh:install:migrations
|
|
828
828
|
Notice that only _one_ migration was copied over here. This is because the first
|
829
829
|
two migrations were copied over the first time this command was run.
|
830
830
|
|
831
|
-
```
|
831
|
+
```
|
832
832
|
NOTE Migration [timestamp]_create_blorgh_posts.rb from blorgh has been
|
833
833
|
skipped. Migration with the same name already exists. NOTE Migration
|
834
834
|
[timestamp]_create_blorgh_comments.rb from blorgh has been skipped. Migration
|
835
835
|
with the same name already exists. Copied migration
|
836
|
-
[timestamp]_add_author_id_to_blorgh_posts.rb from blorgh
|
836
|
+
[timestamp]_add_author_id_to_blorgh_posts.rb from blorgh
|
837
837
|
```
|
838
838
|
|
839
839
|
Run the migration using:
|
@@ -1036,22 +1036,43 @@ functionality, especially controllers. This means that if you were to make a
|
|
1036
1036
|
typical `GET` to a controller in a controller's functional test like this:
|
1037
1037
|
|
1038
1038
|
```ruby
|
1039
|
-
|
1039
|
+
module Blorgh
|
1040
|
+
class FooControllerTest < ActionController::TestCase
|
1041
|
+
def test_index
|
1042
|
+
get :index
|
1043
|
+
...
|
1044
|
+
end
|
1045
|
+
end
|
1046
|
+
end
|
1040
1047
|
```
|
1041
1048
|
|
1042
1049
|
It may not function correctly. This is because the application doesn't know how
|
1043
1050
|
to route these requests to the engine unless you explicitly tell it **how**. To
|
1044
|
-
do this, you must
|
1045
|
-
|
1051
|
+
do this, you must set the `@routes` instance variable to the engine's route set
|
1052
|
+
in your setup code:
|
1046
1053
|
|
1047
1054
|
```ruby
|
1048
|
-
|
1055
|
+
module Blorgh
|
1056
|
+
class FooControllerTest < ActionController::TestCase
|
1057
|
+
setup do
|
1058
|
+
@routes = Engine.routes
|
1059
|
+
end
|
1060
|
+
|
1061
|
+
def test_index
|
1062
|
+
get :index
|
1063
|
+
...
|
1064
|
+
end
|
1065
|
+
end
|
1066
|
+
end
|
1049
1067
|
```
|
1050
1068
|
|
1051
1069
|
This tells the application that you still want to perform a `GET` request to the
|
1052
1070
|
`index` action of this controller, but you want to use the engine's route to get
|
1053
1071
|
there, rather than the application's one.
|
1054
1072
|
|
1073
|
+
This also ensures that the engine's URL helpers will work as expected in your
|
1074
|
+
tests.
|
1075
|
+
|
1055
1076
|
Improving engine functionality
|
1056
1077
|
------------------------------
|
1057
1078
|
|
@@ -199,7 +199,7 @@ gem to the generated `Gemfile` in a commented line for new apps and you can
|
|
199
199
|
uncomment if you need it. `therubyrhino` is the recommended runtime for JRuby
|
200
200
|
users and is added by default to the `Gemfile` in apps generated under JRuby.
|
201
201
|
You can investigate about all the supported runtimes at
|
202
|
-
[ExecJS](https://github.com/
|
202
|
+
[ExecJS](https://github.com/rails/execjs#readme).
|
203
203
|
|
204
204
|
This will fire up WEBrick, a web server distributed with Ruby by default. To see
|
205
205
|
your application in action, open a browser window and navigate to
|
data/guides/source/security.md
CHANGED
@@ -356,7 +356,7 @@ Refer to the Injection section for countermeasures against XSS. It is _recommend
|
|
356
356
|
|
357
357
|
**CSRF** Cross-Site Request Forgery (CSRF), also known as Cross-Site Reference Forgery (XSRF), is a gigantic attack method, it allows the attacker to do everything the administrator or Intranet user may do. As you have already seen above how CSRF works, here are a few examples of what attackers can do in the Intranet or admin interface.
|
358
358
|
|
359
|
-
A real-world example is a [router reconfiguration by CSRF](http://www.h-online.com/security/Symantec-reports-first-active-attack-on-a-DSL-router
|
359
|
+
A real-world example is a [router reconfiguration by CSRF](http://www.h-online.com/security/news/item/Symantec-reports-first-active-attack-on-a-DSL-router-735883.html). The attackers sent a malicious e-mail, with CSRF in it, to Mexican users. The e-mail claimed there was an e-card waiting for them, but it also contained an image tag that resulted in a HTTP-GET request to reconfigure the user's router (which is a popular model in Mexico). The request changed the DNS-settings so that requests to a Mexico-based banking site would be mapped to the attacker's site. Everyone who accessed the banking site through that router saw the attacker's fake web site and had their credentials stolen.
|
360
360
|
|
361
361
|
Another example changed Google Adsense's e-mail address and password by. If the victim was logged into Google Adsense, the administration interface for Google advertisements campaigns, an attacker could change their credentials.
|
362
362
|
|
data/guides/source/testing.md
CHANGED
@@ -277,7 +277,7 @@ included in the newly introduced `ActiveRecord::FixtureSet.context_class`, in
|
|
277
277
|
`test_helper.rb`.
|
278
278
|
|
279
279
|
```ruby
|
280
|
-
|
280
|
+
module FixtureFileHelpers
|
281
281
|
def file_sha(path)
|
282
282
|
Digest::SHA2.hexdigest(File.read(Rails.root.join('test/fixtures', path)))
|
283
283
|
end
|
@@ -541,7 +541,7 @@ file (in `config/application.rb`):
|
|
541
541
|
```ruby
|
542
542
|
# Require the gems listed in Gemfile, including any gems
|
543
543
|
# you've limited to :test, :development, or :production.
|
544
|
-
Bundler.require(
|
544
|
+
Bundler.require(*Rails.groups)
|
545
545
|
```
|
546
546
|
|
547
547
|
### vendor/plugins
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.1.
|
4
|
+
version: 4.1.15
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Heinemeier Hansson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-03-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -16,98 +16,98 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 4.1.
|
19
|
+
version: 4.1.15
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 4.1.
|
26
|
+
version: 4.1.15
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: actionpack
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 4.1.
|
33
|
+
version: 4.1.15
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 4.1.
|
40
|
+
version: 4.1.15
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: actionview
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - '='
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 4.1.
|
47
|
+
version: 4.1.15
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - '='
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 4.1.
|
54
|
+
version: 4.1.15
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: activemodel
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - '='
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 4.1.
|
61
|
+
version: 4.1.15
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - '='
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 4.1.
|
68
|
+
version: 4.1.15
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: activerecord
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - '='
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 4.1.
|
75
|
+
version: 4.1.15
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - '='
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 4.1.
|
82
|
+
version: 4.1.15
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: actionmailer
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - '='
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 4.1.
|
89
|
+
version: 4.1.15
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - '='
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 4.1.
|
96
|
+
version: 4.1.15
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: railties
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - '='
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 4.1.
|
103
|
+
version: 4.1.15
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - '='
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: 4.1.
|
110
|
+
version: 4.1.15
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: bundler
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -294,6 +294,8 @@ files:
|
|
294
294
|
- guides/bug_report_templates/action_controller_master.rb
|
295
295
|
- guides/bug_report_templates/active_record_gem.rb
|
296
296
|
- guides/bug_report_templates/active_record_master.rb
|
297
|
+
- guides/bug_report_templates/generic_gem.rb
|
298
|
+
- guides/bug_report_templates/generic_master.rb
|
297
299
|
- guides/code/getting_started/Gemfile
|
298
300
|
- guides/code/getting_started/Gemfile.lock
|
299
301
|
- guides/code/getting_started/README.rdoc
|
@@ -452,7 +454,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
452
454
|
version: 1.8.11
|
453
455
|
requirements: []
|
454
456
|
rubyforge_project:
|
455
|
-
rubygems_version: 2.
|
457
|
+
rubygems_version: 2.5.1
|
456
458
|
signing_key:
|
457
459
|
specification_version: 4
|
458
460
|
summary: Full-stack web application framework.
|