feedjira 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (89) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +14 -0
  3. data/.rspec +1 -0
  4. data/.travis.yml +8 -0
  5. data/CHANGELOG.md +162 -0
  6. data/Gemfile +17 -0
  7. data/Guardfile +5 -0
  8. data/README.md +242 -0
  9. data/Rakefile +6 -0
  10. data/benchmarks/README.md +90 -0
  11. data/benchmarks/basic.rb +31 -0
  12. data/benchmarks/feed_list.txt +10 -0
  13. data/benchmarks/feed_xml/apple.xml +149 -0
  14. data/benchmarks/feed_xml/cnn.xml +278 -0
  15. data/benchmarks/feed_xml/daring_fireball.xml +1697 -0
  16. data/benchmarks/feed_xml/engadget.xml +604 -0
  17. data/benchmarks/feed_xml/feedjira_commits.xml +370 -0
  18. data/benchmarks/feed_xml/gizmodo.xml +2 -0
  19. data/benchmarks/feed_xml/loop.xml +441 -0
  20. data/benchmarks/feed_xml/rails.xml +1938 -0
  21. data/benchmarks/feed_xml/white_house.xml +951 -0
  22. data/benchmarks/feed_xml/xkcd.xml +2 -0
  23. data/benchmarks/fetching_systems.rb +23 -0
  24. data/benchmarks/other_libraries.rb +73 -0
  25. data/feedjira.gemspec +27 -0
  26. data/lib/feedjira.rb +16 -0
  27. data/lib/feedjira/core_ext.rb +3 -0
  28. data/lib/feedjira/core_ext/date.rb +19 -0
  29. data/lib/feedjira/core_ext/string.rb +9 -0
  30. data/lib/feedjira/core_ext/time.rb +31 -0
  31. data/lib/feedjira/feed.rb +459 -0
  32. data/lib/feedjira/feed_entry_utilities.rb +66 -0
  33. data/lib/feedjira/feed_utilities.rb +103 -0
  34. data/lib/feedjira/parser.rb +20 -0
  35. data/lib/feedjira/parser/atom.rb +61 -0
  36. data/lib/feedjira/parser/atom_entry.rb +34 -0
  37. data/lib/feedjira/parser/atom_feed_burner.rb +22 -0
  38. data/lib/feedjira/parser/atom_feed_burner_entry.rb +35 -0
  39. data/lib/feedjira/parser/google_docs_atom.rb +28 -0
  40. data/lib/feedjira/parser/google_docs_atom_entry.rb +29 -0
  41. data/lib/feedjira/parser/itunes_rss.rb +50 -0
  42. data/lib/feedjira/parser/itunes_rss_item.rb +41 -0
  43. data/lib/feedjira/parser/itunes_rss_owner.rb +12 -0
  44. data/lib/feedjira/parser/rss.rb +24 -0
  45. data/lib/feedjira/parser/rss_entry.rb +37 -0
  46. data/lib/feedjira/parser/rss_feed_burner.rb +23 -0
  47. data/lib/feedjira/parser/rss_feed_burner_entry.rb +43 -0
  48. data/lib/feedjira/version.rb +3 -0
  49. data/spec/feedjira/feed_entry_utilities_spec.rb +62 -0
  50. data/spec/feedjira/feed_spec.rb +762 -0
  51. data/spec/feedjira/feed_utilities_spec.rb +273 -0
  52. data/spec/feedjira/parser/atom_entry_spec.rb +86 -0
  53. data/spec/feedjira/parser/atom_feed_burner_entry_spec.rb +47 -0
  54. data/spec/feedjira/parser/atom_feed_burner_spec.rb +56 -0
  55. data/spec/feedjira/parser/atom_spec.rb +76 -0
  56. data/spec/feedjira/parser/google_docs_atom_entry_spec.rb +22 -0
  57. data/spec/feedjira/parser/google_docs_atom_spec.rb +31 -0
  58. data/spec/feedjira/parser/itunes_rss_item_spec.rb +63 -0
  59. data/spec/feedjira/parser/itunes_rss_owner_spec.rb +18 -0
  60. data/spec/feedjira/parser/itunes_rss_spec.rb +58 -0
  61. data/spec/feedjira/parser/rss_entry_spec.rb +85 -0
  62. data/spec/feedjira/parser/rss_feed_burner_entry_spec.rb +85 -0
  63. data/spec/feedjira/parser/rss_feed_burner_spec.rb +57 -0
  64. data/spec/feedjira/parser/rss_spec.rb +57 -0
  65. data/spec/sample_feeds/AmazonWebServicesBlog.xml +797 -0
  66. data/spec/sample_feeds/AmazonWebServicesBlogFirstEntryContent.xml +63 -0
  67. data/spec/sample_feeds/AtomFeedWithSpacesAroundEquals.xml +61 -0
  68. data/spec/sample_feeds/FeedBurnerUrlNoAlternate.xml +28 -0
  69. data/spec/sample_feeds/GoogleDocsList.xml +188 -0
  70. data/spec/sample_feeds/HREFConsideredHarmful.xml +314 -0
  71. data/spec/sample_feeds/HREFConsideredHarmfulFirstEntry.xml +22 -0
  72. data/spec/sample_feeds/ITunesWithSpacesInAttributes.xml +63 -0
  73. data/spec/sample_feeds/PaulDixExplainsNothing.xml +175 -0
  74. data/spec/sample_feeds/PaulDixExplainsNothingAlternate.xml +175 -0
  75. data/spec/sample_feeds/PaulDixExplainsNothingFirstEntryContent.xml +19 -0
  76. data/spec/sample_feeds/PaulDixExplainsNothingWFW.xml +174 -0
  77. data/spec/sample_feeds/SamRuby.xml +583 -0
  78. data/spec/sample_feeds/TechCrunch.xml +1515 -0
  79. data/spec/sample_feeds/TechCrunchFirstEntry.xml +9 -0
  80. data/spec/sample_feeds/TechCrunchFirstEntryDescription.xml +3 -0
  81. data/spec/sample_feeds/TenderLovemaking.xml +516 -0
  82. data/spec/sample_feeds/TenderLovemakingFirstEntry.xml +66 -0
  83. data/spec/sample_feeds/TrotterCashionHome.xml +611 -0
  84. data/spec/sample_feeds/TypePadNews.xml +368 -0
  85. data/spec/sample_feeds/atom_with_link_tag_for_url_unmarked.xml +31 -0
  86. data/spec/sample_feeds/itunes.xml +67 -0
  87. data/spec/sample_feeds/pet_atom.xml +497 -0
  88. data/spec/spec_helper.rb +88 -0
  89. metadata +229 -0
