activesupport 2.2.3 → 2.3.2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of activesupport might be problematic. Click here for more details.
- data/CHANGELOG +128 -89
- data/lib/active_support.rb +31 -33
- data/lib/active_support/backtrace_cleaner.rb +72 -0
- data/lib/active_support/buffered_logger.rb +9 -7
- data/lib/active_support/cache.rb +13 -8
- data/lib/active_support/cache/drb_store.rb +2 -3
- data/lib/active_support/cache/mem_cache_store.rb +6 -1
- data/lib/active_support/cache/strategy/local_cache.rb +104 -0
- data/lib/active_support/callbacks.rb +20 -21
- data/lib/active_support/core_ext.rb +1 -1
- data/lib/active_support/core_ext/array.rb +2 -0
- data/lib/active_support/core_ext/array/conversions.rb +26 -13
- data/lib/active_support/core_ext/array/wrapper.rb +24 -0
- data/lib/active_support/core_ext/benchmark.rb +13 -6
- data/lib/active_support/core_ext/cgi/escape_skipping_slashes.rb +14 -5
- data/lib/active_support/core_ext/class/attribute_accessors.rb +24 -24
- data/lib/active_support/core_ext/class/delegating_attributes.rb +20 -19
- data/lib/active_support/core_ext/class/inheritable_attributes.rb +34 -34
- data/lib/active_support/core_ext/date/conversions.rb +3 -3
- data/lib/active_support/core_ext/date_time/conversions.rb +1 -1
- data/lib/active_support/core_ext/enumerable.rb +9 -0
- data/lib/active_support/core_ext/exception.rb +12 -8
- data/lib/active_support/core_ext/file/atomic.rb +2 -2
- data/lib/active_support/core_ext/hash/conversions.rb +32 -54
- data/lib/active_support/core_ext/hash/indifferent_access.rb +6 -0
- data/lib/active_support/core_ext/hash/keys.rb +1 -1
- data/lib/active_support/core_ext/hash/slice.rb +8 -1
- data/lib/active_support/core_ext/logger.rb +8 -6
- data/lib/active_support/core_ext/module/aliasing.rb +3 -3
- data/lib/active_support/core_ext/module/attr_accessor_with_default.rb +4 -4
- data/lib/active_support/core_ext/module/attribute_accessors.rb +24 -24
- data/lib/active_support/core_ext/module/delegation.rb +29 -3
- data/lib/active_support/core_ext/module/synchronization.rb +5 -5
- data/lib/active_support/core_ext/object/conversions.rb +2 -1
- data/lib/active_support/core_ext/object/misc.rb +16 -0
- data/lib/active_support/core_ext/range/conversions.rb +1 -1
- data/lib/active_support/core_ext/rexml.rb +29 -24
- data/lib/active_support/core_ext/string/inflections.rb +3 -3
- data/lib/active_support/core_ext/time/calculations.rb +1 -2
- data/lib/active_support/core_ext/time/conversions.rb +1 -1
- data/lib/active_support/core_ext/try.rb +36 -0
- data/lib/active_support/dependencies.rb +18 -14
- data/lib/active_support/deprecation.rb +10 -57
- data/lib/active_support/duration.rb +3 -1
- data/lib/active_support/inflections.rb +1 -0
- data/lib/active_support/inflector.rb +16 -7
- data/lib/active_support/json/decoding.rb +21 -3
- data/lib/active_support/json/encoders/date.rb +1 -1
- data/lib/active_support/json/encoders/date_time.rb +1 -1
- data/lib/active_support/json/encoders/hash.rb +10 -11
- data/lib/active_support/json/encoders/time.rb +1 -1
- data/lib/active_support/json/encoding.rb +23 -29
- data/lib/active_support/locale/en.yml +3 -2
- data/lib/active_support/memoizable.rb +61 -43
- data/lib/active_support/message_encryptor.rb +70 -0
- data/lib/active_support/message_verifier.rb +46 -0
- data/lib/active_support/multibyte.rb +6 -30
- data/lib/active_support/multibyte/chars.rb +30 -9
- data/lib/active_support/multibyte/unicode_database.rb +4 -4
- data/lib/active_support/option_merger.rb +7 -1
- data/lib/active_support/ordered_hash.rb +75 -27
- data/lib/active_support/secure_random.rb +8 -6
- data/lib/active_support/test_case.rb +32 -17
- data/lib/active_support/testing/{core_ext/test/unit/assertions.rb → assertions.rb} +13 -20
- data/lib/active_support/testing/declarative.rb +21 -0
- data/lib/active_support/testing/deprecation.rb +55 -0
- data/lib/active_support/testing/performance.rb +1 -1
- data/lib/active_support/testing/setup_and_teardown.rb +57 -86
- data/lib/active_support/time_with_zone.rb +8 -6
- data/lib/active_support/values/time_zone.rb +1 -0
- data/lib/active_support/vendor.rb +6 -11
- data/lib/active_support/vendor/i18n-0.1.3/MIT-LICENSE +20 -0
- data/lib/active_support/vendor/i18n-0.1.3/README.textile +20 -0
- data/lib/active_support/vendor/i18n-0.1.3/Rakefile +5 -0
- data/lib/active_support/vendor/i18n-0.1.3/i18n.gemspec +27 -0
- data/lib/active_support/vendor/{i18n-0.0.1 → i18n-0.1.3/lib}/i18n.rb +42 -37
- data/lib/active_support/vendor/{i18n-0.0.1 → i18n-0.1.3/lib}/i18n/backend/simple.rb +37 -39
- data/lib/active_support/vendor/{i18n-0.0.1 → i18n-0.1.3/lib}/i18n/exceptions.rb +3 -3
- data/lib/active_support/vendor/i18n-0.1.3/test/all.rb +5 -0
- data/lib/active_support/vendor/i18n-0.1.3/test/i18n_exceptions_test.rb +100 -0
- data/lib/active_support/vendor/i18n-0.1.3/test/i18n_test.rb +125 -0
- data/lib/active_support/vendor/i18n-0.1.3/test/locale/en.rb +1 -0
- data/lib/active_support/vendor/i18n-0.1.3/test/locale/en.yml +3 -0
- data/lib/active_support/vendor/i18n-0.1.3/test/simple_backend_test.rb +568 -0
- data/lib/active_support/vendor/{memcache-client-1.5.1 → memcache-client-1.6.5}/memcache.rb +381 -295
- data/lib/active_support/version.rb +2 -2
- data/lib/active_support/xml_mini.rb +31 -0
- data/lib/active_support/xml_mini/libxml.rb +133 -0
- data/lib/active_support/xml_mini/nokogiri.rb +77 -0
- data/lib/active_support/xml_mini/rexml.rb +108 -0
- metadata +85 -14
- data/lib/active_support/multibyte/utils.rb +0 -61
- data/lib/active_support/testing/core_ext/test.rb +0 -6
- data/lib/active_support/vendor/xml-simple-1.0.11/xmlsimple.rb +0 -1021
data/CHANGELOG
CHANGED
@@ -1,27 +1,66 @@
|
|
1
|
-
*2.2
|
1
|
+
*2.3.2 [Final] (March 15, 2009)*
|
2
2
|
|
3
|
-
*
|
3
|
+
* XmlMini supports LibXML and Nokogiri backends. #2084, #2190 [Bart ten Brinke, Aaron Patterson]
|
4
|
+
Example: XmlMini.backend = 'Nokogiri'
|
5
|
+
|
6
|
+
* Vendorize i18n 0.1.3 gem (fixes issues with incompatible character encodings in Ruby 1.9) #2038 [Akira Matsuda]
|
7
|
+
|
8
|
+
* Update bundled memcache-client from 1.5.0.5 to 1.6.4.99. See http://www.mikeperham.com/2009/02/15/memcache-client-performance/ [Mike Perham]
|
4
9
|
|
5
10
|
* Ruby 1.9.1p0 fix: URI.unescape can decode multibyte chars. #2033 [MOROHASHI Kyosuke]
|
6
11
|
|
12
|
+
* Time#to_s(:rfc822) uses #formatted_offset instead of unreliable and non-standard %z directive #1899 [Zachary Zolton]
|
13
|
+
|
14
|
+
* Make TimeWithZone#to_formatted_s an alias to TimeWithZone#to_s #1796 [Levin Alexander]
|
15
|
+
|
16
|
+
* Introduce Array.wrap(foo) to wrap the argument in an array unless it's already an array. Wraps nil as an empty array. Use instead of Array(foo) and foo.to_a since they treat String as Enumerable. [Jeremy Kemper]
|
17
|
+
|
7
18
|
* TimeWithZone#xmlschema accepts optional fraction_digits argument [#1725 state:resolved] [Nicholas Dainty]
|
8
19
|
|
20
|
+
* Object#tap shim for Ruby < 1.8.7. Similar to Object#returning, tap yields self then returns self. [Jeremy Kemper]
|
21
|
+
array.select { ... }.tap(&:inspect).map { ... }
|
22
|
+
|
9
23
|
* TimeWithZone#- gives correct result with wrapped DateTime, and with DateTime argument [Geoff Buesing]
|
10
24
|
|
25
|
+
* Updated i18n gem to version 0.1.1 #1635 [Yaroslav Markin]
|
26
|
+
|
27
|
+
* Add :allow_nil option to delegate. #1127 [Sergio Gil]
|
28
|
+
|
29
|
+
* Add Benchmark.ms convenience method to benchmark realtime in milliseconds. [Jeremy Kemper]
|
30
|
+
|
31
|
+
* Updated included memcache-client to the 1.5.0.5 version which includes fixes from fiveruns and 37signals to deal with failover and timeouts #1535 [Joshua Sierles]
|
32
|
+
|
11
33
|
* Multibyte: add multibyte-safe Chars#ord rather than falling back to String#ord. #1483 [Jason Cheow]
|
12
34
|
|
35
|
+
* I18n support for Array#to_sentence. Introduces support.array.words_connector, .two_words_connector, and .last_word_connector translation keys. #1397 [Akira Matsuda]
|
13
36
|
|
14
|
-
*
|
37
|
+
* Added ActiveSupport::OrderedHash#each_key and ActiveSupport::OrderedHash#each_value #1410 [Christoffer Sawicki]
|
38
|
+
|
39
|
+
* Added ActiveSupport::MessageVerifier and MessageEncryptor to aid users who need to store signed and/or encrypted messages. [Michael Koziarski]
|
40
|
+
|
41
|
+
* Added ActiveSupport::BacktraceCleaner to cut down on backtrace noise according to filters and silencers [David Heinemeier Hansson]
|
42
|
+
|
43
|
+
* Added Object#try. ( Taken from http://ozmm.org/posts/try.html ) [Chris Wanstrath]
|
44
|
+
|
45
|
+
* Added Enumerable#none? to check that none of the elements match the block #1408 [Damian Janowski]
|
15
46
|
|
16
47
|
* TimeZone offset tests: use current_period, to ensure TimeZone#utc_offset is up-to-date [Geoff Buesing]
|
17
48
|
|
18
49
|
* Update bundled TZInfo to 0.3.12 [Geoff Buesing]
|
19
50
|
|
51
|
+
* Added lambda merging to OptionMerger (especially useful with named_scope and with_options) #726 [Paweł Kondzior]
|
52
|
+
|
53
|
+
|
54
|
+
*2.2.1 [RC2] (November 14th, 2008)*
|
55
|
+
|
20
56
|
* Increment the version of our altered memcache-client to prevent confusion caused when the 1.5.0 gem is installed.
|
21
57
|
|
22
58
|
* Fixed the option merging in Array#to_xml #1126 [Rudolf Gavlas]
|
23
59
|
|
24
|
-
* Make I18n::Backend::Simple reload its translations in development mode [
|
60
|
+
* Make I18n::Backend::Simple reload its translations in development mode [David Heinemeier Hansson/Sven Fuchs]
|
61
|
+
|
62
|
+
|
63
|
+
*2.2.0 [RC1] (October 24th, 2008)*
|
25
64
|
|
26
65
|
* TimeWithZone#freeze: preload instance variables so that we can actually freeze [Geoff Buesing]
|
27
66
|
|
@@ -29,7 +68,7 @@
|
|
29
68
|
|
30
69
|
* Time#advance recognizes fractional days and weeks. Deprecate Durations of fractional months and years #970 [Tom Lea]
|
31
70
|
|
32
|
-
* Add ActiveSupport::Rescuable module abstracting ActionController::Base rescue_from features. [Norbert Crombach, Pratik]
|
71
|
+
* Add ActiveSupport::Rescuable module abstracting ActionController::Base rescue_from features. [Norbert Crombach, Pratik Naik]
|
33
72
|
|
34
73
|
* Switch from String#chars to String#mb_chars for the unicode proxy. [Manfred Stienstra]
|
35
74
|
|
@@ -43,7 +82,7 @@
|
|
43
82
|
|
44
83
|
* Added Inflector#parameterize for easy slug generation ("Donald E. Knuth".parameterize => "donald-e-knuth") #713 [Matt Darby]
|
45
84
|
|
46
|
-
* Changed cache benchmarking to be reported in milliseconds [
|
85
|
+
* Changed cache benchmarking to be reported in milliseconds [David Heinemeier Hansson]
|
47
86
|
|
48
87
|
* Fix Ruby's Time marshaling bug in pre-1.9 versions of Ruby: utc instances are now correctly unmarshaled with a utc zone instead of the system local zone [#900 state:resolved] [Luca Guidi, Geoff Buesing]
|
49
88
|
|
@@ -59,7 +98,7 @@
|
|
59
98
|
|
60
99
|
* Move the test related core_ext stuff out of core_ext so it's only loaded by the test helpers. [Michael Koziarski]
|
61
100
|
|
62
|
-
* Add Inflection rules for String#humanize. #535 [
|
101
|
+
* Add Inflection rules for String#humanize. #535 [Dan Manges]
|
63
102
|
|
64
103
|
ActiveSupport::Inflector.inflections do |inflect|
|
65
104
|
inflect.human(/_cnt$/i, '\1_count')
|
@@ -71,19 +110,19 @@
|
|
71
110
|
|
72
111
|
* Added TimeZone #=~, to support matching zones by regex in time_zone_select. #195 [Ernie Miller]
|
73
112
|
|
74
|
-
* Added Array#second through Array#fifth as aliases for Array#[1] through Array#[4] + Array#forty_two as alias for Array[41] [
|
113
|
+
* Added Array#second through Array#fifth as aliases for Array#[1] through Array#[4] + Array#forty_two as alias for Array[41] [David Heinemeier Hansson]
|
75
114
|
|
76
115
|
* Added test/do declaration style testing to ActiveSupport::TestCase [DHH via Jay Fields]
|
77
116
|
|
78
|
-
* Added Object#present? which is equivalent to !Object#blank? [
|
117
|
+
* Added Object#present? which is equivalent to !Object#blank? [David Heinemeier Hansson]
|
79
118
|
|
80
|
-
* Added Enumberable#many? to encapsulate collection.size > 1 [
|
119
|
+
* Added Enumberable#many? to encapsulate collection.size > 1 [David Heinemeier Hansson/Damian Janowski]
|
81
120
|
|
82
121
|
* Add more standard Hash methods to ActiveSupport::OrderedHash [Steve Purcell]
|
83
122
|
|
84
123
|
* Namespace Inflector, Dependencies, OrderedOptions, and TimeZone under ActiveSupport [Josh Peek]
|
85
124
|
|
86
|
-
* Added StringInquirer for doing things like StringInquirer.new("production").production? # => true and StringInquirer.new("production").development? # => false [
|
125
|
+
* Added StringInquirer for doing things like StringInquirer.new("production").production? # => true and StringInquirer.new("production").development? # => false [David Heinemeier Hansson]
|
87
126
|
|
88
127
|
* Fixed Date#end_of_quarter to not blow up on May 31st [#289 state:resolved] (Danger)
|
89
128
|
|
@@ -120,7 +159,7 @@
|
|
120
159
|
|
121
160
|
* TimeWithZone respects config.active_support.use_standard_json_time_format [Geoff Buesing]
|
122
161
|
|
123
|
-
* Add config.active_support.escape_html_entities_in_json to allow disabling of html entity escaping. [
|
162
|
+
* Add config.active_support.escape_html_entities_in_json to allow disabling of html entity escaping. [Rick Olson]
|
124
163
|
|
125
164
|
* Improve documentation. [Xavier Noria]
|
126
165
|
|
@@ -132,7 +171,7 @@
|
|
132
171
|
|
133
172
|
* TimeWithZone#method_missing: send to utc to advance with dst correctness, otherwise send to time. Adding tests for time calculations methods [Geoff Buesing]
|
134
173
|
|
135
|
-
* Add config.active_support.use_standard_json_time_format setting so that Times and Dates export to ISO 8601 dates. [
|
174
|
+
* Add config.active_support.use_standard_json_time_format setting so that Times and Dates export to ISO 8601 dates. [Rick Olson]
|
136
175
|
|
137
176
|
* TZInfo: Removing unneeded TimezoneProxy class [Geoff Buesing]
|
138
177
|
|
@@ -150,9 +189,9 @@
|
|
150
189
|
|
151
190
|
* TimeWithZone#usec returns 0 instead of error when DateTime is wrapped [Geoff Buesing]
|
152
191
|
|
153
|
-
* Improve documentation. [
|
192
|
+
* Improve documentation. [Ryan Bigg, Jan De Poorter, Cheah Chu Yeow, Xavier Shay, Jack Danger Canty, Emilio Tagua, Xavier Noria, Sunny Ripert]
|
154
193
|
|
155
|
-
* Ensure that TimeWithZone#to_yaml works when passed a YAML::Emitter. [
|
194
|
+
* Ensure that TimeWithZone#to_yaml works when passed a YAML::Emitter. [Rick Olson]
|
156
195
|
|
157
196
|
* Ensure correct TimeWithZone#to_date [Geoff Buesing]
|
158
197
|
|
@@ -184,7 +223,7 @@
|
|
184
223
|
|
185
224
|
* Adding TimeWithZone #marshal_dump and #marshal_load [Geoff Buesing]
|
186
225
|
|
187
|
-
* Add OrderedHash#to_hash [
|
226
|
+
* Add OrderedHash#to_hash [Josh Peek]
|
188
227
|
|
189
228
|
* Adding Time#end_of_day, _quarter, _week, and _year. #9312 [Juanjo Bazan, Tarmo Tänav, BigTitus]
|
190
229
|
|
@@ -194,9 +233,9 @@
|
|
194
233
|
|
195
234
|
* TimeWithZone #+ and #- behave consistently with numeric arguments regardless of whether wrapped time is a Time or DateTime; consistenty answers false to #acts_like?(:date) [Geoff Buesing]
|
196
235
|
|
197
|
-
* Add String#squish and String#squish! to remove consecutive chunks of whitespace. #11123 [
|
236
|
+
* Add String#squish and String#squish! to remove consecutive chunks of whitespace. #11123 [Jordi Bunster, Henrik N]
|
198
237
|
|
199
|
-
* Serialize BigDecimals as Floats when using to_yaml. #8746 [
|
238
|
+
* Serialize BigDecimals as Floats when using to_yaml. #8746 [Ernesto Jimenez]
|
200
239
|
|
201
240
|
* Adding TimeWithZone #to_yaml, #to_datetime, #eql? and method aliases for duck-typing compatibility with Time [Geoff Buesing]
|
202
241
|
|
@@ -214,7 +253,7 @@
|
|
214
253
|
|
215
254
|
* TimeZone#new method renamed #local; when used with Time.zone, constructor now reads: Time.zone.local() [Geoff Buesing]
|
216
255
|
|
217
|
-
* Added Base64.encode64s to encode values in base64 without the newlines. This makes the values immediately usable as URL parameters or memcache keys without further processing [
|
256
|
+
* Added Base64.encode64s to encode values in base64 without the newlines. This makes the values immediately usable as URL parameters or memcache keys without further processing [David Heinemeier Hansson]
|
218
257
|
|
219
258
|
* Remove :nodoc: entries around the ActiveSupport test/unit assertions. #10946 [dancroak, jamesh]
|
220
259
|
|
@@ -222,7 +261,7 @@
|
|
222
261
|
|
223
262
|
* cache.fetch(key, :force => true) to force a cache miss. [Jeremy Kemper]
|
224
263
|
|
225
|
-
* Support retrieving TimeZones with a Duration. TimeZone[-28800] == TimeZone[-480.minutes]. [
|
264
|
+
* Support retrieving TimeZones with a Duration. TimeZone[-28800] == TimeZone[-480.minutes]. [Rick Olson]
|
226
265
|
|
227
266
|
* TimeWithZone#- added, so that #- can handle a Time or TimeWithZone argument correctly [Geoff Buesing]
|
228
267
|
|
@@ -270,21 +309,21 @@
|
|
270
309
|
|
271
310
|
* TestCase: introduce declared setup and teardown callbacks. Pass a list of methods and an optional block to call before setup or after teardown. Setup callbacks are run in the order declared; teardown callbacks are run in reverse. [Jeremy Kemper]
|
272
311
|
|
273
|
-
* Added ActiveSupport::Gzip.decompress/compress(source) as an easy wrapper for Zlib [Tobias
|
312
|
+
* Added ActiveSupport::Gzip.decompress/compress(source) as an easy wrapper for Zlib [Tobias Lütke]
|
274
313
|
|
275
314
|
* Included MemCache-Client to make the improved ActiveSupport::Cache::MemCacheStore work out of the box [Bob Cottrell, Eric Hodel]
|
276
315
|
|
277
|
-
* Added ActiveSupport::Cache::* framework as an extraction from ActionController::Caching::Fragments::* [
|
316
|
+
* Added ActiveSupport::Cache::* framework as an extraction from ActionController::Caching::Fragments::* [David Heinemeier Hansson]
|
278
317
|
|
279
318
|
* Fixed String#titleize to work for strings with 's too #10571 [trek]
|
280
319
|
|
281
|
-
* Changed the implementation of Enumerable#group_by to use a double array approach instead of a hash such that the insert order is honored [
|
320
|
+
* Changed the implementation of Enumerable#group_by to use a double array approach instead of a hash such that the insert order is honored [David Heinemeier Hansson/Marcel Molina Jr.]
|
282
321
|
|
283
|
-
* remove multiple enumerations from ActiveSupport::JSON#convert_json_to_yaml when dealing with date/time values. [
|
322
|
+
* remove multiple enumerations from ActiveSupport::JSON#convert_json_to_yaml when dealing with date/time values. [Rick Olson]
|
284
323
|
|
285
324
|
* Hash#symbolize_keys skips keys that can't be symbolized. #10500 [Brad Greenlee]
|
286
325
|
|
287
|
-
* Ruby 1.9 compatibility. #1689, #10466, #10468, #10554, #10594, #10632 [Cheah Chu Yeow, Pratik Naik, Jeremy Kemper, Dirkjan Bussink,
|
326
|
+
* Ruby 1.9 compatibility. #1689, #10466, #10468, #10554, #10594, #10632 [Cheah Chu Yeow, Pratik Naik, Jeremy Kemper, Dirkjan Bussink, Xavier Noria]
|
288
327
|
|
289
328
|
* TimeZone#to_s uses UTC rather than GMT. #1689 [Cheah Chu Yeow]
|
290
329
|
|
@@ -295,7 +334,7 @@
|
|
295
334
|
|
296
335
|
*2.0.1* (December 7th, 2007)
|
297
336
|
|
298
|
-
* Added Array#from and Array#to that behaves just from String#from and String#to [
|
337
|
+
* Added Array#from and Array#to that behaves just from String#from and String#to [David Heinemeier Hansson]
|
299
338
|
|
300
339
|
* Fix that empty collections should be treated as empty arrays regardless of whitespace for Hash#from_xml #10255 [adamj]
|
301
340
|
|
@@ -303,17 +342,17 @@
|
|
303
342
|
|
304
343
|
* Change Time and DateTime #end_of_month to return last second of month instead of beginning of last day of month. Closes #10200 [Geoff Buesing]
|
305
344
|
|
306
|
-
* Speedup String#blank? [Jeremy Kemper,
|
345
|
+
* Speedup String#blank? [Jeremy Kemper, Michael Koziarski]
|
307
346
|
|
308
347
|
* Add documentation for Hash#diff. Closes #9306 [Tarmo Tänav]
|
309
348
|
|
310
|
-
* Add new superclass_delegating_accessors. Similar to class inheritable attributes but with subtly different semantics. [
|
349
|
+
* Add new superclass_delegating_accessors. Similar to class inheritable attributes but with subtly different semantics. [Michael Koziarski, Tarmo Tänav]
|
311
350
|
|
312
351
|
* Change JSON to encode %w(< > &) as 4 digit hex codes to be in compliance with the JSON spec. Closes #9975 [Josh Peek, Cheah Chu Yeow, Tim Pope]
|
313
352
|
|
314
|
-
* Fix JSON encoding/decoding bugs dealing with /'s. Closes #9990 [Rick, theamazingrando]
|
353
|
+
* Fix JSON encoding/decoding bugs dealing with /'s. Closes #9990 [Rick Olson, theamazingrando]
|
315
354
|
|
316
|
-
* Introduce a base class for all test cases used by rails applications. ActiveSupport::TestCase [
|
355
|
+
* Introduce a base class for all test cases used by rails applications. ActiveSupport::TestCase [Michael Koziarski]
|
317
356
|
|
318
357
|
The intention is to use this to reduce the amount of monkeypatching / overriding that
|
319
358
|
is done to test/unit's classes.
|
@@ -366,13 +405,13 @@
|
|
366
405
|
|
367
406
|
* Backport Object#instance_variable_defined? for Ruby < 1.8.6. [Jeremy Kemper]
|
368
407
|
|
369
|
-
* BufferedLogger#add converts the message to a string. #9702, #9724 [eigentone, DrMark,
|
408
|
+
* BufferedLogger#add converts the message to a string. #9702, #9724 [eigentone, DrMark, Tom Ward]
|
370
409
|
|
371
|
-
* Added ActiveSupport::BufferedLogger as a duck-typing alternative (albeit with no formatter) to the Ruby Logger, which provides a very nice speed bump (inspired by Ezra's buffered logger) [
|
410
|
+
* Added ActiveSupport::BufferedLogger as a duck-typing alternative (albeit with no formatter) to the Ruby Logger, which provides a very nice speed bump (inspired by Ezra's buffered logger) [David Heinemeier Hansson]
|
372
411
|
|
373
412
|
* Object#instance_exec produces fewer garbage methods. [Mauricio Fernandez]
|
374
413
|
|
375
|
-
* Decode json strings as Dates/Times if they're using a YAML-compatible format. Closes #9614 [Rick]
|
414
|
+
* Decode json strings as Dates/Times if they're using a YAML-compatible format. Closes #9614 [Rick Olson]
|
376
415
|
|
377
416
|
* Fixed cache_page to use the request url instead of the routing options when picking a save path. #8614 [Josh Peek]
|
378
417
|
|
@@ -380,11 +419,11 @@
|
|
380
419
|
|
381
420
|
* Fixed that pluralizing an empty string should return the same empty string, not "s". #7720 [Josh Peek]
|
382
421
|
|
383
|
-
* Added call to inspect on non-string classes for the logger #8533 [
|
422
|
+
* Added call to inspect on non-string classes for the logger #8533 [Coda Hale]
|
384
423
|
|
385
424
|
* Deprecation: remove deprecated :mday option from Time, Date, and DateTime#change. [Jeremy Kemper]
|
386
425
|
|
387
|
-
* Fix JSON decoder with nested quotes and commas. #9579 [
|
426
|
+
* Fix JSON decoder with nested quotes and commas. #9579 [Zach Dennis]
|
388
427
|
|
389
428
|
* Hash#to_xml doesn't double-unescape. #8806 [Ezran]
|
390
429
|
|
@@ -396,27 +435,27 @@
|
|
396
435
|
|
397
436
|
* Deprecation: removed Reloadable. [Jeremy Kemper]
|
398
437
|
|
399
|
-
* Make the utf-handler return the correct value for non-matching regular expressions. Closes #9049 [
|
438
|
+
* Make the utf-handler return the correct value for non-matching regular expressions. Closes #9049 [Manfred Stienstra]
|
400
439
|
|
401
|
-
* Add ljust, rjust and center to utf8-handler. Closes #9165 [
|
440
|
+
* Add ljust, rjust and center to utf8-handler. Closes #9165 [Manfred Stienstra]
|
402
441
|
|
403
|
-
* Fix Time#advance bug when trying to advance a year from leap day. Closes #8655 [
|
442
|
+
* Fix Time#advance bug when trying to advance a year from leap day. Closes #8655 [Geoff Buesing]
|
404
443
|
|
405
|
-
* Add support for []= on ActiveSupport::Multibyte::Chars. Closes #9142. [ewan,
|
444
|
+
* Add support for []= on ActiveSupport::Multibyte::Chars. Closes #9142. [ewan, Manfred Stienstra]
|
406
445
|
|
407
446
|
* Added Array#extract_options! to encapsulate the pattern of getting an options hash out of a variable number of parameters. #8759 [Norbert Crombach]
|
408
447
|
|
409
448
|
* Let alias_attribute work with attributes with initial capital letters (legacy columns etc). Closes #8596 [mpalmer]
|
410
449
|
|
411
|
-
* Added Hash#except which is the inverse of Hash#slice -- return the hash except the keys that are specified [
|
450
|
+
* Added Hash#except which is the inverse of Hash#slice -- return the hash except the keys that are specified [David Heinemeier Hansson]
|
412
451
|
|
413
|
-
* Added support for pluralization with a different starting letter than the singular version (cow/kine) #4929 [norri_b/
|
452
|
+
* Added support for pluralization with a different starting letter than the singular version (cow/kine) #4929 [norri_b/Josh Susser]
|
414
453
|
|
415
454
|
* Demote Hash#to_xml to use XmlSimple#xml_in_string so it can't read files or stdin. #8453 [candlerb, Jeremy Kemper]
|
416
455
|
|
417
|
-
* Backport clean_logger changes to support ruby 1.8.2 [
|
456
|
+
* Backport clean_logger changes to support ruby 1.8.2 [Mislav Marohnić]
|
418
457
|
|
419
|
-
* Added proper handling of arrays #8537 [
|
458
|
+
* Added proper handling of arrays #8537 [Josh Susser]
|
420
459
|
|
421
460
|
Before:
|
422
461
|
Hash.from_xml '<images></images>'
|
@@ -450,7 +489,7 @@
|
|
450
489
|
|
451
490
|
* Move common DateTime calculations to Date. #8536 [Geoff Buesing]
|
452
491
|
|
453
|
-
* Added Date#change (like Time#change) [
|
492
|
+
* Added Date#change (like Time#change) [David Heinemeier Hansson]
|
454
493
|
|
455
494
|
* DateTime#to_time converts to Time unless out of range. #8512 [Geoff Buesing]
|
456
495
|
|
@@ -458,7 +497,7 @@
|
|
458
497
|
|
459
498
|
* Time durations use since instead of + for accuracy. #8513 [Geoff Buesing]
|
460
499
|
|
461
|
-
* escape <'s and >'s in JSON strings. #8371 [Rick]
|
500
|
+
* escape <'s and >'s in JSON strings. #8371 [Rick Olson]
|
462
501
|
|
463
502
|
* Inflections: MatrixTest -> MatrixTests instead of MatricesTest. #8496 [jbwiv]
|
464
503
|
|
@@ -474,11 +513,11 @@
|
|
474
513
|
|
475
514
|
* Simplify API of assert_difference by passing in an expression that is evaluated before and after the passed in block. See documenation for examples of new API. [Marcel Molina Jr.]
|
476
515
|
|
477
|
-
* Added assert_difference and assert_no_difference to test/unit assertions [Tobias
|
516
|
+
* Added assert_difference and assert_no_difference to test/unit assertions [Tobias Lütke]
|
478
517
|
|
479
|
-
* Removed breakpointer and Binding.of_caller in favor of relying on ruby-debug by Kent Sibilev since the breakpointer has been broken since Ruby 1.8.4 and will not be coming back [
|
518
|
+
* Removed breakpointer and Binding.of_caller in favor of relying on ruby-debug by Kent Sibilev since the breakpointer has been broken since Ruby 1.8.4 and will not be coming back [David Heinemeier Hansson]
|
480
519
|
|
481
|
-
* Added parsing of file type in Hash.xml_in so you can easily do file uploads with base64 from an API [
|
520
|
+
* Added parsing of file type in Hash.xml_in so you can easily do file uploads with base64 from an API [David Heinemeier Hansson]
|
482
521
|
|
483
522
|
<person>
|
484
523
|
<name>David</name>
|
@@ -498,9 +537,9 @@
|
|
498
537
|
|
499
538
|
* Use XSD-compatible type names for Hash#to_xml and make the converters extendable #8047 [Tim Pope]
|
500
539
|
|
501
|
-
* Added yielding of builder in Hash#to_xml [
|
540
|
+
* Added yielding of builder in Hash#to_xml [David Heinemeier Hansson]
|
502
541
|
|
503
|
-
* Hash#with_indifferent_access now also converts hashes kept in arrays to indifferent access (makes it easier to treat HTML and XML parameters the same) [
|
542
|
+
* Hash#with_indifferent_access now also converts hashes kept in arrays to indifferent access (makes it easier to treat HTML and XML parameters the same) [David Heinemeier Hansson]
|
504
543
|
|
505
544
|
* Hash#to_xml supports YAML attributes. #7502 [jonathan]
|
506
545
|
|
@@ -518,9 +557,9 @@
|
|
518
557
|
|
519
558
|
* Give DateTime correct .to_s implementations, lets it play nice with ActiveRecord quoting. #7649 [Geoff Buesing]
|
520
559
|
|
521
|
-
* Add File.atomic_write, allows you to write large files in an atomic manner, preventing users from seeing half written files. [
|
560
|
+
* Add File.atomic_write, allows you to write large files in an atomic manner, preventing users from seeing half written files. [Michael Koziarski]
|
522
561
|
|
523
|
-
* Allow users to provide custom formatters to Logger. [
|
562
|
+
* Allow users to provide custom formatters to Logger. [Anthony Eden]
|
524
563
|
|
525
564
|
* Hash#to_query CGI-escapes its keys. [Jeremy Kemper]
|
526
565
|
|
@@ -529,7 +568,7 @@
|
|
529
568
|
* :db format for Date#to_s [Jeremy Kemper]
|
530
569
|
Date.new(2007, 1, 27).to_s(:db) # => '2007-01-27'
|
531
570
|
|
532
|
-
* Added :instance_writer option to #mattr_writer/accessor, #cattr_writer/accessor, and #class_inheritable_writer to skip the creation of the instance writer. [Rick]
|
571
|
+
* Added :instance_writer option to #mattr_writer/accessor, #cattr_writer/accessor, and #class_inheritable_writer to skip the creation of the instance writer. [Rick Olson]
|
533
572
|
|
534
573
|
* Added Hash#to_query to turn a hash of values into a form-encoded query string [Nicholas Seckar]
|
535
574
|
|
@@ -564,7 +603,7 @@ public for compatibility. [Jeremy Kemper]
|
|
564
603
|
|
565
604
|
* Optimize Class Inheritable Attributes so that unnecessary hashes are not created. Closes #7472 [Bruce Perens]
|
566
605
|
|
567
|
-
* Added :instance_writer option to #mattr_writer/accessor, #cattr_writer/accessor, and #class_inheritable_writer to skip the creation of the instance writer. [Rick]
|
606
|
+
* Added :instance_writer option to #mattr_writer/accessor, #cattr_writer/accessor, and #class_inheritable_writer to skip the creation of the instance writer. [Rick Olson]
|
568
607
|
|
569
608
|
* Full test coverage for Inflector. #7228 [Dan Kubb]
|
570
609
|
|
@@ -589,13 +628,13 @@ public for compatibility. [Jeremy Kemper]
|
|
589
628
|
|
590
629
|
* Fixed Array#to_xml when it contains a series of hashes (each piece would get its own XML declaration) #6610 [thkarcher/cyu]
|
591
630
|
|
592
|
-
* Added Time#to_s(:time) which will just return H:M, like 17:44 [
|
631
|
+
* Added Time#to_s(:time) which will just return H:M, like 17:44 [David Heinemeier Hansson]
|
593
632
|
|
594
633
|
* Add Module#attr_accessor_with_default to initialize value of attribute before setting it. Closes #6538. [Stuart Halloway, Marcel Molina Jr.]
|
595
634
|
|
596
|
-
* Hash#to_xml handles keys with the same name as Kernel methods. #6613 [
|
635
|
+
* Hash#to_xml handles keys with the same name as Kernel methods. #6613 [Jonathan del Strother]
|
597
636
|
|
598
|
-
* Added Time#end_of_day to get 23:59:59 of that day [
|
637
|
+
* Added Time#end_of_day to get 23:59:59 of that day [David Heinemeier Hansson]
|
599
638
|
|
600
639
|
* Don't quote hash keys in Hash#to_json if they're valid JavaScript identifiers. Disable this with ActiveSupport::JSON.unquote_hash_key_identifiers = false if you need strict JSON compliance. [Sam Stephenson]
|
601
640
|
|
@@ -605,11 +644,11 @@ public for compatibility. [Jeremy Kemper]
|
|
605
644
|
|
606
645
|
* Fix unicode JSON regexp for Onigurama compatibility. #6494 [whitley]
|
607
646
|
|
608
|
-
* update XmlSimple to 1.0.10. Closes #6532. [
|
647
|
+
* update XmlSimple to 1.0.10. Closes #6532. [Nick Sieger]
|
609
648
|
|
610
649
|
* Update dependencies to allow constants to be defined alongside their siblings. A common case for this is AR model classes with STI; user.rb might define User, Administrator and Guest for example. [Nicholas Seckar]
|
611
650
|
|
612
|
-
* next_week respects DST changes. #6483, #5617, #2353, #2509, #4551 [marclove,
|
651
|
+
* next_week respects DST changes. #6483, #5617, #2353, #2509, #4551 [marclove, Rob Biedenharn, rails@roetzel.de, jsolson@damogran.org, drbrain@segment7.net]
|
613
652
|
|
614
653
|
* Expose methods added to Enumerable in the documentation, such as group_by. Closes #6170. [sergeykojin@gmail.com, Marcel Molina Jr.]
|
615
654
|
|
@@ -629,9 +668,9 @@ public for compatibility. [Jeremy Kemper]
|
|
629
668
|
|
630
669
|
* Hash#to_xml supports Bignum and BigDecimal. #6313 [edibiase]
|
631
670
|
|
632
|
-
* Don't undefine #class in OptionMerger [Rick]
|
671
|
+
* Don't undefine #class in OptionMerger [Rick Olson]
|
633
672
|
|
634
|
-
* Hash.create_from_xml has been renamed to Hash.from_xml, alias will exist until Rails 2.0 [
|
673
|
+
* Hash.create_from_xml has been renamed to Hash.from_xml, alias will exist until Rails 2.0 [David Heinemeier Hansson]
|
635
674
|
|
636
675
|
* alias_method_chain works with accessor= methods also. #6153 [Caio Chassot]
|
637
676
|
|
@@ -683,13 +722,13 @@ public for compatibility. [Jeremy Kemper]
|
|
683
722
|
self.attr_internal_naming_format = '@%s__rofl'
|
684
723
|
attr_internal :foo
|
685
724
|
|
686
|
-
* Raise fully qualified names upon name errors. #5533 [
|
725
|
+
* Raise fully qualified names upon name errors. #5533 [Lars Pind, Nicholas Seckar]
|
687
726
|
|
688
727
|
* Add extention to obtain the missing constant from NameError instances. [Nicholas Seckar]
|
689
728
|
|
690
729
|
* Thoroughly document inflections. #5700 [petermichaux@gmail.com]
|
691
730
|
|
692
|
-
* Added Module#alias_attribute [Jamis/
|
731
|
+
* Added Module#alias_attribute [Jamis/David Heinemeier Hansson]. Example:
|
693
732
|
|
694
733
|
class Content < ActiveRecord::Base
|
695
734
|
# has a title attribute
|
@@ -711,23 +750,23 @@ public for compatibility. [Jeremy Kemper]
|
|
711
750
|
Provide your own per-environment in e.g. config/environments/development.rb:
|
712
751
|
ActiveSupport::Deprecation.behavior = Proc.new { |message| raise message }
|
713
752
|
|
714
|
-
* First cut of the Rails Deprecation system. [
|
753
|
+
* First cut of the Rails Deprecation system. [Michael Koziarski]
|
715
754
|
|
716
755
|
* Strip boolean XML content before checking for 'true' [Rick Olson]
|
717
756
|
|
718
|
-
* Customize default BigDecimal formatting. References #5672 [
|
757
|
+
* Customize default BigDecimal formatting. References #5672 [Dave Thomas]
|
719
758
|
|
720
|
-
* Correctly convert <foo nil="true"> to nil when using Hash.create_from_xml. [Rick]
|
759
|
+
* Correctly convert <foo nil="true"> to nil when using Hash.create_from_xml. [Rick Olson]
|
721
760
|
|
722
761
|
* Optional identity for Enumerable#sum defaults to zero. #5657 [gensym@mac.com]
|
723
762
|
|
724
|
-
* HashWithIndifferentAccess shouldn't confuse false and nil. #5601 [
|
763
|
+
* HashWithIndifferentAccess shouldn't confuse false and nil. #5601 [Shugo Maeda]
|
725
764
|
|
726
765
|
* Fixed HashWithIndifferentAccess#default #5586 [chris@seagul.co.uk]
|
727
766
|
|
728
767
|
* More compatible Hash.create_from_xml. #5523 [nunemaker@gmail.com]
|
729
768
|
|
730
|
-
* Added Enumerable#sum for calculating a sum from the elements [
|
769
|
+
* Added Enumerable#sum for calculating a sum from the elements [David Heinemeier Hansson, jonathan@daikini.com]. Examples:
|
731
770
|
|
732
771
|
[1, 2, 3].sum
|
733
772
|
payments.sum { |p| p.price * p.tax_rate }
|
@@ -749,7 +788,7 @@ public for compatibility. [Jeremy Kemper]
|
|
749
788
|
{1 => "one", 2 => "two", 3 => "three"}.sort_by(&:first).map(&:last)
|
750
789
|
#=> ["one", "two", "three"]
|
751
790
|
|
752
|
-
* Added Hash.create_from_xml(string) which will create a hash from a XML string and even typecast if possible [
|
791
|
+
* Added Hash.create_from_xml(string) which will create a hash from a XML string and even typecast if possible [David Heinemeier Hansson]. Example:
|
753
792
|
|
754
793
|
Hash.create_from_xml <<-EOT
|
755
794
|
<note>
|
@@ -762,7 +801,7 @@ public for compatibility. [Jeremy Kemper]
|
|
762
801
|
|
763
802
|
{ :note => { :title => "This is a note", :created_at => Date.new(2004, 10, 10) } }
|
764
803
|
|
765
|
-
* Added Jim Weirich's excellent FlexMock class to vendor (Copyright 2003, 2004 by Jim Weirich (jim@weriichhouse.org)) -- it's not automatically required, though, so require 'flexmock' is still necessary [
|
804
|
+
* Added Jim Weirich's excellent FlexMock class to vendor (Copyright 2003, 2004 by Jim Weirich (jim@weriichhouse.org)) -- it's not automatically required, though, so require 'flexmock' is still necessary [David Heinemeier Hansson]
|
766
805
|
|
767
806
|
* Fixed that Module#alias_method_chain should work with both foo? foo! and foo at the same time #4954 [anna@wota.jp]
|
768
807
|
|
@@ -770,13 +809,13 @@ public for compatibility. [Jeremy Kemper]
|
|
770
809
|
|
771
810
|
* Add OrderedHash#values. [Sam Stephenson]
|
772
811
|
|
773
|
-
* Added Array#to_s(:db) that'll produce a comma-separated list of ids [
|
812
|
+
* Added Array#to_s(:db) that'll produce a comma-separated list of ids [David Heinemeier Hansson]. Example:
|
774
813
|
|
775
814
|
Purchase.find(:all, :conditions => "product_id IN (#{shops.products.to_s(:db)})"
|
776
815
|
|
777
816
|
* Normalize classify's argument to a String so that it plays nice with Symbols. [Marcel Molina Jr.]
|
778
817
|
|
779
|
-
* Strip out leading schema name in classify. References #5139. [
|
818
|
+
* Strip out leading schema name in classify. References #5139. [Michael Schoen]
|
780
819
|
|
781
820
|
* Remove Enumerable#first_match since break(value) handles the use case well enough. [Nicholas Seckar]
|
782
821
|
|
@@ -808,7 +847,7 @@ public for compatibility. [Jeremy Kemper]
|
|
808
847
|
|
809
848
|
* Added Module#alias_method_chain [Jamis Buck]
|
810
849
|
|
811
|
-
* Updated to Builder 2.0 [
|
850
|
+
* Updated to Builder 2.0 [David Heinemeier Hansson]
|
812
851
|
|
813
852
|
* Add Array#split for dividing arrays into one or more subarrays by value or block. [Sam Stephenson]
|
814
853
|
|
@@ -839,7 +878,7 @@ public for compatibility. [Jeremy Kemper]
|
|
839
878
|
|
840
879
|
* Added Fixnum#seconds for consistency, so you can say 5.minutes + 30.seconds instead of 5.minutes + 30 #4389 [François Beausoleil]
|
841
880
|
|
842
|
-
* Added option to String#camelize to generate lower-cased camel case by passing in :lower, like "super_man".camelize(:lower) # => "superMan" [
|
881
|
+
* Added option to String#camelize to generate lower-cased camel case by passing in :lower, like "super_man".camelize(:lower) # => "superMan" [David Heinemeier Hansson]
|
843
882
|
|
844
883
|
* Added Hash#diff to show the difference between two hashes [Chris McGrath]
|
845
884
|
|
@@ -847,12 +886,12 @@ public for compatibility. [Jeremy Kemper]
|
|
847
886
|
|
848
887
|
* Enhance Inflector.underscore to convert '-' into '_' (as the inverse of Inflector.dasherize) [Jamis Buck]
|
849
888
|
|
850
|
-
* Switched to_xml to use the xml schema format for datetimes. This allows the encoding of time zones and should improve operability. [
|
889
|
+
* Switched to_xml to use the xml schema format for datetimes. This allows the encoding of time zones and should improve operability. [Michael Koziarski]
|
851
890
|
|
852
891
|
* Added a note to the documentation for the Date related Numeric extensions to indicate that they're
|
853
|
-
approximations and shouldn't be used for critical calculations. [
|
892
|
+
approximations and shouldn't be used for critical calculations. [Michael Koziarski]
|
854
893
|
|
855
|
-
* Added Hash#to_xml and Array#to_xml that makes it much easier to produce XML from basic structures [
|
894
|
+
* Added Hash#to_xml and Array#to_xml that makes it much easier to produce XML from basic structures [David Heinemeier Hansson]. Examples:
|
856
895
|
|
857
896
|
{ :name => "David", :street_name => "Paulina", :age => 26, :moved_on => Date.new(2005, 11, 15) }.to_xml
|
858
897
|
|
@@ -865,7 +904,7 @@ approximations and shouldn't be used for critical calculations. [Koz]
|
|
865
904
|
<moved-on type="date">2005-11-15</moved-on>
|
866
905
|
</person>
|
867
906
|
|
868
|
-
* Moved Jim Weirich's wonderful Builder from Action Pack to Active Support (it's simply too useful to be stuck in AP) [
|
907
|
+
* Moved Jim Weirich's wonderful Builder from Action Pack to Active Support (it's simply too useful to be stuck in AP) [David Heinemeier Hansson]
|
869
908
|
|
870
909
|
* Fixed that Array#to_sentence will return "" on an empty array instead of ", and" #3842, #4031 [rubyonrails@beautifulpixel.com]
|
871
910
|
|
@@ -894,7 +933,7 @@ approximations and shouldn't be used for critical calculations. [Koz]
|
|
894
933
|
|
895
934
|
[Marcel Molina Jr., Sam Stephenson]
|
896
935
|
|
897
|
-
* Added Kernel#daemonize to turn the current process into a daemon that can be killed with a TERM signal [
|
936
|
+
* Added Kernel#daemonize to turn the current process into a daemon that can be killed with a TERM signal [David Heinemeier Hansson]
|
898
937
|
|
899
938
|
* Add 'around' methods to Logger, to make it easy to log before and after messages for a given block as requested in #3809. [Michael Koziarski] Example:
|
900
939
|
|
@@ -909,7 +948,7 @@ approximations and shouldn't be used for critical calculations. [Koz]
|
|
909
948
|
|
910
949
|
* Make String#last return the string instead of nil when it is shorter than the limit [Scott Barron].
|
911
950
|
|
912
|
-
* Added delegation support to Module that allows multiple delegations at once (unlike Forwardable in the stdlib) [
|
951
|
+
* Added delegation support to Module that allows multiple delegations at once (unlike Forwardable in the stdlib) [David Heinemeier Hansson]. Example:
|
913
952
|
|
914
953
|
class Account < ActiveRecord::Base
|
915
954
|
has_one :subscription
|
@@ -944,7 +983,7 @@ approximations and shouldn't be used for critical calculations. [Koz]
|
|
944
983
|
include Reloadable
|
945
984
|
end
|
946
985
|
|
947
|
-
Reloading a class is done by removing its constant which will cause it to be loaded again on the next reference. [
|
986
|
+
Reloading a class is done by removing its constant which will cause it to be loaded again on the next reference. [David Heinemeier Hansson]
|
948
987
|
|
949
988
|
* Added auto-loading support for classes in modules, so Conductor::Migration will look for conductor/migration.rb and Conductor::Database::Settings will look for conductor/database/settings.rb [Nicholas Seckar]
|
950
989
|
|
@@ -952,7 +991,7 @@ approximations and shouldn't be used for critical calculations. [Koz]
|
|
952
991
|
|
953
992
|
* Add Proc#bind(object) for changing a proc or block's self by returning a Method bound to the given object. Based on why the lucky stiff's "cloaker" method. [Sam Stephenson]
|
954
993
|
|
955
|
-
* Fix merge and dup for hashes with indifferent access #3404 [
|
994
|
+
* Fix merge and dup for hashes with indifferent access #3404 [Ken Miller]
|
956
995
|
|
957
996
|
* Fix the requires in option_merger_test to unbreak AS tests. [Sam Stephenson]
|
958
997
|
|
@@ -1059,7 +1098,7 @@ approximations and shouldn't be used for critical calculations. [Koz]
|
|
1059
1098
|
|
1060
1099
|
* Fixed clean logger to work with Ruby 1.8.3 Logger class #2245
|
1061
1100
|
|
1062
|
-
* Fixed memory leak with Active Record classes when Dependencies.mechanism = :load #1704 [
|
1101
|
+
* Fixed memory leak with Active Record classes when Dependencies.mechanism = :load #1704 [Chris McGrath]
|
1063
1102
|
|
1064
1103
|
* Fixed Inflector.underscore for use with acronyms, so HTML becomes html instead of htm_l #2173 [k@v2studio.com]
|
1065
1104
|
|
@@ -1069,11 +1108,11 @@ approximations and shouldn't be used for critical calculations. [Koz]
|
|
1069
1108
|
|
1070
1109
|
* Added Hash#reverse_merge, Hash#reverse_merge!, and Hash#reverse_update to ease the use of default options
|
1071
1110
|
|
1072
|
-
* Added Array#to_sentence that'll turn ['one', 'two', 'three'] into "one, two, and three" #2157 [
|
1111
|
+
* Added Array#to_sentence that'll turn ['one', 'two', 'three'] into "one, two, and three" #2157 [Manfred Stienstra]
|
1073
1112
|
|
1074
1113
|
* Added Kernel#silence_warnings to turn off warnings temporarily for the passed block
|
1075
1114
|
|
1076
|
-
* Added String#starts_with? and String#ends_with? #2118 [
|
1115
|
+
* Added String#starts_with? and String#ends_with? #2118 [Thijs van der Vossen]
|
1077
1116
|
|
1078
1117
|
* Added easy extendability to the inflector through Inflector.inflections (using the Inflector::Inflections singleton class). Examples:
|
1079
1118
|
|
@@ -1116,7 +1155,7 @@ approximations and shouldn't be used for critical calculations. [Koz]
|
|
1116
1155
|
|
1117
1156
|
* Added new rules to the Inflector to deal with more unusual plurals mouse/louse => mice/lice, information => information, ox => oxen, virus => viri, archive => archives #1571, #1583, #1490, #1599, #1608 [foamdino@gmail.com/others]
|
1118
1157
|
|
1119
|
-
* Fixed memory leak with Object#remove_subclasses_of, which inflicted a Rails application running in development mode with a ~20KB leak per request #1289 [
|
1158
|
+
* Fixed memory leak with Object#remove_subclasses_of, which inflicted a Rails application running in development mode with a ~20KB leak per request #1289 [Chris McGrath]
|
1120
1159
|
|
1121
1160
|
* Made 1.year == 365.25.days to account for leap years. This allows you to do User.find(:all, :conditions => ['birthday > ?', 50.years.ago]) without losing a lot of days. #1488 [tuxie@dekadance.se]
|
1122
1161
|
|
@@ -1151,7 +1190,7 @@ approximations and shouldn't be used for critical calculations. [Koz]
|
|
1151
1190
|
|
1152
1191
|
* Fixed that in some circumstances controllers outside of modules may have hidden ones inside modules. For example, admin/content might have been hidden by /content. #1075 [Nicholas Seckar]
|
1153
1192
|
|
1154
|
-
* Fixed inflection of perspectives and similar words #1045 [
|
1193
|
+
* Fixed inflection of perspectives and similar words #1045 [Thijs van der Vossen]
|
1155
1194
|
|
1156
1195
|
* Added Fixnum#even? and Fixnum#odd?
|
1157
1196
|
|
@@ -1193,7 +1232,7 @@ approximations and shouldn't be used for critical calculations. [Koz]
|
|
1193
1232
|
|
1194
1233
|
* Added inflection rules for "sh" words, like "wish" and "fish" #755 [phillip@pjbsoftware.com]
|
1195
1234
|
|
1196
|
-
* Fixed an exception when using Ajax based requests from Safari because Safari appends a \000 to the post body. Symbols can't have \000 in them so indifferent access would throw an exception in the constructor. Indifferent hashes now use strings internally instead. #746 [Tobias
|
1235
|
+
* Fixed an exception when using Ajax based requests from Safari because Safari appends a \000 to the post body. Symbols can't have \000 in them so indifferent access would throw an exception in the constructor. Indifferent hashes now use strings internally instead. #746 [Tobias Lütke]
|
1197
1236
|
|
1198
1237
|
* Added String#to_time and String#to_date for wrapping ParseDate
|
1199
1238
|
|
@@ -1259,7 +1298,7 @@ approximations and shouldn't be used for critical calculations. [Koz]
|
|
1259
1298
|
|
1260
1299
|
* Added Inflections as an extension on String, so Inflector.pluralize(Inflector.classify(name)) becomes name.classify.pluralize #476 [Jeremy Kemper]
|
1261
1300
|
|
1262
|
-
* Added Byte operations to Numeric, so 5.5.megabytes + 200.kilobytes #461 [Marcel Molina]
|
1301
|
+
* Added Byte operations to Numeric, so 5.5.megabytes + 200.kilobytes #461 [Marcel Molina Jr.]
|
1263
1302
|
|
1264
1303
|
* Fixed that Dependencies.reload can't load the same file twice #420 [Kent Sibilev]
|
1265
1304
|
|