@@ -0,0 +1,1938 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <feed xmlns="http://www.w3.org/2005/Atom">
3
+ <title type="text" xml:lang="en">Riding Rails</title>
4
+ <link type="application/atom+xml" href="http://weblog.rubyonrails.org/feed/" rel="self" />
5
+ <link type="text" href="http://weblog.rubyonrails.org/" rel="alternate" />
6
+ <updated>2013-11-01T13:11:58-07:00</updated>
7
+ <id>http://weblog.rubyonrails.org/</id>
8
+
9
+ <entry>
10
+ <title>[ANN] Rails 4.0.1 has been released!</title>
11
+ <author>
12
+ <name>rafaelfranca</name>
13
+ </author>
14
+ <link href="http://weblog.rubyonrails.org/2013/11/1/Rails-4-0-1-has-been-released/"/>
15
+ <updated>2013-11-01T00:00:00-07:00</updated>
16
+ <id>http://weblog.rubyonrails.org/2013/11/1/Rails-4-0-1-has-been-released/</id>
17
+ <content type="html"><![CDATA[<p>Hi everyone,</p>
18
+
19
+ <p>I am happy to announce that Rails 4.0.1 has been released. This is a bug fix release and
20
+ includes more than 460 commits.</p>
21
+
22
+ <p>This release comes up with an important change on how Active Record handles subsequent <code>order</code> calls.
23
+ In Rails 4.0.0 when you do something like this:</p>
24
+ <div class="highlight"><pre><code class="ruby language-ruby" data-lang="ruby"><span class="no">User</span><span class="o">.</span><span class="n">order</span><span class="p">(</span><span class="s2">&quot;name asc&quot;</span><span class="p">)</span><span class="o">.</span><span class="n">order</span><span class="p">(</span><span class="s2">&quot;created_at desc&quot;</span><span class="p">)</span>
25
+ </code></pre></div>
26
+ <p>The latter called <code>order</code> will be prepended in the ORDER BY clause resulting on this SQL:</p>
27
+ <div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="k">SELECT</span> <span class="o">*</span> <span class="k">FROM</span> <span class="n">users</span> <span class="k">ORDER</span> <span class="k">BY</span> <span class="n">created_at</span> <span class="k">desc</span><span class="p">,</span> <span class="n">name</span> <span class="k">asc</span>
28
+ </code></pre></div>
29
+ <p>In Rails 4.0.1 the behavior of Rails 3 has been restored and the generated ORDER BY clause
30
+ looks like this:</p>
31
+ <div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="k">SELECT</span> <span class="o">*</span> <span class="k">FROM</span> <span class="n">users</span> <span class="k">ORDER</span> <span class="k">BY</span> <span class="n">name</span> <span class="k">asc</span><span class="p">,</span> <span class="n">created_at</span> <span class="k">desc</span>
32
+ </code></pre></div>
33
+ <p>We chose to revert the behavior because it added a major backward incompatibility that made
34
+ harder to have an upgrade path without major changes in the application code. Also we consider
35
+ the older behavior a bug since it behaves differently from all the others scope methods when they
36
+ are chained. So we took the most conservative path of reverting it to be consistent with the idea
37
+ of having a smoother upgrade path to Rails 4.</p>
38
+
39
+ <p>For those who want the old behavior you can use <a href="http://api.rubyonrails.org/classes/ActiveRecord/QueryMethods.html#method-i-reorder"><code>.reorder</code></a>
40
+ or <a href="http://api.rubyonrails.org/classes/ActiveRecord/QueryMethods.html#method-i-unscope"><code>.unscope</code></a>
41
+ to remove the ORDER BY clause and generate another one.</p>
42
+
43
+ <p>Also, this release adds some performance improvements to make Rails 4 even faster.</p>
44
+
45
+ <h2>CHANGES since 4.0.0</h2>
46
+
47
+ <p>To view the changes for each gem, please read the changelogs on GitHub:</p>
48
+
49
+ <ul>
50
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1/actionmailer/CHANGELOG.md">Action Mailer CHANGELOG</a></li>
51
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1/actionpack/CHANGELOG.md">Action Pack CHANGELOG</a></li>
52
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1/activemodel/CHANGELOG.md">Active Model CHANGELOG</a></li>
53
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1/activerecord/CHANGELOG.md">Active Record CHANGELOG</a></li>
54
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1/activesupport/CHANGELOG.md">Active Support CHANGELOG</a></li>
55
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1/railties/CHANGELOG.md">Railties CHANGELOG</a></li>
56
+ </ul>
57
+
58
+ <p><em>Full listing</em></p>
59
+
60
+ <p>To see the full list of changes, <a href="https://github.com/rails/rails/compare/v4.0.0...v4.0.1">check out all the commits on
61
+ GitHub</a>.</p>
62
+
63
+ <h2>SHA-1</h2>
64
+
65
+ <p>If you&#39;d like to verify that your gem is the same as the one I&#39;ve uploaded,
66
+ please use these SHA-1 hashes:</p>
67
+
68
+ <ul>
69
+ <li>6f2e4d74b34904b61a47187dd879dca3b26fc2d8 actionmailer-4.0.1.gem</li>
70
+ <li>063f16cfcf62f766a893fe09e35241bdae7cd70e actionpack-4.0.1.gem</li>
71
+ <li>b50a071bd924fb27e4c41bb40c9cb483457bc21c activemodel-4.0.1.gem</li>
72
+ <li>1a8b173da2d8e2ae27edfeb99164c2574a1d7ddd activerecord-4.0.1.gem</li>
73
+ <li>9a58bc3c086628ef8028716eeb7c0cb0f8c7e39a activesupport-4.0.1.gem</li>
74
+ <li>4663f4d0607ff59cf0ae5a55b268d27d658fdcc8 rails-4.0.1.gem</li>
75
+ <li>22e23959dc14101697eb2bb8acc00a81cc6c3884 railties-4.0.1.gem</li>
76
+ </ul>
77
+
78
+ <p>I&#39;d like to thank you all, every contributor who helped with this release.</p>
79
+ ]]></content>
80
+ </entry>
81
+
82
+ <entry>
83
+ <title>[ANN] Rails 4.0.1.rc1 has been released!</title>
84
+ <author>
85
+ <name>rafaelfranca</name>
86
+ </author>
87
+ <link href="http://weblog.rubyonrails.org/2013/10/17/Rails-4-0-1-rc1-has-been-released/"/>
88
+ <updated>2013-10-17T00:00:00-07:00</updated>
89
+ <id>http://weblog.rubyonrails.org/2013/10/17/Rails-4-0-1-rc1-has-been-released/</id>
90
+ <content type="html"><![CDATA[<p>Hi everyone,</p>
91
+
92
+ <p>I am happy to announce that Rails 4.0.1.rc1 has been released. This is a bug fix release and
93
+ includes more than 450 commits.</p>
94
+
95
+ <p>This release comes up with an important change on how Active Record handles subsequent <code>order</code> calls.
96
+ In Rails 4.0.0 when you do something like this:</p>
97
+ <div class="highlight"><pre><code class="ruby language-ruby" data-lang="ruby"><span class="no">User</span><span class="o">.</span><span class="n">order</span><span class="p">(</span><span class="s2">&quot;name asc&quot;</span><span class="p">)</span><span class="o">.</span><span class="n">order</span><span class="p">(</span><span class="s2">&quot;created_at desc&quot;</span><span class="p">)</span>
98
+ </code></pre></div>
99
+ <p>The later called <code>order</code> will be prepended in the ORDER BY clause resulting on this SQL:</p>
100
+ <div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="k">SELECT</span> <span class="o">*</span> <span class="k">FROM</span> <span class="n">users</span> <span class="k">ORDER</span> <span class="k">BY</span> <span class="n">created_at</span> <span class="k">desc</span><span class="p">,</span> <span class="n">name</span> <span class="k">asc</span>
101
+ </code></pre></div>
102
+ <p>In Rails 4.0.1 the behavior of Rails 3 has been restored and the generated ORDER BY clause
103
+ looks like this:</p>
104
+ <div class="highlight"><pre><code class="sql language-sql" data-lang="sql"><span class="k">SELECT</span> <span class="o">*</span> <span class="k">FROM</span> <span class="n">users</span> <span class="k">ORDER</span> <span class="k">BY</span> <span class="n">name</span> <span class="k">asc</span><span class="p">,</span> <span class="n">created_at</span> <span class="k">desc</span>
105
+ </code></pre></div>
106
+ <p>We chose to revert the behavior because it added a major backward incompatibility that made
107
+ harder to have an upgrade path without major changes in the application code. So we took the most
108
+ conservative path of reverting it to be consistent with the idea of having a smoother upgrade path
109
+ to Rails 4.</p>
110
+
111
+ <p>Also, this release adds some performance improvements to make Rails 4 even faster.</p>
112
+
113
+ <p>If no regressions are found we will release 4.0.1 final this Tuesday, on October 22, 2013.
114
+ If you find one, please open an Issue on GitHub and mention me (@rafaelfranca) on it,
115
+ so that we can fix it before the final release.</p>
116
+
117
+ <h2>CHANGES since 4.0.0</h2>
118
+
119
+ <p>To view the changes for each gem, please read the changelogs on GitHub:</p>
120
+
121
+ <ul>
122
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1.rc1/actionmailer/CHANGELOG.md">Action Mailer CHANGELOG</a></li>
123
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1.rc1/actionpack/CHANGELOG.md">Action Pack CHANGELOG</a></li>
124
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1.rc1/activemodel/CHANGELOG.md">Active Model CHANGELOG</a></li>
125
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1.rc1/activerecord/CHANGELOG.md">Active Record CHANGELOG</a></li>
126
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1.rc1/activesupport/CHANGELOG.md">Active Support CHANGELOG</a></li>
127
+ <li><a href="https://github.com/rails/rails/blob/v4.0.1.rc1/railties/CHANGELOG.md">Railties CHANGELOG</a></li>
128
+ </ul>
129
+
130
+ <p><em>Full listing</em></p>
131
+
132
+ <p>To see the full list of changes, <a href="https://github.com/rails/rails/compare/v4.0.0...v4.0.1.rc1">check out all the commits on
133
+ GitHub</a>.</p>
134
+
135
+ <h2>SHA-1</h2>
136
+
137
+ <p>If you&#39;d like to verify that your gem is the same as the one I&#39;ve uploaded,
138
+ please use these SHA-1 hashes:</p>
139
+
140
+ <ul>
141
+ <li>482e0c05fb25ae9a8d261f301054fc182e7b4447 actionmailer-4.0.1.rc1.gem</li>
142
+ <li>4da9135cfc94be9fa2f25697247bacc5dad5a7ae actionpack-4.0.1.rc1.gem</li>
143
+ <li>205ac4e9fa0be619f636d2947005796be6b8ad9a activemodel-4.0.1.rc1.gem</li>
144
+ <li>e2f1268614c91b9d9d4ca3dfecf2db5c59c10141 activerecord-4.0.1.rc1.gem</li>
145
+ <li>349fc20340fde7d36a755a2e739187659b082648 activesupport-4.0.1.rc1.gem</li>
146
+ <li>43b6b57d3c5eaeb2ac0bdea17e9c68a301293930 rails-4.0.1.rc1.gem</li>
147
+ <li>f17137d25df9f10d6c1a3d31563c70cc82ad1525 railties-4.0.1.rc1.gem</li>
148
+ </ul>
149
+
150
+ <p>I&#39;d like to thank you all, every contributor who helped with this release.</p>
151
+ ]]></content>
152
+ </entry>
153
+
154
+ <entry>
155
+ <title>[ANN] Rails 3.2.15 has been released!</title>
156
+ <author>
157
+ <name>tenderlove</name>
158
+ </author>
159
+ <link href="http://weblog.rubyonrails.org/2013/10/16/Rails-3-2-15-has-been-released/"/>
160
+ <updated>2013-10-16T00:00:00-07:00</updated>
161
+ <id>http://weblog.rubyonrails.org/2013/10/16/Rails-3-2-15-has-been-released/</id>
162
+ <content type="html"><![CDATA[<p>Hi everyone,</p>
163
+
164
+ <p>I am happy to announce that Rails 3.2.15 has been released. This is a bug fix
165
+ release and includes 56 commits.</p>
166
+
167
+ <p>This release also contains one security fix that you can read about <a href="https://groups.google.com/forum/#!topic/ruby-security-ann/yvlR1Vx44c8">here</a>. Users are encouraged to upgrade as soon as possible.</p>
168
+
169
+ <h2>CHANGES since 3.2.14</h2>
170
+
171
+ <p>To view the changes for each gem, please read the changelogs on GitHub:</p>
172
+
173
+ <ul>
174
+ <li><a href="https://github.com/rails/rails/blob/v3.2.15/actionmailer/CHANGELOG.md">Action Mailer CHANGELOG</a></li>
175
+ <li><a href="https://github.com/rails/rails/blob/v3.2.15/actionpack/CHANGELOG.md">Action Pack CHANGELOG</a></li>
176
+ <li><a href="https://github.com/rails/rails/blob/v3.2.15/activemodel/CHANGELOG.md">Active Model CHANGELOG</a></li>
177
+ <li><a href="https://github.com/rails/rails/blob/v3.2.15/activerecord/CHANGELOG.md">Active Record CHANGELOG</a></li>
178
+ <li><a href="https://github.com/rails/rails/blob/v3.2.15/activeresource/CHANGELOG.md">Active Resource CHANGELOG</a></li>
179
+ <li><a href="https://github.com/rails/rails/blob/v3.2.15/activesupport/CHANGELOG.md">Active Support CHANGELOG</a></li>
180
+ <li><a href="https://github.com/rails/rails/blob/v3.2.15/railties/CHANGELOG.md">Railties CHANGELOG</a></li>
181
+ </ul>
182
+
183
+ <p><em>Full listing</em></p>
184
+
185
+ <p>To see the full list of changes, <a href="https://github.com/rails/rails/compare/v3.2.14...v3.2.15">check out all the commits on
186
+ GitHub</a>.</p>
187
+
188
+ <h2>SHA-1</h2>
189
+
190
+ <p>If you&#39;d like to verify that your gem is the same as the one I&#39;ve uploaded,
191
+ please use these SHA-1 hashes:</p>
192
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">$ shasum *
193
+ 3c9bf15a9b2ea5c4c3280638776f84783adefe6d actionmailer-3.2.15.gem
194
+ 34cc3d5cbcee97a4e57ee9d909f51f0f387991bb actionpack-3.2.15.gem
195
+ b1c631dd75fffee2f34407aaf01405aef6c63a43 activemodel-3.2.15.gem
196
+ 7c86074b47c3864943b719d5b969264e2ace722c activerecord-3.2.15.gem
197
+ a95f88e30d1af9c377f01725282d0e581bd9f88f activeresource-3.2.15.gem
198
+ 08b57d2bf95fd16eb9bf1de144f7f0461894ee68 activesupport-3.2.15.gem
199
+ da220b9b6f37871d7f32f4c66fe33d42acc92a5a rails-3.2.15.gem
200
+ 66e189a5331dabc675459001d57e0fd906f3a888 railties-3.2.15.gem
201
+ </code></pre></div>
202
+ <p>I&#39;d like to thank you all, every contributor who helped with this release,
203
+ especially everyone who tried the release candidates.</p>
204
+ ]]></content>
205
+ </entry>
206
+
207
+ <entry>
208
+ <title>[ANN] Rails 3.2.14 has been released!</title>
209
+ <author>
210
+ <name>rafaelfranca</name>
211
+ </author>
212
+ <link href="http://weblog.rubyonrails.org/2013/7/23/Rails-3-2-14-has-been-released/"/>
213
+ <updated>2013-07-23T00:00:00-07:00</updated>
214
+ <id>http://weblog.rubyonrails.org/2013/7/23/Rails-3-2-14-has-been-released/</id>
215
+ <content type="html"><![CDATA[<p>Hi everyone,</p>
216
+
217
+ <p>I am happy to announce that Rails 3.2.14 has been released. This is a bug fix release and
218
+ includes more than 150 commits.</p>
219
+
220
+ <p>I also want to announce that the next 3.2.x release, 3.2.15, will be the <strong>last bug fix release
221
+ of this family</strong>. After it we will only release security fixes. So, if you have issues on 3.2.x
222
+ that you think should be included on 3.2.15, let us know thought the
223
+ <a href="https://github.com/rails/rails/issues">GitHub issues page</a> and in 3 months we&#39;ll evaluate if it
224
+ is time to release.</p>
225
+
226
+ <h2>CHANGES since 3.2.13</h2>
227
+
228
+ <p><em>Action Mailer</em></p>
229
+
230
+ <p>No changes.</p>
231
+
232
+ <p><em>Action Pack</em></p>
233
+
234
+ <ul>
235
+ <li><p>Merge <code>:action</code> from routing scope and assign endpoint if both <code>:controller</code>
236
+ and <code>:action</code> are present. The endpoint assignment only occurs if there is
237
+ no <code>:to</code> present in the options hash so should only affect routes using the
238
+ shorthand syntax (i.e. endpoint is inferred from the the path).</p>
239
+
240
+ <p>Fixes #9856</p>
241
+
242
+ <p><em>Yves Senn</em>, <em>Andrew White</em></p></li>
243
+ <li><p>Always escape the result of <code>link_to_unless</code> method.</p>
244
+
245
+ <p>Before:</p>
246
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">link_to_unless(true, &#39;&lt;b&gt;Showing&lt;/b&gt;&#39;, &#39;github.com&#39;)
247
+ # =&gt; &quot;&lt;b&gt;Showing&lt;/b&gt;&quot;
248
+ </code></pre></div>
249
+ <p>After:</p>
250
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">link_to_unless(true, &#39;&lt;b&gt;Showing&lt;/b&gt;&#39;, &#39;github.com&#39;)
251
+ # =&gt; &quot;&amp;lt;b&amp;gt;Showing&amp;lt;/b&amp;gt;&quot;
252
+ </code></pre></div>
253
+ <p><em>dtaniwaki</em></p></li>
254
+ <li><p>Use a case insensitive URI Regexp for #asset_path.</p>
255
+
256
+ <p>This fix a problem where the same asset path using different case are generating
257
+ different URIs.</p>
258
+
259
+ <p>Before:</p>
260
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">image_tag(&quot;HTTP://google.com&quot;)
261
+ # =&gt; &quot;&lt;img alt=\&quot;Google\&quot; src=\&quot;/assets/HTTP://google.com\&quot; /&gt;&quot;
262
+ image_tag(&quot;http://google.com&quot;)
263
+ # =&gt; &quot;&lt;img alt=\&quot;Google\&quot; src=\&quot;http://google.com\&quot; /&gt;&quot;
264
+ </code></pre></div>
265
+ <p>After:</p>
266
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">image_tag(&quot;HTTP://google.com&quot;)
267
+ # =&gt; &quot;&lt;img alt=\&quot;Google\&quot; src=\&quot;HTTP://google.com\&quot; /&gt;&quot;
268
+ image_tag(&quot;http://google.com&quot;)
269
+ # =&gt; &quot;&lt;img alt=\&quot;Google\&quot; src=\&quot;http://google.com\&quot; /&gt;&quot;
270
+ </code></pre></div>
271
+ <p><em>David Celis + Rafael Mendonça França</em></p></li>
272
+ <li><p>Fix explicit names on multiple file fields. If a file field tag has
273
+ the multiple option, it is turned into an array field (appending <code>[]</code>),
274
+ but if an explicit name is passed to <code>file_field</code> the <code>[]</code> is not
275
+ appended.
276
+ Fixes #9830.</p>
277
+
278
+ <p><em>Ryan McGeary</em></p></li>
279
+ <li><p>Fix assets loading performance in 3.2.13.</p>
280
+
281
+ <p>Issue #8756 uses Sprockets for resolving files that already exist on disk,
282
+ for those files their extensions don&#39;t need to be rewritten.</p>
283
+
284
+ <p>Fixes #9803.</p>
285
+
286
+ <p><em>Fred Wu</em></p></li>
287
+ <li><p>Fix <code>ActionController#action_missing</code> not being called.
288
+ Fixes #9799.</p>
289
+
290
+ <p><em>Janko Luin</em></p></li>
291
+ <li><p><code>ActionView::Helpers::NumberHelper#number_to_human</code> returns the number unaltered when
292
+ the units hash does not contain the needed key, e.g. when the number provided is less
293
+ than the largest key provided.</p>
294
+
295
+ <p>Examples:</p>
296
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">number_to_human(123, units: {}) # =&gt; 123
297
+ number_to_human(123, units: { thousand: &#39;k&#39; }) # =&gt; 123
298
+ </code></pre></div>
299
+ <p>Fixes #9269.
300
+ Backport #9347.</p>
301
+
302
+ <p><em>Michael Hoffman</em></p></li>
303
+ <li><p>Include I18n locale fallbacks in view lookup.
304
+ Fixes GH#3512.</p>
305
+
306
+ <p><em>Juan Barreneche</em></p></li>
307
+ <li><p>Fix <code>ActionDispatch::Request#formats</code> when the Accept request-header is an
308
+ empty string. Fix #7774 [Backport #8977, #9541]</p>
309
+
310
+ <p><em>Soylent + Maxime Réty</em></p></li>
311
+ </ul>
312
+
313
+ <p><em>Active Model</em></p>
314
+
315
+ <p>No changes.</p>
316
+
317
+ <p><em>Active Record</em></p>
318
+
319
+ <ul>
320
+ <li><p>Do not re-create destroyed association when saving the parent object.</p>
321
+
322
+ <p>Fixes #11450.</p>
323
+
324
+ <p><em>Paul Nikitochkin</em></p></li>
325
+ <li><p>Do not shallow the original exception in <code>exec_cache</code> on PostgreSQL adapter.</p>
326
+
327
+ <p>Fixes #11260.</p>
328
+
329
+ <p><em>Rafael Mendonça França</em></p></li>
330
+ <li><p>Fix <code>ActiveRecord::Store</code> incorrectly tracking changes of its attributes.
331
+ Fixes #10373.</p>
332
+
333
+ <p><em>Janko Marohnić</em></p></li>
334
+ <li><p>Fix a bug that prevented the use of the default STI inheritance column
335
+ (ActiveRecord::Base.inheritance<em>column = &#39;some</em>column&#39;.)</p>
336
+
337
+ <p><em>chapmajs + Takehiro Adachi</em></p></li>
338
+ <li><p>Fix mysql2 adapter raises the correct exception when executing a query on a
339
+ closed connection.</p>
340
+
341
+ <p><em>Yves Senn</em></p></li>
342
+ <li><p>Fixes bug where <code>Company.new.contract_ids</code> would incorrectly load
343
+ all non-associated contracts.</p>
344
+
345
+ <p>Example:</p>
346
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">company = Company.new # Company has many :contracts
347
+
348
+ # before
349
+ company.contract_ids # =&gt; SELECT ... WHERE `contracts`.`company_id` IS NULL
350
+
351
+ # after
352
+ company.contract_ids # =&gt; []
353
+ </code></pre></div>
354
+ <p><em>Jared Armstrong</em></p></li>
355
+ <li><p>Fix the <code>:primary_key</code> option for <code>has_many</code> associations.
356
+ Fixes #10693.</p>
357
+
358
+ <p><em>Yves Senn</em></p></li>
359
+ <li><p>fixes bug introduced by #3329. Now, when autosaving associations,
360
+ deletions happen before inserts and saves. This prevents a &#39;duplicate
361
+ unique value&#39; database error that would occur if a record being created had
362
+ the same value on a unique indexed field as that of a record being destroyed.</p>
363
+
364
+ <p>Backport of #10417</p>
365
+
366
+ <p><em>Johnny Holton</em></p></li>
367
+ <li><p>Fix that under some conditions, Active Record could produce invalid SQL of the sort:
368
+ &quot;SELECT DISTINCT DISTINCT&quot;.</p>
369
+
370
+ <p>Backport of #6792.</p>
371
+
372
+ <p><em>Ben Woosley</em></p></li>
373
+ <li><p>Require <code>ActiveRecord::Base</code> in railtie hooks for rake_tasks, console and runner to
374
+ avoid circular constant loading issues.</p>
375
+
376
+ <p>Backport #7695.</p>
377
+
378
+ <p>Fixes #7683 and #882</p>
379
+
380
+ <p><em>Ben Holley</em></p></li>
381
+ <li><p>Maintain context for joins within ActiveRecord::Relation merges.
382
+ Backport #10164.</p>
383
+
384
+ <p><em>Neeraj Singh + Andrew Horner</em></p></li>
385
+ <li><p>Make sure the <code>EXPLAIN</code> command is never triggered by a <code>select_db</code> call.</p>
386
+
387
+ <p><em>Daniel Schierbeck</em></p></li>
388
+ <li><p>Revert changes on <code>pluck</code> that was ignoring the select clause when the relation already
389
+ has one. This caused a regression since it changed the behavior in a stable release.</p>
390
+
391
+ <p>Fixes #9777.</p>
392
+
393
+ <p><em>Rafael Mendonça França</em></p></li>
394
+ <li><p>Confirm a record has not already been destroyed before decrementing counter cache.</p>
395
+
396
+ <p><em>Ben Tucker</em></p></li>
397
+ <li><p>Default values for PostgreSQL bigint types now get parsed and dumped to the
398
+ schema correctly.
399
+ Backport #10098.</p>
400
+
401
+ <p><em>Erik Peterson</em></p></li>
402
+ <li><p>Removed warning when <code>auto_explain_threshold_in_seconds</code> is set and the
403
+ connection adapter doesn&#39;t support explain.
404
+ This is causing a regression since the Active Record Railtie is trying to
405
+ connect to the development database in the application boot.</p>
406
+
407
+ <p><em>Rafael Mendonça França</em></p></li>
408
+ <li><p>Do not reset <code>inheritance_column</code> when it&#39;s set explicitly.
409
+ Backport of #5327.</p>
410
+
411
+ <p><em>kennyj + Fred Wu</em></p></li>
412
+ <li><p>Fix a problem wrong exception is occured
413
+ when raising no translatable exception in PostgreSQL.</p>
414
+
415
+ <p><em>kennyj</em></p></li>
416
+ <li><p>Resets the postgres search path in the structure.sql after the structure
417
+ is dumped in order to find schema_migrations table when multiples schemas
418
+ are used.
419
+ Fixes #9796.</p>
420
+
421
+ <p><em>Juan M. Cuello + Dembskiy Alexander</em></p></li>
422
+ <li><p>Reload the association target if it&#39;s stale. <code>@stale_state</code> should be nil
423
+ when a model isn&#39;t saved.
424
+ Fixes #7526.</p>
425
+
426
+ <p><em>Larry Lv</em></p></li>
427
+ <li><p>Don&#39;t read CSV files during execution of <code>db:fixtures:load</code>. CSV support for
428
+ fixtures was removed some time ago but the task was still loading them, even
429
+ though later the code was looking for the related yaml file instead.</p>
430
+
431
+ <p><em>kennyj</em></p></li>
432
+ </ul>
433
+
434
+ <p><em>Active Resource</em></p>
435
+
436
+ <ul>
437
+ <li><p>Fixes an issue that ActiveResource models ignores ActiveResource::Base.include<em>root</em>in_json.
438
+ Backported from the now separate repo rails/activeresouce.</p>
439
+
440
+ <p><em>Xinjiang Lu</em></p></li>
441
+ </ul>
442
+
443
+ <p><em>Active Support</em></p>
444
+
445
+ <ul>
446
+ <li><p>Make <code>Time.at_with_coercion</code> retain the second fraction and return local time.</p>
447
+
448
+ <p>Fixes #11350</p>
449
+
450
+ <p><em>Neer Friedman</em>, <em>Andrew White</em></p></li>
451
+ <li><p>Fix <code>ActiveSupport::TaggedLogging</code> incorrectly providing program name the same as log message
452
+ even when block is not provided.</p>
453
+
454
+ <p><em>Carson Reinke</em></p></li>
455
+ <li><p>Override <code>Time.at</code> to support the passing of Time-like values when called with a single argument.</p>
456
+
457
+ <p><em>Andrew White</em></p></li>
458
+ <li><p>Revert the changes on unicode character encoding from <code>ActiveSupport::JSON.encode</code>.
459
+ This was causing a regression where the resulting string is always returning UTF-8.
460
+ Also it changes the behavior of this method on a stable release.
461
+ Fixes #9498.</p>
462
+
463
+ <p><em>Rafael Mendonça França</em></p></li>
464
+ <li><p>Fix <code>ActiveSupport::TimeZone.parse</code> when time is at a local DST jump.
465
+ Fixes #9678.</p>
466
+
467
+ <p><em>Andrew White</em></p></li>
468
+ </ul>
469
+
470
+ <p><em>Railties</em></p>
471
+
472
+ <ul>
473
+ <li><p>Fix bugs that crashed <code>rake test:benchmark</code>, <code>rails profiler</code> and
474
+ <code>rails benchmarker</code>.
475
+ Fixes #4938.
476
+ Backport rails/rails-perftest#2.</p>
477
+
478
+ <p><em>Dmitry Vorotilin + Yves Senn</em></p></li>
479
+ <li><p>Add support for runner hook.</p>
480
+
481
+ <p>Backport #7695.</p>
482
+
483
+ <p><em>Ben Holley</em></p></li>
484
+ <li><p>Fixes bug with scaffold generator with <code>--assets=false --resource-route=false</code>.
485
+ Fixes #9525.</p>
486
+
487
+ <p><em>Arun Agrawal</em></p></li>
488
+ </ul>
489
+
490
+ <p><em>Full listing</em></p>
491
+
492
+ <p>To see the full list of changes, <a href="https://github.com/rails/rails/compare/v3.2.13...v3.2.14">check out all the commits on
493
+ GitHub</a>.</p>
494
+
495
+ <h2>SHA-1</h2>
496
+
497
+ <p>If you&#39;d like to verify that your gem is the same as the one I&#39;ve uploaded,
498
+ please use these SHA-1 hashes:</p>
499
+
500
+ <ul>
501
+ <li>dd2333744644870efcd149e3adf3c3b6934ec6ed actionmailer-3.2.14.gem</li>
502
+ <li>efcfc238115f7db57650dbab348d0b5192f98770 actionpack-3.2.14.gem</li>
503
+ <li>d72fadd29e10e2ead9fb0d7371bed5a7fb32c044 activemodel-3.2.14.gem</li>
504
+ <li>af7585f9a58d5e643d6e332daede4a0b8ee1de7a activerecord-3.2.14.gem</li>
505
+ <li>188924273139cea07032254987d748aee45f5800 activeresource-3.2.14.gem</li>
506
+ <li>e221938399c9cb040ef9285f52b18bfa3e59b10a activesupport-3.2.14.gem</li>
507
+ <li>a5d44cf4c65798e925d998f416804cd23c914001 rails-3.2.14.gem</li>
508
+ <li>4e99050427fb47ff515051e78eedf328c9ec5676 railties-3.2.14.gem</li>
509
+ </ul>
510
+
511
+ <p>I&#39;d like to thank you all, every contributor who helped with this release,
512
+ especially everyone who tried the release candidates.</p>
513
+ ]]></content>
514
+ </entry>
515
+
516
+ <entry>
517
+ <title>[ANN] Rails 3.2.14.rc2 has been released!</title>
518
+ <author>
519
+ <name>rafaelfranca</name>
520
+ </author>
521
+ <link href="http://weblog.rubyonrails.org/2013/7/16/Rails-3-2-14-rc2-has-been-released/"/>
522
+ <updated>2013-07-16T00:00:00-07:00</updated>
523
+ <id>http://weblog.rubyonrails.org/2013/7/16/Rails-3-2-14-rc2-has-been-released/</id>
524
+ <content type="html"><![CDATA[<p>Hi everyone,</p>
525
+
526
+ <p>One regression was found on the 3.2.14.rc1 release. So, following the script
527
+ We are releasing a new release candidate, Rails 3.2.14.rc2.</p>
528
+
529
+ <p>If no regressions are found we will release 3.2.14 final final this Friday, on July
530
+ 19, 2013. If you find one, please <a href="https://github.com/rails/rails/issues/new">open an Issue on
531
+ GitHub</a> and mention me (@rafaelfranca) on it,
532
+ so that we can fix it before the final release.</p>
533
+
534
+ <h2>CHANGES since 3.2.14.rc1</h2>
535
+
536
+ <p><em>Action Mailer</em></p>
537
+
538
+ <p>No changes.</p>
539
+
540
+ <p><em>Action Pack</em></p>
541
+
542
+ <p>No changes.</p>
543
+
544
+ <p><em>Active Model</em></p>
545
+
546
+ <p>No changes.</p>
547
+
548
+ <p><em>Active Record</em></p>
549
+
550
+ <ul>
551
+ <li><p>Do not re-create destroyed association when saving the parent object.</p>
552
+
553
+ <p>Fixes #11450.</p>
554
+
555
+ <p><em>Paul Nikitochkin</em></p></li>
556
+ </ul>
557
+
558
+ <p><em>Active Resource</em></p>
559
+
560
+ <p>No changes.</p>
561
+
562
+ <p><em>Active Support</em></p>
563
+
564
+ <p>No changes.</p>
565
+
566
+ <p><em>Railties</em></p>
567
+
568
+ <p>No changes.</p>
569
+
570
+ <p><em>Full listing</em></p>
571
+
572
+ <p>To see the full list of changes, <a href="https://github.com/rails/rails/compare/v3.2.14.rc1...v3.2.14.rc2">check out all the commits on
573
+ GitHub</a>.</p>
574
+
575
+ <h2>SHA-1</h2>
576
+
577
+ <p>If you&#39;d like to verify that your gem is the same as the one we&#39;ve uploaded,
578
+ please use these SHA-1 hashes:</p>
579
+
580
+ <ul>
581
+ <li>8126e9ca60ca050fd4e809d70f2035deae1e681f actionmailer-3.2.14.rc2.gem</li>
582
+ <li>bc0c7594aebc42fe0cdd7213017e3280d6111c40 actionpack-3.2.14.rc2.gem</li>
583
+ <li>1b3de1ee862ef055b7a300e180ae97140d51534b activemodel-3.2.14.rc2.gem</li>
584
+ <li>57a9ede96d56eaac5e484f8becd41ff9513918f3 activerecord-3.2.14.rc2.gem</li>
585
+ <li>2ad96e7ab80ef8801234774f81d85cc800abfc96 activeresource-3.2.14.rc2.gem</li>
586
+ <li>02c03d4d8b888b02bf9898ab663126760e3b3678 activesupport-3.2.14.rc2.gem</li>
587
+ <li>561edde241b39ba54f79b32f93f29db699fbf668 rails-3.2.14.rc2.gem</li>
588
+ <li>4d16819efc81d3a4c761cad460c094f69a58171c railties-3.2.14.rc2.gem</li>
589
+ </ul>
590
+
591
+ <p>Thank you everyone!</p>
592
+ ]]></content>
593
+ </entry>
594
+
595
+ <entry>
596
+ <title>[ANN] Rails 3.2.14.rc1 has been released!</title>
597
+ <author>
598
+ <name>rafaelfranca</name>
599
+ </author>
600
+ <link href="http://weblog.rubyonrails.org/2013/7/12/Rails-3-2-14-rc1-has-been-released/"/>
601
+ <updated>2013-07-12T00:00:00-07:00</updated>
602
+ <id>http://weblog.rubyonrails.org/2013/7/12/Rails-3-2-14-rc1-has-been-released/</id>
603
+ <content type="html"><![CDATA[<p>Hi everyone,</p>
604
+
605
+ <p>I am happy to announce that Rails 3.2.14.rc1 has been released. If no regressions
606
+ are found I will release 3.2.14 final final this Monday, on July
607
+ 15, 2013. If you find one, please <a href="https://github.com/rails/rails/issues/new">open an Issue on
608
+ GitHub</a> and mention me on it,
609
+ so that I can fix it before the final release.</p>
610
+
611
+ <h2>CHANGES since 3.2.13</h2>
612
+
613
+ <p><em>Action Mailer</em></p>
614
+
615
+ <p>No changes.</p>
616
+
617
+ <p><em>Action Pack</em></p>
618
+
619
+ <ul>
620
+ <li><p>Merge <code>:action</code> from routing scope and assign endpoint if both <code>:controller</code>
621
+ and <code>:action</code> are present. The endpoint assignment only occurs if there is
622
+ no <code>:to</code> present in the options hash so should only affect routes using the
623
+ shorthand syntax (i.e. endpoint is inferred from the the path).</p>
624
+
625
+ <p>Fixes #9856</p>
626
+
627
+ <p><em>Yves Senn</em>, <em>Andrew White</em></p></li>
628
+ <li><p>Always escape the result of <code>link_to_unless</code> method.</p>
629
+
630
+ <p>Before:</p>
631
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">link_to_unless(true, &#39;&lt;b&gt;Showing&lt;/b&gt;&#39;, &#39;github.com&#39;)
632
+ # =&gt; &quot;&lt;b&gt;Showing&lt;/b&gt;&quot;
633
+ </code></pre></div>
634
+ <p>After:</p>
635
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">link_to_unless(true, &#39;&lt;b&gt;Showing&lt;/b&gt;&#39;, &#39;github.com&#39;)
636
+ # =&gt; &quot;&amp;lt;b&amp;gt;Showing&amp;lt;/b&amp;gt;&quot;
637
+ </code></pre></div>
638
+ <p><em>dtaniwaki</em></p></li>
639
+ <li><p>Use a case insensitive URI Regexp for #asset_path.</p>
640
+
641
+ <p>This fix a problem where the same asset path using different case are generating
642
+ different URIs.</p>
643
+
644
+ <p>Before:</p>
645
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">image_tag(&quot;HTTP://google.com&quot;)
646
+ # =&gt; &quot;&lt;img alt=\&quot;Google\&quot; src=\&quot;/assets/HTTP://google.com\&quot; /&gt;&quot;
647
+ image_tag(&quot;http://google.com&quot;)
648
+ # =&gt; &quot;&lt;img alt=\&quot;Google\&quot; src=\&quot;http://google.com\&quot; /&gt;&quot;
649
+ </code></pre></div>
650
+ <p>After:</p>
651
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">image_tag(&quot;HTTP://google.com&quot;)
652
+ # =&gt; &quot;&lt;img alt=\&quot;Google\&quot; src=\&quot;HTTP://google.com\&quot; /&gt;&quot;
653
+ image_tag(&quot;http://google.com&quot;)
654
+ # =&gt; &quot;&lt;img alt=\&quot;Google\&quot; src=\&quot;http://google.com\&quot; /&gt;&quot;
655
+ </code></pre></div>
656
+ <p><em>David Celis + Rafael Mendonça França</em></p></li>
657
+ <li><p>Fix explicit names on multiple file fields. If a file field tag has
658
+ the multiple option, it is turned into an array field (appending <code>[]</code>),
659
+ but if an explicit name is passed to <code>file_field</code> the <code>[]</code> is not
660
+ appended.
661
+ Fixes #9830.</p>
662
+
663
+ <p><em>Ryan McGeary</em></p></li>
664
+ <li><p>Fix assets loading performance in 3.2.13.</p>
665
+
666
+ <p>Issue #8756 uses Sprockets for resolving files that already exist on disk,
667
+ for those files their extensions don&#39;t need to be rewritten.</p>
668
+
669
+ <p>Fixes #9803.</p>
670
+
671
+ <p><em>Fred Wu</em></p></li>
672
+ <li><p>Fix <code>ActionController#action_missing</code> not being called.
673
+ Fixes #9799.</p>
674
+
675
+ <p><em>Janko Luin</em></p></li>
676
+ <li><p><code>ActionView::Helpers::NumberHelper#number_to_human</code> returns the number unaltered when
677
+ the units hash does not contain the needed key, e.g. when the number provided is less
678
+ than the largest key provided.</p>
679
+
680
+ <p>Examples:</p>
681
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">number_to_human(123, units: {}) # =&gt; 123
682
+ number_to_human(123, units: { thousand: &#39;k&#39; }) # =&gt; 123
683
+ </code></pre></div>
684
+ <p>Fixes #9269.
685
+ Backport #9347.</p>
686
+
687
+ <p><em>Michael Hoffman</em></p></li>
688
+ <li><p>Include I18n locale fallbacks in view lookup.
689
+ Fixes GH#3512.</p>
690
+
691
+ <p><em>Juan Barreneche</em></p></li>
692
+ <li><p>Fix <code>ActionDispatch::Request#formats</code> when the Accept request-header is an
693
+ empty string. Fix #7774 [Backport #8977, #9541]</p>
694
+
695
+ <p><em>Soylent + Maxime Réty</em></p></li>
696
+ </ul>
697
+
698
+ <p><em>Active Model</em></p>
699
+
700
+ <p>No changes.</p>
701
+
702
+ <p><em>Active Record</em></p>
703
+
704
+ <ul>
705
+ <li><p>Do not shallow the original exception in <code>exec_cache</code> on PostgreSQL adapter.</p>
706
+
707
+ <p>Fixes #11260.</p>
708
+
709
+ <p><em>Rafael Mendonça França</em></p></li>
710
+ <li><p>Fix <code>ActiveRecord::Store</code> incorrectly tracking changes of its attributes.
711
+ Fixes #10373.</p>
712
+
713
+ <p><em>Janko Marohnić</em></p></li>
714
+ <li><p>Fix a bug that prevented the use of the default STI inheritance column
715
+ (ActiveRecord::Base.inheritance<em>column = &#39;some</em>column&#39;.)</p>
716
+
717
+ <p><em>chapmajs + Takehiro Adachi</em></p></li>
718
+ <li><p>Fix mysql2 adapter raises the correct exception when executing a query on a
719
+ closed connection.</p>
720
+
721
+ <p><em>Yves Senn</em></p></li>
722
+ <li><p>Fixes bug where <code>Company.new.contract_ids</code> would incorrectly load
723
+ all non-associated contracts.</p>
724
+
725
+ <p>Example:</p>
726
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">company = Company.new # Company has many :contracts
727
+
728
+ # before
729
+ company.contract_ids # =&gt; SELECT ... WHERE `contracts`.`company_id` IS NULL
730
+
731
+ # after
732
+ company.contract_ids # =&gt; []
733
+ </code></pre></div>
734
+ <p><em>Jared Armstrong</em></p></li>
735
+ <li><p>Fix the <code>:primary_key</code> option for <code>has_many</code> associations.
736
+ Fixes #10693.</p>
737
+
738
+ <p><em>Yves Senn</em></p></li>
739
+ <li><p>fixes bug introduced by #3329. Now, when autosaving associations,
740
+ deletions happen before inserts and saves. This prevents a &#39;duplicate
741
+ unique value&#39; database error that would occur if a record being created had
742
+ the same value on a unique indexed field as that of a record being destroyed.</p>
743
+
744
+ <p>Backport of #10417</p>
745
+
746
+ <p><em>Johnny Holton</em></p></li>
747
+ <li><p>Fix that under some conditions, Active Record could produce invalid SQL of the sort:
748
+ &quot;SELECT DISTINCT DISTINCT&quot;.</p>
749
+
750
+ <p>Backport of #6792.</p>
751
+
752
+ <p><em>Ben Woosley</em></p></li>
753
+ <li><p>Require <code>ActiveRecord::Base</code> in railtie hooks for rake_tasks, console and runner to
754
+ avoid circular constant loading issues.</p>
755
+
756
+ <p>Backport #7695.</p>
757
+
758
+ <p>Fixes #7683 and #882</p>
759
+
760
+ <p><em>Ben Holley</em></p></li>
761
+ <li><p>Maintain context for joins within ActiveRecord::Relation merges.
762
+ Backport #10164.</p>
763
+
764
+ <p><em>Neeraj Singh + Andrew Horner</em></p></li>
765
+ <li><p>Make sure the <code>EXPLAIN</code> command is never triggered by a <code>select_db</code> call.</p>
766
+
767
+ <p><em>Daniel Schierbeck</em></p></li>
768
+ <li><p>Revert changes on <code>pluck</code> that was ignoring the select clause when the relation already
769
+ has one. This caused a regression since it changed the behavior in a stable release.</p>
770
+
771
+ <p>Fixes #9777.</p>
772
+
773
+ <p><em>Rafael Mendonça França</em></p></li>
774
+ <li><p>Confirm a record has not already been destroyed before decrementing counter cache.</p>
775
+
776
+ <p><em>Ben Tucker</em></p></li>
777
+ <li><p>Default values for PostgreSQL bigint types now get parsed and dumped to the
778
+ schema correctly.
779
+ Backport #10098.</p>
780
+
781
+ <p><em>Erik Peterson</em></p></li>
782
+ <li><p>Removed warning when <code>auto_explain_threshold_in_seconds</code> is set and the
783
+ connection adapter doesn&#39;t support explain.
784
+ This is causing a regression since the Active Record Railtie is trying to
785
+ connect to the development database in the application boot.</p>
786
+
787
+ <p><em>Rafael Mendonça França</em></p></li>
788
+ <li><p>Do not reset <code>inheritance_column</code> when it&#39;s set explicitly.
789
+ Backport of #5327.</p>
790
+
791
+ <p><em>kennyj + Fred Wu</em></p></li>
792
+ <li><p>Fix a problem wrong exception is occured
793
+ when raising no translatable exception in PostgreSQL.</p>
794
+
795
+ <p><em>kennyj</em></p></li>
796
+ <li><p>Resets the postgres search path in the structure.sql after the structure
797
+ is dumped in order to find schema_migrations table when multiples schemas
798
+ are used.
799
+ Fixes #9796.</p>
800
+
801
+ <p><em>Juan M. Cuello + Dembskiy Alexander</em></p></li>
802
+ <li><p>Reload the association target if it&#39;s stale. <code>@stale_state</code> should be nil
803
+ when a model isn&#39;t saved.
804
+ Fixes #7526.</p>
805
+
806
+ <p><em>Larry Lv</em></p></li>
807
+ <li><p>Don&#39;t read CSV files during execution of <code>db:fixtures:load</code>. CSV support for
808
+ fixtures was removed some time ago but the task was still loading them, even
809
+ though later the code was looking for the related yaml file instead.</p>
810
+
811
+ <p><em>kennyj</em></p></li>
812
+ </ul>
813
+
814
+ <p><em>Active Resource</em></p>
815
+
816
+ <ul>
817
+ <li><p>Fixes an issue that ActiveResource models ignores ActiveResource::Base.include<em>root</em>in_json.
818
+ Backported from the now separate repo rails/activeresouce.</p>
819
+
820
+ <p><em>Xinjiang Lu</em></p></li>
821
+ </ul>
822
+
823
+ <p><em>Active Support</em></p>
824
+
825
+ <ul>
826
+ <li><p>Make <code>Time.at_with_coercion</code> retain the second fraction and return local time.</p>
827
+
828
+ <p>Fixes #11350</p>
829
+
830
+ <p><em>Neer Friedman</em>, <em>Andrew White</em></p></li>
831
+ <li><p>Fix <code>ActiveSupport::TaggedLogging</code> incorrectly providing program name the same as log message
832
+ even when block is not provided.</p>
833
+
834
+ <p><em>Carson Reinke</em></p></li>
835
+ <li><p>Override <code>Time.at</code> to support the passing of Time-like values when called with a single argument.</p>
836
+
837
+ <p><em>Andrew White</em></p></li>
838
+ <li><p>Revert the changes on unicode character encoding from <code>ActiveSupport::JSON.encode</code>.
839
+ This was causing a regression where the resulting string is always returning UTF-8.
840
+ Also it changes the behavior of this method on a stable release.
841
+ Fixes #9498.</p>
842
+
843
+ <p><em>Rafael Mendonça França</em></p></li>
844
+ <li><p>Fix <code>ActiveSupport::TimeZone.parse</code> when time is at a local DST jump.
845
+ Fixes #9678.</p>
846
+
847
+ <p><em>Andrew White</em></p></li>
848
+ </ul>
849
+
850
+ <p><em>Railties</em></p>
851
+
852
+ <ul>
853
+ <li><p>Fix bugs that crashed <code>rake test:benchmark</code>, <code>rails profiler</code> and
854
+ <code>rails benchmarker</code>.
855
+ Fixes #4938.
856
+ Backport rails/rails-perftest#2.</p>
857
+
858
+ <p><em>Dmitry Vorotilin + Yves Senn</em></p></li>
859
+ <li><p>Add support for runner hook.</p>
860
+
861
+ <p>Backport #7695.</p>
862
+
863
+ <p><em>Ben Holley</em></p></li>
864
+ <li><p>Fixes bug with scaffold generator with <code>--assets=false --resource-route=false</code>.
865
+ Fixes #9525.</p>
866
+
867
+ <p><em>Arun Agrawal</em></p></li>
868
+ </ul>
869
+
870
+ <p><em>Full listing</em></p>
871
+
872
+ <p>To see the full list of changes, <a href="https://github.com/rails/rails/compare/v3.2.13...v3.2.14.rc1">check out all the commits on
873
+ GitHub</a>.</p>
874
+
875
+ <h2>SHA-1</h2>
876
+
877
+ <p>If you&#39;d like to verify that your gem is the same as the one I&#39;ve uploaded,
878
+ please use these SHA-1 hashes:</p>
879
+
880
+ <ul>
881
+ <li>1b8d20d39c9c5bb2fa56c835fe564bfcf6f55c66 actionmailer-3.2.14.rc1.gem</li>
882
+ <li>ccf1df0c3daa92e5e72ec11f3399167e16d2a48f actionpack-3.2.14.rc1.gem</li>
883
+ <li>263cbf1ce202095f92648171c6be92eca85837e0 activemodel-3.2.14.rc1.gem</li>
884
+ <li>51de13da5e9c9c9ccdd7f7bd4c2bfb3e1dd3dbb1 activerecord-3.2.14.rc1.gem</li>
885
+ <li>da709adcc9f56364e0d697ea10e4acc9af48068a activeresource-3.2.14.rc1.gem</li>
886
+ <li>e45cd0115705514d00b1be917f06092af389fe5d activesupport-3.2.14.rc1.gem</li>
887
+ <li>9fd0569cdee1ca0ab7b170f1c40c6c48304ec29e rails-3.2.14.rc1.gem</li>
888
+ <li>a2d485229708af4cdbbdaef72ef6f756fb1b1341 railties-3.2.14.rc1.gem</li>
889
+ </ul>
890
+
891
+ <p>Thank you everyone!</p>
892
+ ]]></content>
893
+ </entry>
894
+
895
+ <entry>
896
+ <title>Rails 4.0: Final version released!</title>
897
+ <author>
898
+ <name>dhh</name>
899
+ </author>
900
+ <link href="http://weblog.rubyonrails.org/2013/6/25/Rails-4-0-final/"/>
901
+ <updated>2013-06-25T08:00:00-07:00</updated>
902
+ <id>http://weblog.rubyonrails.org/2013/6/25/Rails-4-0-final/</id>
903
+ <content type="html"><![CDATA[<p>Rails 4.0 is finally ready after a thorough process of betas and release candidates. It&#39;s an amazing new version packed with new goodies and farewells to old features past their expiration date.</p>
904
+
905
+ <p>A big focus has been on making it dead simple to build modern web applications that are screaming fast without needing to go the client-side JS/JSON server route. Much of this work was <a href="http://37signals.com/svn/posts/3112-how-basecamp-next-got-to-be-so-damn-fast-without-using-much-client-side-ui">pioneered for Rails in the new version of Basecamp</a> and focuses on three aspects:</p>
906
+
907
+ <ol>
908
+ <li>Make it super easy to do Russian Doll-caching through <a href="http://37signals.com/svn/posts/3113-how-key-based-cache-expiration-works">key-based expiration</a> with automatic dependency management of nested templates (explored first in the <a href="https://github.com/rails/cache_digests">cache_digests</a> plugin).</li>
909
+ <li>Speed-up the client-side with <a href="https://github.com/rails/turbolinks/">Turbolinks</a>, which essentially turns your app into a single-page javascript application in terms of speed, but with none of the developmental drawbacks (except, maybe, compatibility issues with some existing JavaScript packages).</li>
910
+ <li><a href="https://github.com/rails/rails/commit/ed5c938fa36995f06d4917d9543ba78ed506bb8d">Declarative etags</a> makes it even easier to ensure you&#39;re taking advantage of HTTP freshness.</li>
911
+ </ol>
912
+
913
+ <p>Rails is of course still a great JSON server for people who want to build client-side JS views with <a href="http://emberjs.com">Ember.js</a>, <a href="http://backbonejs.org">Backbone.js</a> or <a href="http://angularjs.org">Angular.js</a>, but with the progress we&#39;ve made for Rails 4.0, you certainly won&#39;t need to go down that route just to have a super fast application.</p>
914
+
915
+ <p>We&#39;ve also added <a href="http://tenderlovemaking.com/2012/07/30/is-it-live.html">live streaming for persistent connections</a> and Rails 4.0 is now safe for threaded servers out of the box (no more need for config.threadsafe!).</p>
916
+
917
+ <p>Active Record has received a ton of love as well to make everything related to scoping and the query structure more consistent. We&#39;ve also locked down the general security defaults even tighter with this version.</p>
918
+
919
+ <p>On top of these new features and fixes, we have hundreds more of all sorts. Everything has been combed over, streamlined, simplified, and we&#39;ve extracted out lots of old APIs and things that just don&#39;t fit &quot;most people most of the time&quot;. </p>
920
+
921
+ <p><a href="https://github.com/rails/activeresource">Active Resource</a>, <a href="https://github.com/rails/rails-observers">Active Record Observers</a>, and Action Pack <a href="https://github.com/rails/actionpack-page_caching">page</a> and <a href="https://github.com/rails/actionpack-action_caching">action caching</a> are all examples of things that are no longer in core, but lives on in plugins.</p>
922
+
923
+ <p>We encourage you to peruse the CHANGELOGs for all the Rails frameworks and delight over the hundreds of improvements we&#39;ve made to Rails 4.0: <a href="https://github.com/rails/rails/blob/v4.0.0/actionpack/CHANGELOG.md">Action Pack</a>, <a href="https://github.com/rails/rails/blob/v4.0.0/activemodel/CHANGELOG.md">Active Model</a>, <a href="https://github.com/rails/rails/blob/v4.0.0/activerecord/CHANGELOG.md">Active Record</a>, <a href="https://github.com/rails/rails/blob/v4.0.0/activesupport/CHANGELOG.md">Active Support</a>, <a href="https://github.com/rails/rails/blob/v4.0.0/railties/CHANGELOG.md">Rails</a>.</p>
924
+
925
+ <p>If you&#39;re upgrading an existing application to Rails 4, have a look at the <a href="http://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#upgrading-from-rails-3-2-to-rails-4-0">upgrade guide</a> or the <a href="http://railscasts.com/episodes/415-upgrading-to-rails-4">Railscast screencast</a>. As always, install the latest with <code>gem install rails --version 4.0.0 --no-ri --no-rdoc</code> or depend on the <a href="https://github.com/rails/rails/tree/v4.0.0">v4.0.0 tag</a>. If you haven&#39;t already, now is a good time to upgrade to Ruby 2.0 as well. Rails 5+ will require Ruby 2.0, so you might as well get a head start.</p>
926
+
927
+ <p>If you&#39;d like to learn more about developing Rails 4 applications, the final version of <a href="http://pragprog.com/book/rails4/agile-web-development-with-rails">Agile Web Development with Rails 4</a> was released today as well. The more advanced <a href="http://pragprog.com/book/jvrails2/crafting-rails-applications">Crafting Rails 4 Applications</a> is also out in late-stage beta. For screencasts, checkout the new <a href="http://rails4.codeschool.com/videos">Rails 4: Zombie Outlaws</a> and <a href="http://pragmaticstudio.com/rails">Mike Clark&#39;s Rails 4 class</a>. There&#39;s new material and books coming out all the time from a variety of other authors and broadcasters, so we&#39;re really in good shape with training material timed for the release this time.</p>
928
+
929
+ <p>Finally, thanks to everyone who contributed to this release. There has been <a href="https://github.com/rails/rails/compare/3-2-stable...4-0-0">some 10,000 commits</a> between the latest 3.2 release and Rails 4.0 and <a href="http://contributors.rubyonrails.org/contributors/in-time-window/this-year">~500 people have contributed in 2013 alone</a>. We have a bigger and more engaged community than ever before and it shows: Rails 4 is an incredibly polished release. It&#39;s a real milestone and something for everyone in the community to be proud of.</p>
930
+ ]]></content>
931
+ </entry>
932
+
933
+ <entry>
934
+ <title>docrails, back to the roots</title>
935
+ <author>
936
+ <name>fxn</name>
937
+ </author>
938
+ <link href="http://weblog.rubyonrails.org/2013/6/14/docrails-back-to-the-roots/"/>
939
+ <updated>2013-06-14T10:10:00-07:00</updated>
940
+ <id>http://weblog.rubyonrails.org/2013/6/14/docrails-back-to-the-roots/</id>
941
+ <content type="html"><![CDATA[<h2>A bit of history</h2>
942
+
943
+ <p>docrails is a branch of Ruby on Rails thought for quick doc fixes that gets cross-merged with master regularly, please have a look at <a href="http://weblog.rubyonrails.org/2012/3/7/what-is-docrails/"><em>What is docrails?</em></a> for more on docrails.</p>
944
+
945
+ <p>When Pratik Naik created docrails back in 2008, he offered commit bit to anyone interested (<a href="https://groups.google.com/d/msg/rubyonrails-core/kvgiFB3zwhc/if29QQ1G53EJ">this is the original announcement</a>). Let me express my admiration for this idea. You know, in open source the commit bit is seen as the precious treasure only given to a few, and Pratik goes and puts this upside down to encourage contributions to the documentation. Genius!</p>
946
+
947
+ <p>And it went even further. GitHub was very kind to flip a private backend flag for docrails that enabled public write access, you didn&#39;t even have to ask for commit bit, you could clone and push without asking for permission.</p>
948
+
949
+ <p>The idea proved to work, trust people and you&#39;ll get trust back. Tons of people, including yours truly, have been able to contribute and improve the API and the guides with a workflow that is trivial compared to the friction of pull requests. Is about the same effort for Rails committers, patches have to be equally reviewed, but much less for contributors, which is fantastic.</p>
950
+
951
+ <h2>Back to the roots</h2>
952
+
953
+ <p>GitHub had to change their infrastructure recently and they needed to get rid of that hackish flag (only used by three projects). We are very grateful to them for providing it all this time. Thanks guys!</p>
954
+
955
+ <p>With the flag out now we are back to the roots. docrails is now owned by the Rails organization and has thus moved from <a href="https://github.com/lifo/docrails">lifo/docrails</a> to <a href="https://github.com/rails/docrails">rails/docrails</a>. You can either ask for commit bit if you&#39;d like to contribute to docrails regularly (please contact anyone from the core team), or else propose documentation changes to Rails itself via pull requests to <a href="https://github.com/rails/rails">rails/rails</a>.</p>
956
+
957
+ <p>Please, do not open pull requests in docrails, documentation belongs to Rails and is maintained and evolved alongside the source code, the purpose of docrails is precisely to give you a way to bypass pull requests altogether.</p>
958
+ ]]></content>
959
+ </entry>
960
+
961
+ <entry>
962
+ <title>Rails 4.0: Release Candidate 2 released!</title>
963
+ <author>
964
+ <name>dhh</name>
965
+ </author>
966
+ <link href="http://weblog.rubyonrails.org/2013/6/11/Rails-4-0-release-candidate-2/"/>
967
+ <updated>2013-06-11T14:20:00-07:00</updated>
968
+ <id>http://weblog.rubyonrails.org/2013/6/11/Rails-4-0-release-candidate-2/</id>
969
+ <content type="html"><![CDATA[<p>We&#39;re almost at the end of the road for Rails 4.0.0. This is intended to be the last release candidate before the final version is released. We have <a href="https://github.com/rails/rails/compare/v4.0.0.rc1...v4.0.0.rc2">just under a hundred commits in since RC1</a>. All just fixing regressions since the last release.</p>
970
+
971
+ <p>As last time, please give this release candidate an honest try. This is the version we&#39;re going to ship on June 25th unless people find and report blocking issues. Please report all the issues you find on the <a href="https://github.com/rails/rails/issues?state=open">Rails issue tracker</a>. </p>
972
+
973
+ <p>As always, install the release with <code>gem install rails --version 4.0.0.rc2 --no-ri --no-rdoc</code> or depend on the <a href="https://github.com/rails/rails/tree/v4.0.0.rc2">v4.0.0.rc2 tag</a>. You can also follow the <a href="https://github.com/rails/rails/tree/4-0-0">4-0-0 branch</a>. 4-0-0-stable is now targeting 4.0.1 and master is targeting 4.1.</p>
974
+
975
+ <p>Go West, friends!</p>
976
+ ]]></content>
977
+ </entry>
978
+
979
+ <entry>
980
+ <title>2013 Rails Google Summer of Code Projects</title>
981
+ <author>
982
+ <name>Andrew White</name>
983
+ </author>
984
+ <link href="http://weblog.rubyonrails.org/2013/5/27/rails-google-summer-of-code-projects/"/>
985
+ <updated>2013-05-27T09:00:00-07:00</updated>
986
+ <id>http://weblog.rubyonrails.org/2013/5/27/rails-google-summer-of-code-projects/</id>
987
+ <content type="html"><![CDATA[<p>Google has announced the <a href="http://www.google-melange.com/gsoc/projects/list/google/gsoc2013">accepted projects</a> for the Summer of Code 2013 and Rails has been granted five slots. Here&#39;s what our students will be working on this summer:</p>
988
+
989
+ <p><a href="https://github.com/gsamokovarov">Genadi Samokovarov</a> will be working on adding a web-based console for development, debugging and testing your Rails applications. He will be mentored by Rails Core Team member Guillermo Iguaran.</p>
990
+
991
+ <p><a href="https://github.com/strzalek">Łukasz Strzałkowski</a> will be working on seperating Action View from Action Pack and adding support for custom view classes. He will be mentored by Piotr Sarnacki, who was a Rails Summer of Code student in 2010 and has been a consistent contributor to Rails.</p>
992
+
993
+ <p><a href="https://github.com/ujjwalt">Ujjwal Thaakar</a> will be working on adding support to Rails for bulk/collection actions with RESTful resources. He will be mentored by Rails Core Team member Andrew White.</p>
994
+
995
+ <p><a href="https://github.com/kaspth">Kasper Timm Hansen</a> will be working on replacing the venerable html-scanner in the Rails HTML Sanitization API with Loofah and adding improvements to the API. He will be mentored by Rails Core Team member Rafael França.</p>
996
+
997
+ <p><a href="https://github.com/wangjohn">John Wang</a> will be working on refactoring the configuration and initialization of Rails applications. He will be mentored by Rails Core Team member Santiago Pastorino.</p>
998
+
999
+ <p>We&#39;d like to thank all of the students and mentors who participated in the Summer of Code selection process - it was tough to get down to five projects, considering all the great proposals we had. We&#39;re looking forward to seeing what all of our students bring to Rails this summer and we hope not to lose touch with others who are also excited about the prospects for Rails 4.0.</p>
1000
+ ]]></content>
1001
+ </entry>
1002
+
1003
+ <entry>
1004
+ <title>Rails 4.0: Release Candidate 1 released!</title>
1005
+ <author>
1006
+ <name>dhh</name>
1007
+ </author>
1008
+ <link href="http://weblog.rubyonrails.org/2013/5/1/Rails-4-0-release-candidate-1/"/>
1009
+ <updated>2013-05-01T15:30:00-07:00</updated>
1010
+ <id>http://weblog.rubyonrails.org/2013/5/1/Rails-4-0-release-candidate-1/</id>
1011
+ <content type="html"><![CDATA[<p>Just in time for the opening of RailsConf, we managed to push out the first release candidate of Rails 4.0. This incorporates no less than 1,368 commits since beta 1. You can see <a href="https://github.com/rails/rails/compare/v4.0.0.beta1...v4.0.0.rc1">the full list of changes on Github</a>. If you&#39;re interested in a high-level review of what&#39;s in Rails 4.0, please see <a href="http://weblog.rubyonrails.org/2013/2/25/Rails-4-0-beta1/">the announcement we made for beta 1</a>.</p>
1012
+
1013
+ <p>As last time, please give this release candidate an honest try. This is pretty much the version we&#39;re going to ship unless people find and report blocking issues. Depending on how much stuff is unearthed, we expect that the final version could drop in as little as 3-4 weeks. Please report all the issues you find on the <a href="https://github.com/rails/rails/issues?state=open">Rails issue tracker</a>. </p>
1014
+
1015
+ <p>We&#39;re still working on the <a href="http://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#upgrading-from-rails-3-2-to-rails-4-0">upgrade guide from 3.2 to 4.0</a>, but that&#39;s a good place to start for help on how to do it. We&#39;re also so lucky to have many authors and screencasters ready with material for 4.0. In the books department, you&#39;ll find Rails 4.0-ready versions of <a href="http://pragprog.com/book/rails4/agile-web-development-with-rails">Agile Web Development with Rails</a> and <a href="http://pragprog.com/book/jvrails2/crafting-rails-applications">Crafting Rails Applications</a>. For screencasts, checkout the new <a href="http://rails4.codeschool.com/videos">Rails 4: Zombie Outlaws</a> and <a href="http://pragmaticstudio.com/rails">Mike Clark&#39;s Rails 4 class</a>. There&#39;s new material and books coming out all the time from a variety of other authors and broadcasters, so we&#39;re really in good shape with training material timed for the release this time!</p>
1016
+
1017
+ <p>As always, install the release with <code>gem install rails --version 4.0.0.rc1 --no-ri --no-rdoc</code> or depend on the <a href="https://github.com/rails/rails/tree/v4.0.0.rc1">v4.0.0.rc1 tag</a>. We also have a new <a href="https://github.com/rails/rails/tree/4-0-stable">4-0-stable branch</a>. Master is now safe to move on to developing features for 4.1.</p>
1018
+
1019
+ <p>Go West, friends!</p>
1020
+ ]]></content>
1021
+ </entry>
1022
+
1023
+ <entry>
1024
+ <title>Google Summer of Code 2013</title>
1025
+ <author>
1026
+ <name>Andrew White</name>
1027
+ </author>
1028
+ <link href="http://weblog.rubyonrails.org/2013/4/10/google-summer-of-code-2013/"/>
1029
+ <updated>2013-04-10T09:00:00-07:00</updated>
1030
+ <id>http://weblog.rubyonrails.org/2013/4/10/google-summer-of-code-2013/</id>
1031
+ <content type="html"><![CDATA[<p>We&#39;re pleased to announce, Ruby on Rails has been accepted into Google Summer of Code 2013 as a <a href="http://www.google-melange.com/gsoc/accepted_orgs/google/gsoc2013">mentoring organization</a>. What does this mean to you? Potentially, if you&#39;re the right person, you can get <strong>paid</strong> to work on Rails this summer! The &quot;right person&quot; in this case is one who is at least 18 years old (sorry, Google&#39;s rule, not ours!) on or before May 27, 2013; a full or part-time college student; and passionate about improving Rails.</p>
1032
+
1033
+ <p>We&#39;re building a potential list of <a href="https://github.com/rails/gsoc2013/wiki/Ideas">project ideas</a> on a GitHub wiki, but we welcome other interesting proposals. If your proposal gets accepted, Google will pay you $5000 over the course of three months to work on the code. If you&#39;re interested, head over to the <a href="http://www.google-melange.com/gsoc/homepage/google/gsoc2013">GSoC site</a> and start reading about the process. Student applications can be submitted starting April 22 and the deadline is May 3.</p>
1034
+
1035
+ <p>If you&#39;re wondering what&#39;s involved in becoming a GSoC student then the <a href="http://en.flossmanuals.net/GSoCStudentGuide/">Google Student Guide</a> has all the details on what&#39;s expected and what you will gain from taking part. Any further questions can be directed either to the <a href="https://groups.google.com/d/forum/rubyonrails-gsoc">mailing list</a> or to <a href="mailto:andyw@pixeltrix.co.uk">me</a> directly.</p>
1036
+
1037
+ <p>What if you&#39;re not a student? You can still help out by discussing ideas on the special <a href="https://groups.google.com/d/forum/rubyonrails-gsoc">mailing list</a> we&#39;ve setup for this year&#39;s program. Or if you&#39;ve got previous experience of contributing to Rails and are ready to make a strong commitment to help out the next generation of developers, you can <a href="http://www.google-melange.com/gsoc/accepted_orgs/google/gsoc2013">apply to be a mentor</a>.</p>
1038
+
1039
+ <p>We&#39;re looking forward to working with this year&#39;s students, and expecting some outstanding contributions to Rails as a result!</p>
1040
+ ]]></content>
1041
+ </entry>
1042
+
1043
+ <entry>
1044
+ <title>[SEC] [ANN] Rails 3.2.13, 3.1.12, and 2.3.18 have been released!</title>
1045
+ <author>
1046
+ <name>tenderlove</name>
1047
+ </author>
1048
+ <link href="http://weblog.rubyonrails.org/2013/3/18/SEC-ANN-Rails-3-2-13-3-1-12-and-2-3-18-have-been-released/"/>
1049
+ <updated>2013-03-18T00:00:00-07:00</updated>
1050
+ <id>http://weblog.rubyonrails.org/2013/3/18/SEC-ANN-Rails-3-2-13-3-1-12-and-2-3-18-have-been-released/</id>
1051
+ <content type="html"><![CDATA[<p>Hi everyone!</p>
1052
+
1053
+ <p>Rails versions 3.2.13, 3.1.12, and 2.3.18 have been released. These releases contain important security fixes. It is recommended users upgrade as soon as possible.</p>
1054
+
1055
+ <p>Please check out these links for the security fixes:</p>
1056
+
1057
+ <ul>
1058
+ <li><a href="https://groups.google.com/forum/#!topic/ruby-security-ann/o0Dsdk2WrQ0">CVE-2013-1854 Symbol DoS vulnerability in Active Record</a></li>
1059
+ <li><a href="https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/4_QHo4BqnN8">CVE-2013-1855 XSS vulnerability in sanitize_css in Action Pack</a></li>
1060
+ <li><a href="https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/KZwsQbYsOiI">CVE-2013-1856 XML Parsing Vulnerability affecting JRuby users</a></li>
1061
+ <li><a href="https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/zAAU7vGTPvI">CVE-2013-1857 XSS Vulnerability in the <code>sanitize</code> helper of Ruby on Rails</a></li>
1062
+ </ul>
1063
+
1064
+ <p>All versions of Rails are impacted by one or more of these security issues, but per our <a href="https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/G4TTUDDYbNA">maintenance policy</a>, only versions 3.2.13, 3.1.12, and 2.3.18 have been released. You can find patches for older versions on each stable branch on GitHub:</p>
1065
+
1066
+ <ul>
1067
+ <li><a href="https://github.com/rails/rails/tree/3-0-stable">Rails 3-0-stable</a></li>
1068
+ </ul>
1069
+
1070
+ <p>as well as with the security advisories.</p>
1071
+
1072
+ <p>For other changes in each particular release, please see the CHANGELOG corresponding to that version. For all commits in each release, please follow the links below:</p>
1073
+
1074
+ <ul>
1075
+ <li><a href="https://github.com/rails/rails/compare/v3.2.12...v3.2.13">Changes in 3.2.13</a></li>
1076
+ <li><a href="https://github.com/rails/rails/compare/v3.1.11...v3.1.12">Changes in 3.1.12</a></li>
1077
+ <li><a href="https://github.com/rails/rails/compare/v2.3.17...v2.3.18">Changes in 2.3.18</a></li>
1078
+ </ul>
1079
+
1080
+ <p>Here are the checksums for the released gems:</p>
1081
+
1082
+ <h3>3.2.13</h3>
1083
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *3.2.13.gem
1084
+ 72b14536f1717121e8b2a5aa5a06c6194e02c87c actionmailer-3.2.13.gem
1085
+ a21166f7c364ff7825bf83f9757c33cc44fa0c00 actionpack-3.2.13.gem
1086
+ 9fa309dee3f87a53764db3aaefe3bbf6f9724ad2 activemodel-3.2.13.gem
1087
+ 469f6b4456d7fa1bf0336d488ad5878a6842e2da activerecord-3.2.13.gem
1088
+ 0c89382354ffc5b4438ed37434b50d7cbc71d569 activeresource-3.2.13.gem
1089
+ cdf230b698b28ae1cffb325ecbb9e219645ed68b activesupport-3.2.13.gem
1090
+ 3785dc8d2af1521baddf2d90b67a9b61b2b31604 rails-3.2.13.gem
1091
+ ff0607812bead596492272e4a4306ae3e950bdf4 railties-3.2.13.gem
1092
+ </code></pre></div>
1093
+ <h3>3.1.12</h3>
1094
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *3.1.12.gem
1095
+ b3f0ecee33032416170263508ccfb33d5dd65eef actionmailer-3.1.12.gem
1096
+ 426fcf3f5d4e29ae6bf21f536a97d90d02bf73bb actionpack-3.1.12.gem
1097
+ 2b01ba8bd85d67ded372f3908b694c1fa1ccb041 activemodel-3.1.12.gem
1098
+ a3afc58fe3f7448ba09cdacb2046c9e10e474cb4 activerecord-3.1.12.gem
1099
+ d3402193c0820f016b492162547194f942c96c1a activeresource-3.1.12.gem
1100
+ e25ed2f7e055d38b1bed482faf8b563a6b7e3899 activesupport-3.1.12.gem
1101
+ 75c2f85ed1e09d2bd1baa3efab5f097cdaef2a6b rails-3.1.12.gem
1102
+ 618c5beb85124fbedfe41a72424079700f7a1d2c railties-3.1.12.gem
1103
+ </code></pre></div>
1104
+ <h3>2.3.18</h3>
1105
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *2.3.18.gem
1106
+ 09e361c4c96104303abad5faa4aec72ebe7c19d1 actionmailer-2.3.18.gem
1107
+ deca0d8352858f734479b54162269e334faada21 actionpack-2.3.18.gem
1108
+ e385b4b2e863592f9f06ca3248a67a18ea8c7e6c activerecord-2.3.18.gem
1109
+ ff4fb4a62c4d4007a6c596edf8f7055147948e60 activeresource-2.3.18.gem
1110
+ 1b9102fa31a47cf66b0c2583c99b707544d42054 activesupport-2.3.18.gem
1111
+ f4aff07dce1db10ad6145e358344671cc482de70 rails-2.3.18.gem
1112
+ </code></pre></div>
1113
+ <p>Happy Monday!</p>
1114
+
1115
+ <p>&lt;3&lt;3&lt;3</p>
1116
+ ]]></content>
1117
+ </entry>
1118
+
1119
+ <entry>
1120
+ <title>[ANN] Rails 3.2.13.rc2 has been released!</title>
1121
+ <author>
1122
+ <name>tenderlove</name>
1123
+ </author>
1124
+ <link href="http://weblog.rubyonrails.org/2013/3/7/Rails-3-2-13-rc2-has-been-released/"/>
1125
+ <updated>2013-03-07T00:00:00-08:00</updated>
1126
+ <id>http://weblog.rubyonrails.org/2013/3/7/Rails-3-2-13-rc2-has-been-released/</id>
1127
+ <content type="html"><![CDATA[<p>Hi everybody.</p>
1128
+
1129
+ <p>I&#39;d like to announce that Rails 3.2.13.rc2 has been released.</p>
1130
+
1131
+ <p>Rails 3.2.13.rc2 contains fixes for regressions found in rc1. Please test out
1132
+ rc2. If you find regressions between 3.2.13.rc2 and 3.2.12, please email <a href="https://groups.google.com/forum/?fromgroups#!forum/rubyonrails-core">the
1133
+ rails-core mailing list</a>, or <a href="https://github.com/rails/rails/issues/new">file an issue on GitHub</a>.</p>
1134
+
1135
+ <p>If there aren&#39;t any major regressions, 3.2.13 final will be released on March
1136
+ 13, 2013.</p>
1137
+
1138
+ <ul>
1139
+ <li><a href="https://github.com/rails/rails/compare/v3.2.11...v3.2.12">Changes in 3.2.12</a></li>
1140
+ </ul>
1141
+
1142
+ <p>Changes:</p>
1143
+
1144
+ <ul>
1145
+ <li><a href="https://github.com/rails/rails/compare/v3.2.12...v3.2.13.rc1">3.2.12 to 3.2.13.rc1</a></li>
1146
+ <li><a href="https://github.com/rails/rails/compare/v3.2.13.rc1...v3.2.13.rc2">3.2.13.rc1 to 3.2.13.rc2</a></li>
1147
+ </ul>
1148
+
1149
+ <p>&lt;3&lt;3&lt;3</p>
1150
+ ]]></content>
1151
+ </entry>
1152
+
1153
+ <entry>
1154
+ <title>[ANN] Rails 3.2.13.rc1 has been released!</title>
1155
+ <author>
1156
+ <name>steveklabnik</name>
1157
+ </author>
1158
+ <link href="http://weblog.rubyonrails.org/2013/2/27/Rails-3-2-13-rc1-has-been-released/"/>
1159
+ <updated>2013-02-27T00:00:00-08:00</updated>
1160
+ <id>http://weblog.rubyonrails.org/2013/2/27/Rails-3-2-13-rc1-has-been-released/</id>
1161
+ <content type="html"><![CDATA[<p>Hey everyone! I am pumped to announce that Rails 3.2.13.rc1 has been released!
1162
+ If no regressions are found I will release 3.2.13 final in two weeks, on March
1163
+ 13, 2013. If you find one, please <a href="https://github.com/rails/rails/issues/new">Open an Issue on
1164
+ GitHub</a> so that I can fix it before
1165
+ the final release.</p>
1166
+
1167
+ <p>This is a bugfix release, with 287 commits. There is one big thing that is
1168
+ technically a fix but is sort of a feature: Ruby 2.0 support. Big thanks to
1169
+ Prem Sichanugrist for putting that together! Please give your applications a
1170
+ try on Ruby 2.0 and let me know how that goes.</p>
1171
+
1172
+ <h2>CHANGES since 3.2.12</h2>
1173
+
1174
+ <p><em>Action Mailer</em></p>
1175
+
1176
+ <p>No changes.</p>
1177
+
1178
+ <p><em>Action Pack</em></p>
1179
+
1180
+ <ul>
1181
+ <li><p>Determine the controller#action from only the matched path when using the
1182
+ shorthand syntax. Previously the complete path was used, which led
1183
+ to problems with nesting (scopes and namespaces).
1184
+ Fixes #7554.
1185
+ Backport #9361.</p>
1186
+
1187
+ <p>Example:</p>
1188
+ <div class="highlight"><pre><code class="text language-text" data-lang="text"># this will route to questions#new
1189
+ scope &#39;:locale&#39; do
1190
+ get &#39;questions/new&#39;
1191
+ end
1192
+ </code></pre></div>
1193
+ <p><em>Yves Senn</em></p></li>
1194
+ <li><p>Fix <code>assert_template</code> with <code>render :stream =&gt; true</code>.
1195
+ Fix #1743.
1196
+ Backport #5288.</p>
1197
+
1198
+ <p><em>Sergey Nartimov</em></p></li>
1199
+ <li><p>Eagerly populate the http method loookup cache so local project inflections do
1200
+ not interfere with use of underscore method ( and we don&#39;t need locks )</p>
1201
+
1202
+ <p><em>Aditya Sanghi</em></p></li>
1203
+ <li><p><code>BestStandardsSupport</code> no longer duplicates <code>X-UA-Compatible</code> values on
1204
+ each request to prevent header size from blowing up.</p>
1205
+
1206
+ <p><em>Edward Anderson</em></p></li>
1207
+ <li><p>Fixed JSON params parsing regression for non-object JSON content.</p>
1208
+
1209
+ <p><em>Dylan Smith</em></p></li>
1210
+ <li><p>Prevent unnecessary asset compilation when using <code>javascript_include_tag</code> on
1211
+ files with non-standard extensions.</p>
1212
+
1213
+ <p><em>Noah Silas</em></p></li>
1214
+ <li><p>Fixes issue where duplicate assets can be required with sprockets.</p>
1215
+
1216
+ <p><em>Jeremy Jackson</em></p></li>
1217
+ <li><p>Bump <code>rack</code> dependency to 1.4.3, eliminate <code>Rack::File</code> headers deprecation warning.</p>
1218
+
1219
+ <p><em>Sam Ruby + Carlos Antonio da Silva</em></p></li>
1220
+ <li><p>Do not append second slash to <code>root_url</code> when using <code>trailing_slash: true</code></p>
1221
+
1222
+ <p>Fix #8700.
1223
+ Backport #8701.</p>
1224
+
1225
+ <p>Example:
1226
+ # before
1227
+ root_url # =&gt; http://test.host//</p>
1228
+ <div class="highlight"><pre><code class="text language-text" data-lang="text"># after
1229
+ root_url # =&gt; http://test.host/
1230
+ </code></pre></div>
1231
+ <p><em>Yves Senn</em></p></li>
1232
+ <li><p>Fix a bug in <code>content_tag_for</code> that prevents it for work without a block.</p>
1233
+
1234
+ <p><em>Jasl</em></p></li>
1235
+ <li><p>Clear url helper methods when routes are reloaded by removing the methods
1236
+ explicitly rather than just clearing the module because it didn&#39;t work
1237
+ properly and could be the source of a memory leak.</p>
1238
+
1239
+ <p><em>Andrew White</em></p></li>
1240
+ <li><p>Fix a bug in <code>ActionDispatch::Request#raw_post</code> that caused <code>env[&#39;rack.input&#39;]</code>
1241
+ to be read but not rewound.</p>
1242
+
1243
+ <p><em>Matt Venables</em></p></li>
1244
+ <li><p>More descriptive error messages when calling <code>render :partial</code> with
1245
+ an invalid <code>:layout</code> argument.</p>
1246
+
1247
+ <p>Fixes #8376.</p>
1248
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">render :partial =&gt; &#39;partial&#39;, :layout =&gt; true
1249
+ # results in ActionView::MissingTemplate: Missing partial /true
1250
+ </code></pre></div>
1251
+ <p><em>Yves Senn</em></p></li>
1252
+ <li><p>Accept symbols as <code>#send_data</code> :disposition value. [Backport #8329] <em>Elia Schito</em></p></li>
1253
+ <li><p>Add i18n scope to <code>distance_of_time_in_words</code>. [Backport #7997] <em>Steve Klabnik</em></p></li>
1254
+ <li><p>Fix side effect of <code>url_for</code> changing the <code>:controller</code> string option. [Backport #6003]
1255
+ Before:</p>
1256
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">controller = &#39;/projects&#39;
1257
+ url_for :controller =&gt; controller, :action =&gt; &#39;status&#39;
1258
+
1259
+ puts controller #=&gt; &#39;projects&#39;
1260
+ </code></pre></div>
1261
+ <p>After</p>
1262
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">puts controller #=&gt; &#39;/projects&#39;
1263
+ </code></pre></div>
1264
+ <p><em>Nikita Beloglazov + Andrew White</em></p></li>
1265
+ <li><p>Introduce <code>ActionView::Template::Handlers::ERB.escape_whitelist</code>. This is a list
1266
+ of mime types where template text is not html escaped by default. It prevents <code>Jack &amp; Joe</code>
1267
+ from rendering as <code>Jack &amp;amp; Joe</code> for the whitelisted mime types. The default whitelist
1268
+ contains text/plain. Fix #7976 [Backport #8235]</p>
1269
+
1270
+ <p><em>Joost Baaij</em></p></li>
1271
+ <li><p><code>BestStandardsSupport</code> middleware now appends it&#39;s <code>X-UA-Compatible</code> value to app&#39;s
1272
+ returned value if any. Fix #8086 [Backport #8093]</p>
1273
+
1274
+ <p><em>Nikita Afanasenko</em></p></li>
1275
+ <li><p>prevent double slashes in engine urls when <code>Rails.application.default_url_options[:trailing_slash] = true</code> is set
1276
+ Fix #7842</p>
1277
+
1278
+ <p><em>Yves Senn</em></p></li>
1279
+ <li><p>Fix input name when <code>:multiple =&gt; true</code> and <code>:index</code> are set.</p>
1280
+
1281
+ <p>Before:</p>
1282
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">check_box(&quot;post&quot;, &quot;comment_ids&quot;, { :multiple =&gt; true, :index =&gt; &quot;foo&quot; }, 1)
1283
+ #=&gt; &lt;input name=\&quot;post[foo][comment_ids]\&quot; type=\&quot;hidden\&quot; value=\&quot;0\&quot; /&gt;&lt;input id=\&quot;post_foo_comment_ids_1\&quot; name=\&quot;post[foo][comment_ids]\&quot; type=\&quot;checkbox\&quot; value=\&quot;1\&quot; /&gt;
1284
+ </code></pre></div>
1285
+ <p>After:</p>
1286
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">check_box(&quot;post&quot;, &quot;comment_ids&quot;, { :multiple =&gt; true, :index =&gt; &quot;foo&quot; }, 1)
1287
+ #=&gt; &lt;input name=\&quot;post[foo][comment_ids][]\&quot; type=\&quot;hidden\&quot; value=\&quot;0\&quot; /&gt;&lt;input id=\&quot;post_foo_comment_ids_1\&quot; name=\&quot;post[foo][comment_ids][]\&quot; type=\&quot;checkbox\&quot; value=\&quot;1\&quot; /&gt;
1288
+ </code></pre></div>
1289
+ <p>Fix #8108</p>
1290
+
1291
+ <p><em>Daniel Fox, Grant Hutchins &amp; Trace Wax</em></p></li>
1292
+ </ul>
1293
+
1294
+ <p><em>Active Model</em></p>
1295
+
1296
+ <ul>
1297
+ <li> Specify type of singular association during serialization <em>Steve Klabnik</em></li>
1298
+ </ul>
1299
+
1300
+ <p><em>Active Record</em></p>
1301
+
1302
+ <ul>
1303
+ <li><p>Reverted 921a296a3390192a71abeec6d9a035cc6d1865c8, &#39;Quote numeric values
1304
+ compared to string columns.&#39; This caused several regressions.</p>
1305
+
1306
+ <p><em>Steve Klabnik</em></p></li>
1307
+ <li><p>Fix overriding of attributes by default_scope on <code>ActiveRecord::Base#dup</code>.</p>
1308
+
1309
+ <p><em>Hiroshige UMINO</em></p></li>
1310
+ <li><p>Fix issue with overriding Active Record reader methods with a composed object
1311
+ and using that attribute as the scope of a <code>uniqueness_of</code> validation.
1312
+ Backport #7072.</p>
1313
+
1314
+ <p><em>Peter Brown</em></p></li>
1315
+ <li><p>Sqlite now preserves custom primary keys when copying or altering tables.
1316
+ Fixes #9367.
1317
+ Backport #2312.</p>
1318
+
1319
+ <p><em>Sean Scally + Yves Senn</em></p></li>
1320
+ <li><p>Preloading <code>has_many :through</code> associations with conditions won&#39;t
1321
+ cache the <code>:through</code> association. This will prevent invalid
1322
+ subsets to be cached.
1323
+ Fixes #8423.
1324
+ Backport #9252.</p>
1325
+
1326
+ <p>Example:</p>
1327
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">class User
1328
+ has_many :posts
1329
+ has_many :recent_comments, -&gt; { where(&#39;created_at &gt; ?&#39;, 1.week.ago) }, :through =&gt; :posts
1330
+ end
1331
+
1332
+ a_user = User.includes(:recent_comments).first
1333
+
1334
+ # this is preloaded
1335
+ a_user.recent_comments
1336
+
1337
+ # fetching the recent_comments through the posts association won&#39;t preload it.
1338
+ a_user.posts
1339
+ </code></pre></div>
1340
+ <p><em>Yves Senn</em></p></li>
1341
+ <li><p>Fix handling of dirty time zone aware attributes</p>
1342
+
1343
+ <p>Previously, when <code>time_zone_aware_attributes</code> were enabled, after
1344
+ changing a datetime or timestamp attribute and then changing it back
1345
+ to the original value, <code>changed_attributes</code> still tracked the
1346
+ attribute as changed. This caused <code>[attribute]_changed?</code> and
1347
+ <code>changed?</code> methods to return true incorrectly.</p>
1348
+
1349
+ <p>Example:</p>
1350
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">in_time_zone &#39;Paris&#39; do
1351
+ order = Order.new
1352
+ original_time = Time.local(2012, 10, 10)
1353
+ order.shipped_at = original_time
1354
+ order.save
1355
+ order.changed? # =&gt; false
1356
+
1357
+ # changing value
1358
+ order.shipped_at = Time.local(2013, 1, 1)
1359
+ order.changed? # =&gt; true
1360
+
1361
+ # reverting to original value
1362
+ order.shipped_at = original_time
1363
+ order.changed? # =&gt; false, used to return true
1364
+ end
1365
+ </code></pre></div>
1366
+ <p>Backport of #9073
1367
+ Fixes #8898</p>
1368
+
1369
+ <p><em>Lilibeth De La Cruz</em></p></li>
1370
+ <li><p>Fix counter cache columns not updated when replacing <code>has_many :through</code>
1371
+ associations.
1372
+ Backport #8400.
1373
+ Fix #7630.</p>
1374
+
1375
+ <p><em>Matthew Robertson</em></p></li>
1376
+ <li><p>Don&#39;t update <code>column_defaults</code> when calling destructive methods on column with default value.
1377
+ Backport c517602.
1378
+ Fix #6115.</p>
1379
+
1380
+ <p><em>Piotr Sarnacki + Aleksey Magusev + Alan Daud</em></p></li>
1381
+ <li><p>When <code>#count</code> is used in conjunction with <code>#uniq</code> we perform <code>count(:distinct =&gt; true)</code>.
1382
+ Fix #6865.</p>
1383
+
1384
+ <p>Example:</p>
1385
+
1386
+ <p>relation.uniq.count # =&gt; SELECT COUNT(DISTINCT *)</p>
1387
+
1388
+ <p><em>Yves Senn + Kaspar Schiess</em></p></li>
1389
+ <li><p>Fix <code>ActiveRecord::Relation#pluck</code> when columns or tables are reserved words.
1390
+ Backport #7536.
1391
+ Fix #8968.</p>
1392
+
1393
+ <p><em>Ian Lesperance + Yves Senn + Kaspar Schiess</em></p></li>
1394
+ <li><p>Don&#39;t run explain on slow queries for database adapters that don&#39;t support it.
1395
+ Backport #6197.</p>
1396
+
1397
+ <p><em>Blake Smith</em></p></li>
1398
+ <li><p>Revert round usec when comparing timestamp attributes in the dirty tracking.
1399
+ Fixes #8460.</p>
1400
+
1401
+ <p><em>Andrew White</em></p></li>
1402
+ <li><p>Revert creation of through association models when using <code>collection=[]</code>
1403
+ on a <code>has_many :through</code> association from an unsaved model.
1404
+ Fix #7661, #8269.</p>
1405
+
1406
+ <p><em>Ernie Miller</em></p></li>
1407
+ <li><p>Fix undefined method <code>to_i</code> when calling <code>new</code> on a scope that uses an
1408
+ Array; Fix FloatDomainError when setting integer column to NaN.
1409
+ Fixes #8718, #8734, #8757.</p>
1410
+
1411
+ <p><em>Jason Stirk + Tristan Harward</em></p></li>
1412
+ <li><p>Serialized attributes can be serialized in integer columns.
1413
+ Fix #8575.</p>
1414
+
1415
+ <p><em>Rafael Mendonça França</em></p></li>
1416
+ <li><p>Keep index names when using <code>alter_table</code> with sqlite3.
1417
+ Fix #3489.
1418
+ Backport #8522.</p>
1419
+
1420
+ <p><em>Yves Senn</em></p></li>
1421
+ <li><p>Recognize migrations placed in directories containing numbers and &#39;rb&#39;.
1422
+ Fix #8492.
1423
+ Backport of #8500.</p>
1424
+
1425
+ <p><em>Yves Senn</em></p></li>
1426
+ <li><p>Add <code>ActiveRecord::Base.cache_timestamp_format</code> class attribute to control
1427
+ the format of the timestamp value in the cache key.
1428
+ This allows users to improve the precision of the cache key.
1429
+ Fixes #8195.</p>
1430
+
1431
+ <p><em>Rafael Mendonça França</em></p></li>
1432
+ <li><p>Add <code>:nsec</code> date format. This can be used to improve the precision of cache key.
1433
+ Please note that this format only works with Ruby 1.9, Ruby 1.8 will ignore it completely.</p>
1434
+
1435
+ <p><em>Jamie Gaskins</em></p></li>
1436
+ <li><p>Unscope <code>update_column(s)</code> query to ignore default scope.</p>
1437
+
1438
+ <p>When applying <code>default_scope</code> to a class with a where clause, using
1439
+ <code>update_column(s)</code> could generate a query that would not properly update
1440
+ the record due to the where clause from the <code>default_scope</code> being applied
1441
+ to the update query.</p>
1442
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">class User &lt; ActiveRecord::Base
1443
+ default_scope where(active: true)
1444
+ end
1445
+
1446
+ user = User.first
1447
+ user.active = false
1448
+ user.save!
1449
+
1450
+ user.update_column(:active, true) # =&gt; false
1451
+ </code></pre></div>
1452
+ <p>In this situation we want to skip the default_scope clause and just
1453
+ update the record based on the primary key. With this change:</p>
1454
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">user.update_column(:active, true) # =&gt; true
1455
+ </code></pre></div>
1456
+ <p>Backport of #8436 fix.</p>
1457
+
1458
+ <p><em>Carlos Antonio da Silva</em></p></li>
1459
+ <li><p>Fix performance problem with primary<em>key method in PostgreSQL adapter when having many schemas.
1460
+ Uses pg</em>constraint table instead of pg_depend table which has many records in general.
1461
+ Fix #8414</p>
1462
+
1463
+ <p><em>kennyj</em></p></li>
1464
+ <li><p>Do not instantiate intermediate Active Record objects when eager loading.
1465
+ These records caused <code>after_find</code> to run more than expected.
1466
+ Fix #3313
1467
+ Backport of #8403</p>
1468
+
1469
+ <p><em>Yves Senn</em></p></li>
1470
+ <li><p>Fix <code>pluck</code> to work with joins. Backport of #4942.</p>
1471
+
1472
+ <p><em>Carlos Antonio da Silva</em></p></li>
1473
+ <li><p>Fix a problem with <code>translate_exception</code> method in a non English environment.
1474
+ Backport of #6397.</p>
1475
+
1476
+ <p><em>kennyj</em></p></li>
1477
+ <li><p>Fix dirty attribute checks for TimeZoneConversion with nil and blank
1478
+ datetime attributes. Setting a nil datetime to a blank string should not
1479
+ result in a change being flagged.
1480
+ Fixes #8310.
1481
+ Backport of #8311.</p>
1482
+
1483
+ <p><em>Alisdair McDiarmid</em></p></li>
1484
+ <li><p>Prevent mass assignment to the type column of polymorphic associations when using <code>build</code>.
1485
+ Fixes #8265.
1486
+ Backport of #8291.</p>
1487
+
1488
+ <p><em>Yves Senn</em></p></li>
1489
+ <li><p>When running migrations on Postgresql, the <code>:limit</code> option for <code>binary</code> and <code>text</code> columns is
1490
+ silently dropped.
1491
+ Previously, these migrations caused sql exceptions, because Postgresql doesn&#39;t support limits
1492
+ on these types.</p>
1493
+
1494
+ <p><em>Victor Costan</em></p></li>
1495
+ <li><p><code>#pluck</code> can be used on a relation with <code>select</code> clause.
1496
+ Fixes #7551.
1497
+ Backport of #8176.</p>
1498
+
1499
+ <p>Example:</p>
1500
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">Topic.select([:approved, :id]).order(:id).pluck(:id)
1501
+ </code></pre></div>
1502
+ <p><em>Yves Senn</em></p></li>
1503
+ <li><p>Use <code>nil?</code> instead of <code>blank?</code> to check whether dynamic finder with a bang
1504
+ should raise RecordNotFound.
1505
+ Fixes #7238.</p>
1506
+
1507
+ <p><em>Nikita Afanasenko</em></p></li>
1508
+ <li><p>Fix deleting from a HABTM join table upon destroying an object of a model
1509
+ with optimistic locking enabled.
1510
+ Fixes #5332.</p>
1511
+
1512
+ <p><em>Nick Rogers</em></p></li>
1513
+ <li><p>Use query cache/uncache when using ENV[&quot;DATABASE_URL&quot;].
1514
+ Fixes #6951.
1515
+ Backport of #8074.</p>
1516
+
1517
+ <p><em>kennyj</em></p></li>
1518
+ <li><p>Do not create useless database transaction when building <code>has_one</code> association.</p>
1519
+
1520
+ <p>Example:</p>
1521
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">User.has_one :profile
1522
+ User.new.build_profile
1523
+ </code></pre></div>
1524
+ <p>Backport of #8154.</p>
1525
+
1526
+ <p><em>Bogdan Gusiev</em></p></li>
1527
+ <li><p><code>AR::Base#attributes_before_type_cast</code> now returns unserialized values for serialized attributes.</p>
1528
+
1529
+ <p><em>Nikita Afanasenko</em></p></li>
1530
+ <li><p>Fix issue that raises <code>NameError</code> when overriding the <code>accepts_nested_attributes</code> in child classes.</p>
1531
+
1532
+ <p>Before:</p>
1533
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">class Shared::Person &lt; ActiveRecord::Base
1534
+ has_one :address
1535
+
1536
+ accepts_nested_attributes :address, :reject_if =&gt; :all_blank
1537
+ end
1538
+
1539
+ class Person &lt; Shared::Person
1540
+ accepts_nested_attributes :address
1541
+ end
1542
+
1543
+ Person
1544
+ #=&gt; NameError: method `address_attributes=&#39; not defined in Person
1545
+ </code></pre></div>
1546
+ <p>After:</p>
1547
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">Person
1548
+ #=&gt; Person(id: integer, ...)
1549
+ </code></pre></div>
1550
+ <p>Fixes #8131.</p>
1551
+
1552
+ <p><em>Gabriel Sobrinho, Ricardo Henrique</em></p></li>
1553
+ </ul>
1554
+
1555
+ <p><em>Active Resource</em></p>
1556
+
1557
+ <p>No changes.</p>
1558
+
1559
+ <p><em>Active Support</em></p>
1560
+
1561
+ <ul>
1562
+ <li><p>Fix DateTime comparison with DateTime::Infinity object.</p>
1563
+
1564
+ <p><em>Dan Kubb</em></p></li>
1565
+ <li><p>Remove surrogate unicode character encoding from ActiveSupport::JSON.encode
1566
+ The encoding scheme was broken for unicode characters outside the basic
1567
+ multilingual plane; since json is assumed to be UTF-8, and we already force the
1568
+ encoding to UTF-8 simply pass through the un-encoded characters.</p>
1569
+
1570
+ <p><em>Brett Carter</em></p></li>
1571
+ <li><p>Fix mocha v0.13.0 compatibility. <em>James Mead</em></p></li>
1572
+ <li><p><code>#as_json</code> isolates options when encoding a hash. [Backport #8185]
1573
+ Fix #8182</p>
1574
+
1575
+ <p><em>Yves Senn</em></p></li>
1576
+ <li><p>Handle the possible Permission Denied errors atomic.rb might trigger due to
1577
+ its chown and chmod calls. [Backport #8027]</p>
1578
+
1579
+ <p><em>Daniele Sluijters</em></p></li>
1580
+ </ul>
1581
+
1582
+ <p><em>Railties</em></p>
1583
+
1584
+ <p>No changes.</p>
1585
+
1586
+ <p><em>Full listing</em> </p>
1587
+
1588
+ <p>To see the full list of changes, <a href="https://github.com/rails/rails/compare/v3.2.12...v3.2.13.rc1">check out all the commits on
1589
+ GitHub</a>.</p>
1590
+
1591
+ <h2>SHA-1</h2>
1592
+
1593
+ <p>If you&#39;d like to verify that your gem is the same as the one I&#39;ve uploaded,
1594
+ please use these SHA-1 hashes:</p>
1595
+
1596
+ <ul>
1597
+ <li><code>6a33c2d10abb5512499addb675df658e179f2e79</code> actionmailer-3.2.13.rc1.gem</li>
1598
+ <li><code>11d8303470698c5b0ac68f187a15093c07383c89</code> actionpack-3.2.13.rc1.gem</li>
1599
+ <li><code>a72dafd8b1e3372cc4dda9015b93bf5509b25baa</code> activemodel-3.2.13.rc1.gem</li>
1600
+ <li><code>3c6463ab11658b5ab0fe6a4ad06eb52968ef4492</code> activerecord-3.2.13.rc1.gem</li>
1601
+ <li><code>06cec200b95dc1f64614cd03432e9ab06742a865</code> activeresource-3.2.13.rc1.gem</li>
1602
+ <li><code>5ff59cacae5295baf30a6fb8fb656037f22af3c2</code> activesupport-3.2.13.rc1.gem</li>
1603
+ <li><code>facf4549445922d9dc2a836283ae928fa52df4f8</code> rails-3.2.13.rc1.gem</li>
1604
+ <li><code>55e44f621efbf531d9ccade6d27259f7dabae167</code> railties-3.2.13.rc1.gem</li>
1605
+ </ul>
1606
+
1607
+ <p>&lt;3&lt;3&lt;3</p>
1608
+ ]]></content>
1609
+ </entry>
1610
+
1611
+ <entry>
1612
+ <title>Rails 4.0: Beta 1 released!</title>
1613
+ <author>
1614
+ <name>dhh</name>
1615
+ </author>
1616
+ <link href="http://weblog.rubyonrails.org/2013/2/25/Rails-4-0-beta1/"/>
1617
+ <updated>2013-02-25T16:00:00-08:00</updated>
1618
+ <id>http://weblog.rubyonrails.org/2013/2/25/Rails-4-0-beta1/</id>
1619
+ <content type="html"><![CDATA[<p>Hot on the heels of the first production version of Ruby 2.0 comes the first beta version of Rails 4.0. The two form a great pair and are already running in production on a number of applications, including <a href="http://basecamp.com/breeze">Basecamp Breeze</a>. In fact, Ruby 2.0 is the preferred Ruby to use with Rails 4.0.</p>
1620
+
1621
+ <p>The purpose of this beta is to get as many people as possible to try to upgrade from Rails 3.2 and earlier and to get an adventurous few to start new applications directly on Rails 4.0. That&#39;s the only way we&#39;re going to suss out all the issues and ensure that we can launch a solid final release. So please help us with that if you can!</p>
1622
+
1623
+ <p>Rails 4.0 is packed with new goodies and farewells to old goodies past their expiration date. </p>
1624
+
1625
+ <p>A big focus has been on making it dead simple to build modern web applications that are screaming fast without needing to go the client-side JS/JSON server route. Much of this work was <a href="http://37signals.com/svn/posts/3112-how-basecamp-next-got-to-be-so-damn-fast-without-using-much-client-side-ui">pioneered for Rails in the new version of Basecamp</a> and focuses on three aspects:</p>
1626
+
1627
+ <ol>
1628
+ <li>Make it super easy to do Russian Doll-caching through <a href="http://37signals.com/svn/posts/3113-how-key-based-cache-expiration-works">key-based expiration</a> with automatic dependency management of nested templates (explored first in the <a href="https://github.com/rails/cache_digests">cache_digests</a> plugin).</li>
1629
+ <li>Speed-up the client-side with <a href="https://github.com/rails/turbolinks/">Turbolinks</a>, which essentially turns your app into a single-page javascript application in terms of speed, but with none of the developmental drawbacks (except, maybe, compatibility issues with some existing JavaScript packages).</li>
1630
+ <li><a href="https://github.com/rails/rails/commit/ed5c938fa36995f06d4917d9543ba78ed506bb8d">Declarative etags</a> makes it even easier to ensure you&#39;re taking advantage of HTTP freshness.</li>
1631
+ </ol>
1632
+
1633
+ <p>Rails is of course still a great JSON server for people who want to build client-side JS views, but with the progress we&#39;ve made for Rails 4.0, you certainly won&#39;t need to go down that route just to have a super fast application.</p>
1634
+
1635
+ <p>We&#39;ve also added <a href="http://tenderlovemaking.com/2012/07/30/is-it-live.html">live streaming for persistent connections</a> and Rails 4.0 is now safe for threaded servers out of the box (no more need for config.threadsafe!).</p>
1636
+
1637
+ <p>Active Record has received a ton of love as well to make everything related to scoping and the query structure more consistent.</p>
1638
+
1639
+ <p>Given all the fun we&#39;ve had with security issues, we have some great updates there as well:</p>
1640
+
1641
+ <ul>
1642
+ <li>Session store is now encrypted by default (formerly just signed).</li>
1643
+ <li><a href="https://github.com/rails/strong_parameters">Strong Parameters</a> take over from attr<em>protected (now a &lt;a href=&quot;https://github.com/rails/protected</em>attributes&quot;&gt;plugin</a>) to guard against foreign parameters.</li>
1644
+ <li>Security headers like X-Frame-Options, X-XSS-Protection, X-Content-Type-Options are on by default with solid values.</li>
1645
+ <li>XML Parameter parsing has been sent to a <a href="https://github.com/rails/actionpack-xml_parser">plugin</a>.</li>
1646
+ </ul>
1647
+
1648
+ <p>On top of these new features and fixes, we have hundreds more of all sorts. Everything has been combed over, streamlined, simplified, and we&#39;ve extracted out lots of old APIs and things that just don&#39;t fit &quot;most people most of the time&quot;. </p>
1649
+
1650
+ <p><a href="https://github.com/rails/activeresource">Active Resource</a>, <a href="https://github.com/rails/rails-observers">Active Record Observers</a>, and Action Pack <a href="https://github.com/rails/actionpack-page_caching">page</a> and <a href="https://github.com/rails/actionpack-action_caching">action caching</a> are all examples of things that are no longer in core, but lives on in plugins.</p>
1651
+
1652
+ <p>We encourage you to peruse the CHANGELOGs for all the Rails frameworks and delight over the hundreds of improvements we&#39;ve made to Rails 4.0: <a href="https://github.com/rails/rails/blob/v4.0.0.beta1/actionpack/CHANGELOG.md">Action Pack</a>, <a href="https://github.com/rails/rails/blob/v4.0.0.beta1/activemodel/CHANGELOG.md">Active Model</a>, <a href="https://github.com/rails/rails/blob/v4.0.0.beta1/activerecord/CHANGELOG.md">Active Record</a>, <a href="https://github.com/rails/rails/blob/v4.0.0.beta1/activesupport/CHANGELOG.md">Active Support</a>, <a href="https://github.com/rails/rails/blob/v4.0.0.beta1/railties/CHANGELOG.md">Rails</a>.</p>
1653
+
1654
+ <p>Now let&#39;s all work together to ensure the release is final and enjoy the bad-ass combination of Ruby on Rails 24! (Or 42?). Please report all the issues you find on the <a href="https://github.com/rails/rails/issues?state=open">Rails issue tracker</a>. We&#39;re still working on the <a href="http://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#upgrading-from-rails-3-2-to-rails-4-0">upgrade guide from 3.2 to 4.0</a>, but that&#39;s a good place to start for help on how to do it. As always, install betas with <code>gem install rails --version 4.0.0.beta1 --no-ri --no-rdoc</code> (--pre and ri generation is busted on RubyGems 2.0 at the moment) or depend on the <a href="https://github.com/rails/rails/tree/v4.0.0.beta1">v4.0.0.beta1 tag</a>.</p>
1655
+ ]]></content>
1656
+ </entry>
1657
+
1658
+ <entry>
1659
+ <title>Maintenance policy for Ruby on Rails</title>
1660
+ <author>
1661
+ <name>steveklabnik</name>
1662
+ </author>
1663
+ <link href="http://weblog.rubyonrails.org/2013/2/24/maintenance-policy-for-ruby-on-rails/"/>
1664
+ <updated>2013-02-24T00:00:00-08:00</updated>
1665
+ <id>http://weblog.rubyonrails.org/2013/2/24/maintenance-policy-for-ruby-on-rails/</id>
1666
+ <content type="html"><![CDATA[<p>Since the most recent patch releases there has been some confusion about what
1667
+ versions of Ruby on Rails are currently supported, and when people can expect
1668
+ new versions. Our maintenance policy is as follows. </p>
1669
+
1670
+ <p>Support of the Rails framework is divided into four groups: New features, bug
1671
+ fixes, security issues, and severe security issues. They are handled as
1672
+ follows, all versions in x.y.z format:</p>
1673
+
1674
+ <h2>New Features</h2>
1675
+
1676
+ <p>New Features are only added to the master branch and will not be made available
1677
+ in point releases.</p>
1678
+
1679
+ <h2>Bug fixes</h2>
1680
+
1681
+ <p>Only the latest release series will receive bug fixes. When enough bugs are
1682
+ fixed and its deemed worthy to release a new gem, this is the branch it happens
1683
+ from.</p>
1684
+
1685
+ <p>Currently included series: 3.2.z</p>
1686
+
1687
+ <p>After the Rails 4 release: 4.0.z</p>
1688
+
1689
+ <h2>Security issues:</h2>
1690
+
1691
+ <p>The current release series and the next most recent one will receive patches
1692
+ and new versions in case of a security issue. </p>
1693
+
1694
+ <p>These releases are created by taking the last released version, applying the
1695
+ security patches, and releasing. Those patches are then applied to the end of
1696
+ the x-y-stable branch. For example, a theoretical 1.2.3 security release would
1697
+ be built from 1.2.2, and then added to the end of 1-2-stable. This means that
1698
+ security releases are easy to upgrade to if you&#39;re running the latest version
1699
+ of Rails.</p>
1700
+
1701
+ <p>Currently included series: 3.2.z, 3.1.z</p>
1702
+
1703
+ <p>After the Rails 4 release: 4.0.z, 3.2.z</p>
1704
+
1705
+ <h2>Severe security issues:</h2>
1706
+
1707
+ <p>For severe security issues we will provide new versions as above, and also the
1708
+ last major release series will receive patches and new versions. The
1709
+ classification of the security issue is judged by the core team.</p>
1710
+
1711
+ <p>Currently included series: 3.2.z, 3.1.z, 2.3.z</p>
1712
+
1713
+ <p>After the Rails 4 release: 4.0.z, 3.2.z</p>
1714
+
1715
+ <h2>Unsupported Release Series</h2>
1716
+
1717
+ <p>When a release series is no longer supported, it&#39;s your own responsibility to
1718
+ deal with bugs and security issues. We may provide back-ports of the fixes and
1719
+ publish them to git, however there will be no new versions released. If you
1720
+ are not comfortable maintaining your own versions, you should upgrade to a
1721
+ supported version.</p>
1722
+
1723
+ <p>You should also be aware that Ruby 1.8 will reach End of Life in June 2013, no
1724
+ further Ruby security releases will be provided after that point. If your
1725
+ application is only compatible Ruby 1.8 you should upgrade accordingly.</p>
1726
+ ]]></content>
1727
+ </entry>
1728
+
1729
+ <entry>
1730
+ <title>[SEC][ANN] Rails 3.2.12, 3.1.11, and 2.3.17 have been released!</title>
1731
+ <author>
1732
+ <name>tenderlove</name>
1733
+ </author>
1734
+ <link href="http://weblog.rubyonrails.org/2013/2/11/SEC-ANN-Rails-3-2-12-3-1-11-and-2-3-17-have-been-released/"/>
1735
+ <updated>2013-02-11T00:00:00-08:00</updated>
1736
+ <id>http://weblog.rubyonrails.org/2013/2/11/SEC-ANN-Rails-3-2-12-3-1-11-and-2-3-17-have-been-released/</id>
1737
+ <content type="html"><![CDATA[<p>Hi everybody.</p>
1738
+
1739
+ <p>I&#39;d like to announce that Rails 3.2.12, 3.1.11, and 2.3.17 have been released.</p>
1740
+
1741
+ <p>3.2.12 and 3.1.11 contain one security fix, and 2.3.17 contains two security fixes. It is recommended that you update immediately.</p>
1742
+
1743
+ <p>You can read about the security fixes by following these links:</p>
1744
+
1745
+ <ul>
1746
+ <li><a href="https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/AFBKNY7VSH8">CVE-2013-0276</a></li>
1747
+ <li><a href="https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/KtmwSbEpzrU">CVE-2013-0277</a></li>
1748
+ </ul>
1749
+
1750
+ <p>Please note that today a new JSON gem was released, and it also contains an important security fix. You should update the JSON gem as soon as possible. You can read about the security issue in the JSON gem here:</p>
1751
+
1752
+ <ul>
1753
+ <li><a href="https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/4_YvCpLzL58">CVE-2013-0269</a></li>
1754
+ </ul>
1755
+
1756
+ <p>In order to ease upgrading, the only major changes in each gem is the security fix. To see the detailed changes for each version, follow the links below:</p>
1757
+
1758
+ <ul>
1759
+ <li><a href="https://github.com/rails/rails/compare/v3.2.11...v3.2.12">Changes in 3.2.12</a></li>
1760
+ <li><a href="https://github.com/rails/rails/compare/v3.1.10...v3.1.11">Changes in 3.1.11</a></li>
1761
+ <li><a href="https://github.com/rails/rails/compare/v2.3.16...v2.3.17">Changes in 2.3.17</a></li>
1762
+ </ul>
1763
+
1764
+ <p>Thanks to the people who responsibly reported these security issues.</p>
1765
+
1766
+ <p>Please note that per our <a href="https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/G4TTUDDYbNA">maintenance policy</a> there will be no 3.0.x version released.</p>
1767
+
1768
+ <p>Here are the SHA-1 checksums for each gem:</p>
1769
+
1770
+ <h2>Rails 3.2.12</h2>
1771
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *3.2.*
1772
+ 5627c6d044cc52876128459d960f8805006b5f97 actionmailer-3.2.12.gem
1773
+ 336f76c045b6bcbd204831897131182cff82ddf8 actionpack-3.2.12.gem
1774
+ 89bec5d68861ad5d79ca776ef5d6df7c1cfc2b11 activemodel-3.2.12.gem
1775
+ 7d4327c54900f45c60947a63350e865843e193ef activerecord-3.2.12.gem
1776
+ 4b8ed4190f98a85b800ee7893bae5afd1bee0874 activeresource-3.2.12.gem
1777
+ c9e44eed288140f556e6543b93fc45f8dd57a415 activesupport-3.2.12.gem
1778
+ 24b3b4633d7f131e61e50decc3aa11590941c6e2 rails-3.2.12.gem
1779
+ a84262f1968e83141d290c034b20a28d38886d10 railties-3.2.12.gem
1780
+ </code></pre></div>
1781
+ <h2>Rails 3.1.11</h2>
1782
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *3.1.*
1783
+ d80816e69614c1f0d96cb7d0f4a38bfdc8d84ff5 actionmailer-3.1.11.gem
1784
+ f65cea0682b6051869d4125f7b441a7c6f59fcbe actionpack-3.1.11.gem
1785
+ 549ec2b67d4332b38cef1620b23e00e50e0774e6 activemodel-3.1.11.gem
1786
+ 3d342764b7ba3bae05190f15bcb35d401cd8121e activerecord-3.1.11.gem
1787
+ 19bd70bad6c4e4a555127a7738e71ac4829e6f61 activeresource-3.1.11.gem
1788
+ 7267b2f87bea5bd285f5d1bfe49bb2ba19df7c94 activesupport-3.1.11.gem
1789
+ ca57e1243451385689343dbe2bb42e23058284df rails-3.1.11.gem
1790
+ 48cc801bdb7c31c4b6939235a60ef3e5008f5dbb railties-3.1.11.gem
1791
+ </code></pre></div>
1792
+ <h2>Rails 2.3.17</h2>
1793
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *2.3.*
1794
+ 5df1fe13db46ac10dec8bb607ef515881dcf09c5 actionmailer-2.3.17.gem
1795
+ d1165517a185ae73ca8a4ac89549e695a23fedfa actionpack-2.3.17.gem
1796
+ b24ff71e46b798d7c38504531cb7622955d9a20c activerecord-2.3.17.gem
1797
+ 9cc2a7bd60a959dcba099425954a1b9c53235ce5 activeresource-2.3.17.gem
1798
+ 4ccc935fdc4d7ede78a1c376453ecb502e48b7ed activesupport-2.3.17.gem
1799
+ 9613a97cb726f00de59ad6d0f901f7434f9c4733 rails-2.3.17.gem
1800
+ </code></pre></div>
1801
+ <p>&lt;3&lt;3&lt;3</p>
1802
+ ]]></content>
1803
+ </entry>
1804
+
1805
+ <entry>
1806
+ <title>[SEC][ANN] Rails 3.0.20, and 2.3.16 have been released!</title>
1807
+ <author>
1808
+ <name>tenderlove</name>
1809
+ </author>
1810
+ <link href="http://weblog.rubyonrails.org/2013/1/28/Rails-3-0-20-and-2-3-16-have-been-released/"/>
1811
+ <updated>2013-01-28T00:00:00-08:00</updated>
1812
+ <id>http://weblog.rubyonrails.org/2013/1/28/Rails-3-0-20-and-2-3-16-have-been-released/</id>
1813
+ <content type="html"><![CDATA[<p>Hi everybody.</p>
1814
+
1815
+ <p>I&#39;d like to announce that 3.0.20, and 2.3.16 have been released. These releases contain one <strong>extremely critical security fix</strong> so please update <strong>IMMEDIATELY</strong>.</p>
1816
+
1817
+ <p>You can read about the security fix by following this link:</p>
1818
+
1819
+ <ul>
1820
+ <li><a href="https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/1h2DR63ViGo">CVE-2013-0333</a></li>
1821
+ </ul>
1822
+
1823
+ <p>In order to ease upgrading, the only major changes in each gem is the security fix. To see the detailed changes for each version, follow the links below:</p>
1824
+
1825
+ <ul>
1826
+ <li><a href="https://github.com/rails/rails/compare/v3.0.19...v3.0.20">Changes in 3.0.20</a></li>
1827
+ <li><a href="https://github.com/rails/rails/compare/v2.3.15...v2.3.16">Changes in 2.3.16</a></li>
1828
+ </ul>
1829
+
1830
+ <p>Thanks to the people who responsibly reported these security issues.</p>
1831
+
1832
+ <p>Please note that per our <a href="https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/G4TTUDDYbNA">maintenance policy</a> this will be the last release for the 3.0.x series.</p>
1833
+
1834
+ <p>Here are the SHA-1 checksums for each gem:</p>
1835
+
1836
+ <h3>3.0.20</h3>
1837
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *3.0.20*
1838
+ c5b1a446d921dbd512a2d418c50f144b4540a657 actionmailer-3.0.20.gem
1839
+ 79ec243f6ec301b0a73ad45f89d4ea2335f90346 actionpack-3.0.20.gem
1840
+ 80c7d881ed64ed7a66f4d82b12c2b98b43f6fbde activemodel-3.0.20.gem
1841
+ d8fc6e02bf46f9b5f86c3a954932d67da211302b activerecord-3.0.20.gem
1842
+ e465e7d582c6d72c487d132e5fac3c3af4626353 activeresource-3.0.20.gem
1843
+ 5bc7b2f1ad70a2781c4a41a2f4eaa75b999750e4 activesupport-3.0.20.gem
1844
+ ba9fb9dba41ce047feef11b4179cd9c3f81b2857 rails-3.0.20.gem
1845
+ 42b0025e4cb483d491a809b9d9deb6fd182c2a57 railties-3.0.20.gem
1846
+ </code></pre></div>
1847
+ <h3>2.3.16</h3>
1848
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *2.3.16*
1849
+ ab1a47a08d42352d9e8c276d28e6ed6990c23556 actionmailer-2.3.16.gem
1850
+ f81ac75eb9edbb363a6d7bbe175a208e97ea3d4f actionpack-2.3.16.gem
1851
+ 4ce36062f1f0b326b16e42b9fde5f1ab0610bffc activerecord-2.3.16.gem
1852
+ 3698787f9ab8432f0c10268e22fbfcf682fa79cc activeresource-2.3.16.gem
1853
+ 90490f62db73c4be9ed69d96592afa0b98e79738 activesupport-2.3.16.gem
1854
+ 239253159f9793e2372c83dcf9d0bd7bff343f7d rails-2.3.16.gem
1855
+ </code></pre></div>
1856
+ <p>&lt;3&lt;3&lt;3</p>
1857
+ ]]></content>
1858
+ </entry>
1859
+
1860
+ <entry>
1861
+ <title>[SEC][ANN] Rails 3.2.11, 3.1.10, 3.0.19, and 2.3.15 have been released!</title>
1862
+ <author>
1863
+ <name>tenderlove</name>
1864
+ </author>
1865
+ <link href="http://weblog.rubyonrails.org/2013/1/8/Rails-3-2-11-3-1-10-3-0-19-and-2-3-15-have-been-released/"/>
1866
+ <updated>2013-01-08T00:00:00-08:00</updated>
1867
+ <id>http://weblog.rubyonrails.org/2013/1/8/Rails-3-2-11-3-1-10-3-0-19-and-2-3-15-have-been-released/</id>
1868
+ <content type="html"><![CDATA[<p>Hi everybody.</p>
1869
+
1870
+ <p>I&#39;d like to announce that 3.2.11, 3.1.10, 3.0.19, and 2.3.15 have been released. These releases contain two <strong>extremely critical security fixes</strong> so please update <strong>IMMEDIATELY</strong>.</p>
1871
+
1872
+ <p>You can read about the security fixes by following these links:</p>
1873
+
1874
+ <ul>
1875
+ <li><a href="https://groups.google.com/group/rubyonrails-security/browse_thread/thread/b75585bae4326af2">CVE-2013-0155</a></li>
1876
+ <li><a href="https://groups.google.com/group/rubyonrails-security/browse_thread/thread/eb56e482f9d21934">CVE-2013-0156</a></li>
1877
+ </ul>
1878
+
1879
+ <p>In order to ease upgrading, the only major changes in each gem are the security fixes. To see the detailed changes for each version, follow the links below:</p>
1880
+
1881
+ <ul>
1882
+ <li><a href="https://github.com/rails/rails/compare/v3.2.10...v3.2.11">Changes in 3.2.11</a></li>
1883
+ <li><a href="https://github.com/rails/rails/compare/v3.1.9...v3.1.10">Changes in 3.1.10</a></li>
1884
+ <li><a href="https://github.com/rails/rails/compare/v3.0.18...v3.0.19">Changes in 3.0.19</a></li>
1885
+ <li><a href="https://github.com/rails/rails/compare/v2.3.14...v2.3.15">Changes in 2.3.15</a></li>
1886
+ </ul>
1887
+
1888
+ <p>Thanks to the people who responsibly reported these security issues.</p>
1889
+
1890
+ <p>Here are the SHA-1 checksums for each gem:</p>
1891
+
1892
+ <h3>3.2.11</h3>
1893
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *3.2.11*
1894
+ 933cd2821b30cdff4a2e0b5cc63f4d2c6b29affe actionmailer-3.2.11.gem
1895
+ 54731c51b55bf0215392971b982139775c0bfa2b actionpack-3.2.11.gem
1896
+ 5ccde66568d8051405c01063f1afaed13bd01082 activemodel-3.2.11.gem
1897
+ f360c17968486479b0a4207e7eccbe379186a9d2 activerecord-3.2.11.gem
1898
+ c61ff513be8a8aef898d2e5c4c9508d60727c556 activeresource-3.2.11.gem
1899
+ 41a4e8c382594283026d977554c1e18233198ca8 activesupport-3.2.11.gem
1900
+ 8fa6d19a0daea910e39a0911b2240c2a7b630fb1 rails-3.2.11.gem
1901
+ ffaec7c3e5211283108cf5afab8e79be76090a0d railties-3.2.11.gem
1902
+ </code></pre></div>
1903
+ <h3>3.1.10</h3>
1904
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *3.1.10*
1905
+ e3dce983ebd0ee8970c5ddab46b05ac432c8b029 actionmailer-3.1.10.gem
1906
+ 84e536e732255e5dfd3d8053c10ed98dcb45ac80 actionpack-3.1.10.gem
1907
+ db1a3ac836d988dc1fc7c64d29ded7a277047419 activemodel-3.1.10.gem
1908
+ ea3ad8514265516033009d97efc1fe7b3d2b09ed activerecord-3.1.10.gem
1909
+ 0843646278b42d9ca796e157295851fd9938fe96 activeresource-3.1.10.gem
1910
+ b55ef7f66de0bb79fcfa480e8df3696bffbff7f8 activesupport-3.1.10.gem
1911
+ 4ed7d159191faa1a469cd9efdf9e6a4cdc907195 rails-3.1.10.gem
1912
+ f288986df0fabd2035569199ea3d5f1f46a56db7 railties-3.1.10.gem
1913
+ </code></pre></div>
1914
+ <h3>3.0.19</h3>
1915
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *3.0.19*
1916
+ f8376f907b2230ac75882e1a3cfa8d5cdd6df800 actionmailer-3.0.19.gem
1917
+ 68b319d86530a5d4291e13d6ab5f357a1e52c05b actionpack-3.0.19.gem
1918
+ f0fb577ea7446ff229752bc799ca86dd53aa9cda activemodel-3.0.19.gem
1919
+ c12324d78b22697d426148010901f79b366c0502 activerecord-3.0.19.gem
1920
+ 8dbc7c8c80f5baeec823966aa225b23f4c2a799c activeresource-3.0.19.gem
1921
+ b525b778f82f844a56ff993211825b9811bf82bd activesupport-3.0.19.gem
1922
+ c2beb0711d28a07cb2747c83962c7d453951e2d6 rails-3.0.19.gem
1923
+ de286ada16b3fc76129767dc612926e0b4f71dda railties-3.0.19.gem
1924
+ </code></pre></div>
1925
+ <h3>2.3.15</h3>
1926
+ <div class="highlight"><pre><code class="text language-text" data-lang="text">[aaron@higgins dist]$ shasum *2.3.15*
1927
+ 5ce45c70851dd534a72814620a6e57b42d360b88 actionmailer-2.3.15.gem
1928
+ fa174c40f17fa5db952ba3a7c95a4ab0b5467594 actionpack-2.3.15.gem
1929
+ e7391c92c82f974be7e65765819824e87bdb3cfd activerecord-2.3.15.gem
1930
+ 4644b7a27993f7860d9e176f51dfa52d8f029ec9 activeresource-2.3.15.gem
1931
+ 64843e3676c20a49060605546dfcdddaef2ea1a8 activesupport-2.3.15.gem
1932
+ c8c0c49c63ca0f9acc3e0967b38d92b1c0b115af rails-2.3.15.gem
1933
+ </code></pre></div>
1934
+ <p>&lt;3&lt;3&lt;3</p>
1935
+ ]]></content>
1936
+ </entry>
1937
+
1938
+ </feed>