activesupport 2.2.2 → 2.2.3

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 CHANGED
@@ -1,4 +1,17 @@
1
- *2.2 (November 21st, 2008)*
1
+ *2.2.3 (September 4th, 2009)*
2
+
3
+ * Introduce ActiveSupport::Multibyte.clean to clean invalid multibyte strings.
4
+
5
+ * Ruby 1.9.1p0 fix: URI.unescape can decode multibyte chars. #2033 [MOROHASHI Kyosuke]
6
+
7
+ * TimeWithZone#xmlschema accepts optional fraction_digits argument [#1725 state:resolved] [Nicholas Dainty]
8
+
9
+ * TimeWithZone#- gives correct result with wrapped DateTime, and with DateTime argument [Geoff Buesing]
10
+
11
+ * Multibyte: add multibyte-safe Chars#ord rather than falling back to String#ord. #1483 [Jason Cheow]
12
+
13
+
14
+ *2.2.2 (November 21st, 2008)*
2
15
 
3
16
  * TimeZone offset tests: use current_period, to ensure TimeZone#utc_offset is up-to-date [Geoff Buesing]
4
17
 
@@ -94,9 +94,12 @@ module ActiveSupport
94
94
  @guard.synchronize do
95
95
  unless buffer.empty?
96
96
  old_buffer = buffer
97
- clear_buffer
98
97
  @log.write(old_buffer.join)
99
98
  end
99
+
100
+ # Important to do this even if buffer was empty or else @buffer will
101
+ # accumulate empty arrays for each request where nothing was logged.
102
+ clear_buffer
100
103
  end
101
104
  end
102
105
 
@@ -27,7 +27,7 @@ module ActiveSupport #:nodoc:
27
27
  old_stat = stat(file_name)
28
28
  rescue Errno::ENOENT
29
29
  # No old permissions, write a temp file to determine the defaults
30
- check_name = ".permissions_check.#{Thread.current.object_id}.#{Process.pid}.#{rand(1000000)}"
30
+ check_name = join(dirname(file_name), ".permissions_check.#{Thread.current.object_id}.#{Process.pid}.#{rand(1000000)}")
31
31
  open(check_name, "w") { }
32
32
  old_stat = stat(check_name)
33
33
  unlink(check_name)
@@ -13,7 +13,9 @@ module ActiveSupport #:nodoc:
13
13
  # When $KCODE = 'UTF8', multi-byte characters are yielded appropriately.
14
14
  def each_char
15
15
  scanner, char = StringScanner.new(self), /./mu
16
- loop { yield(scanner.scan(char) || break) }
16
+ while c = scanner.scan(char)
17
+ yield c
18
+ end
17
19
  end
18
20
  end
19
21
  end
@@ -201,7 +201,8 @@ module ActiveSupport #:nodoc:
201
201
 
202
202
  # Returns a new Time representing the start of the day (0:00)
203
203
  def beginning_of_day
204
- (self - self.seconds_since_midnight).change(:usec => 0)
204
+ #(self - seconds_since_midnight).change(:usec => 0)
205
+ change(:hour => 0, :min => 0, :sec => 0, :usec => 0)
205
206
  end
206
207
  alias :midnight :beginning_of_day
207
208
  alias :at_midnight :beginning_of_day
@@ -0,0 +1,16 @@
1
+ if RUBY_VERSION >= '1.9'
2
+ require 'uri'
3
+
4
+ str = "\xE6\x97\xA5\xE6\x9C\xAC\xE8\xAA\x9E" # Ni-ho-nn-go in UTF-8, means Japanese.
5
+ str.force_encoding(Encoding::UTF_8) if str.respond_to?(:force_encoding)
6
+
7
+ unless str == URI.unescape(URI.escape(str))
8
+ URI::Parser.class_eval do
9
+ remove_method :unescape
10
+ def unescape(str, escaped = @regexp[:ESCAPED])
11
+ enc = (str.encoding == Encoding::US_ASCII) ? Encoding::UTF_8 : str.encoding
12
+ str.gsub(escaped) { [$&[1, 2].hex].pack('C') }.force_encoding(enc)
13
+ end
14
+ end
15
+ end
16
+ end
@@ -277,7 +277,7 @@ module ActiveSupport
277
277
 
278
278
  # The iconv transliteration code doesn't function correctly
279
279
  # on some platforms, but it's very fast where it does function.
280
- if "foo" != Inflector.transliterate("föö")
280
+ if "foo" != (Inflector.transliterate("föö") rescue nil)
281
281
  undef_method :transliterate
282
282
  def transliterate(string)
283
283
  string.mb_chars.normalize(:kd). # Decompose accented characters
@@ -46,10 +46,11 @@ module ActiveSupport
46
46
  json.gsub(/\\\//, '/')
47
47
  else
48
48
  left_pos = [-1].push(*marks)
49
- right_pos = marks << json.length
49
+ right_pos = marks << scanner.pos + scanner.rest_size
50
50
  output = []
51
51
  left_pos.each_with_index do |left, i|
52
- output << json[left.succ..right_pos[i]]
52
+ scanner.pos = left.succ
53
+ output << scanner.peek(right_pos[i] - scanner.pos + 1)
53
54
  end
54
55
  output = output * " "
55
56
 
@@ -1,9 +1,5 @@
1
1
  # encoding: utf-8
2
2
 
3
- require 'active_support/multibyte/chars'
4
- require 'active_support/multibyte/exceptions'
5
- require 'active_support/multibyte/unicode_database'
6
-
7
3
  module ActiveSupport #:nodoc:
8
4
  module Multibyte
9
5
  # A list of all available normalization forms. See http://www.unicode.org/reports/tr15/tr15-29.html for more
@@ -27,7 +23,35 @@ module ActiveSupport #:nodoc:
27
23
  #
28
24
  # Example:
29
25
  # ActiveSupport::Multibyte.proxy_class = CharsForUTF32
30
- mattr_accessor :proxy_class
31
- self.proxy_class = ActiveSupport::Multibyte::Chars
26
+ def self.proxy_class=(klass)
27
+ @proxy_class = klass
28
+ end
29
+
30
+ # Returns the currect proxy class
31
+ def self.proxy_class
32
+ @proxy_class ||= ActiveSupport::Multibyte::Chars
33
+ end
34
+
35
+ # Regular expressions that describe valid byte sequences for a character
36
+ VALID_CHARACTER = {
37
+ # Borrowed from the Kconv library by Shinji KONO - (also as seen on the W3C site)
38
+ 'UTF-8' => /\A(?:
39
+ [\x00-\x7f] |
40
+ [\xc2-\xdf] [\x80-\xbf] |
41
+ \xe0 [\xa0-\xbf] [\x80-\xbf] |
42
+ [\xe1-\xef] [\x80-\xbf] [\x80-\xbf] |
43
+ \xf0 [\x90-\xbf] [\x80-\xbf] [\x80-\xbf] |
44
+ [\xf1-\xf3] [\x80-\xbf] [\x80-\xbf] [\x80-\xbf] |
45
+ \xf4 [\x80-\x8f] [\x80-\xbf] [\x80-\xbf])\z /xn,
46
+ # Quick check for valid Shift-JIS characters, disregards the odd-even pairing
47
+ 'Shift_JIS' => /\A(?:
48
+ [\x00-\x7e \xa1-\xdf] |
49
+ [\x81-\x9f \xe0-\xef] [\x40-\x7e \x80-\x9e \x9f-\xfc])\z /xn
50
+ }
32
51
  end
33
52
  end
53
+
54
+ require 'active_support/multibyte/chars'
55
+ require 'active_support/multibyte/exceptions'
56
+ require 'active_support/multibyte/unicode_database'
57
+ require 'active_support/multibyte/utils'
@@ -73,16 +73,7 @@ module ActiveSupport #:nodoc:
73
73
  UNICODE_TRAILERS_PAT = /(#{codepoints_to_pattern(UNICODE_LEADERS_AND_TRAILERS)})+\Z/
74
74
  UNICODE_LEADERS_PAT = /\A(#{codepoints_to_pattern(UNICODE_LEADERS_AND_TRAILERS)})+/
75
75
 
76
- # Borrowed from the Kconv library by Shinji KONO - (also as seen on the W3C site)
77
- UTF8_PAT = /\A(?:
78
- [\x00-\x7f] |
79
- [\xc2-\xdf] [\x80-\xbf] |
80
- \xe0 [\xa0-\xbf] [\x80-\xbf] |
81
- [\xe1-\xef] [\x80-\xbf] [\x80-\xbf] |
82
- \xf0 [\x90-\xbf] [\x80-\xbf] [\x80-\xbf] |
83
- [\xf1-\xf3] [\x80-\xbf] [\x80-\xbf] [\x80-\xbf] |
84
- \xf4 [\x80-\x8f] [\x80-\xbf] [\x80-\xbf]
85
- )*\z/xn
76
+ UTF8_PAT = ActiveSupport::Multibyte::VALID_CHARACTER['UTF-8']
86
77
 
87
78
  attr_reader :wrapped_string
88
79
  alias to_s wrapped_string
@@ -292,23 +283,23 @@ module ActiveSupport #:nodoc:
292
283
  def rstrip
293
284
  chars(@wrapped_string.gsub(UNICODE_TRAILERS_PAT, ''))
294
285
  end
295
-
286
+
296
287
  # Strips entire range of Unicode whitespace from the left of the string.
297
288
  def lstrip
298
289
  chars(@wrapped_string.gsub(UNICODE_LEADERS_PAT, ''))
299
290
  end
300
-
291
+
301
292
  # Strips entire range of Unicode whitespace from the right and left of the string.
302
293
  def strip
303
294
  rstrip.lstrip
304
295
  end
305
-
296
+
306
297
  # Returns the number of codepoints in the string
307
298
  def size
308
299
  self.class.u_unpack(@wrapped_string).size
309
300
  end
310
301
  alias_method :length, :size
311
-
302
+
312
303
  # Reverses all characters in the string.
313
304
  #
314
305
  # Example:
@@ -316,7 +307,7 @@ module ActiveSupport #:nodoc:
316
307
  def reverse
317
308
  chars(self.class.u_unpack(@wrapped_string).reverse.pack('U*'))
318
309
  end
319
-
310
+
320
311
  # Implements Unicode-aware slice with codepoints. Slicing on one point returns the codepoints for that
321
312
  # character.
322
313
  #
@@ -344,6 +335,14 @@ module ActiveSupport #:nodoc:
344
335
  end
345
336
  alias_method :[], :slice
346
337
 
338
+ # Converts first character in the string to Unicode value
339
+ #
340
+ # Example:
341
+ # 'こんにちは'.mb_chars.ord #=> 12371
342
+ def ord
343
+ self.class.u_unpack(@wrapped_string)[0]
344
+ end
345
+
347
346
  # Convert characters in the string to uppercase.
348
347
  #
349
348
  # Example:
@@ -609,7 +608,9 @@ module ActiveSupport #:nodoc:
609
608
  # Replaces all ISO-8859-1 or CP1252 characters by their UTF-8 equivalent resulting in a valid UTF-8 string.
610
609
  def tidy_bytes(string)
611
610
  string.split(//u).map do |c|
612
- if !UTF8_PAT.match(c)
611
+ c.force_encoding(Encoding::ASCII) if c.respond_to?(:force_encoding)
612
+
613
+ if !ActiveSupport::Multibyte::VALID_CHARACTER['UTF-8'].match(c)
613
614
  n = c.unpack('C')[0]
614
615
  n < 128 ? n.chr :
615
616
  n < 160 ? [UCD.cp1252[n] || n].pack('U') :
@@ -0,0 +1,61 @@
1
+ # encoding: utf-8
2
+
3
+ module ActiveSupport #:nodoc:
4
+ module Multibyte #:nodoc:
5
+ if Kernel.const_defined?(:Encoding)
6
+ # Returns a regular expression that matches valid characters in the current encoding
7
+ def self.valid_character
8
+ VALID_CHARACTER[Encoding.default_external.to_s]
9
+ end
10
+ else
11
+ def self.valid_character
12
+ case $KCODE
13
+ when 'UTF8'
14
+ VALID_CHARACTER['UTF-8']
15
+ when 'SJIS'
16
+ VALID_CHARACTER['Shift_JIS']
17
+ end
18
+ end
19
+ end
20
+
21
+ if 'string'.respond_to?(:valid_encoding?)
22
+ # Verifies the encoding of a string
23
+ def self.verify(string)
24
+ string.valid_encoding?
25
+ end
26
+ else
27
+ def self.verify(string)
28
+ if expression = valid_character
29
+ for c in string.split(//)
30
+ return false unless expression.match(c)
31
+ end
32
+ end
33
+ true
34
+ end
35
+ end
36
+
37
+ # Verifies the encoding of the string and raises an exception when it's not valid
38
+ def self.verify!(string)
39
+ raise EncodingError.new("Found characters with invalid encoding") unless verify(string)
40
+ end
41
+
42
+ if 'string'.respond_to?(:force_encoding)
43
+ # Removes all invalid characters from the string.
44
+ #
45
+ # Note: this method is a no-op in Ruby 1.9
46
+ def self.clean(string)
47
+ string
48
+ end
49
+ else
50
+ def self.clean(string)
51
+ if expression = valid_character
52
+ stripped = []; for c in string.split(//)
53
+ stripped << c if expression.match(c)
54
+ end; stripped.join
55
+ else
56
+ string
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -98,8 +98,12 @@ module ActiveSupport
98
98
  "#{time.strftime('%a, %d %b %Y %H:%M:%S')} #{zone} #{formatted_offset}"
99
99
  end
100
100
 
101
- def xmlschema
102
- "#{time.strftime("%Y-%m-%dT%H:%M:%S")}#{formatted_offset(true, 'Z')}"
101
+ def xmlschema(fraction_digits = 0)
102
+ fraction = if fraction_digits > 0
103
+ ".%i" % time.usec.to_s[0, fraction_digits]
104
+ end
105
+
106
+ "#{time.strftime("%Y-%m-%dT%H:%M:%S")}#{fraction}#{formatted_offset(true, 'Z')}"
103
107
  end
104
108
  alias_method :iso8601, :xmlschema
105
109
 
@@ -198,7 +202,7 @@ module ActiveSupport
198
202
  # If we're subtracting a Duration of variable length (i.e., years, months, days), move backwards from #time,
199
203
  # otherwise move backwards #utc, for accuracy when moving across DST boundaries
200
204
  if other.acts_like?(:time)
201
- utc - other
205
+ utc.to_f - other.to_f
202
206
  elsif duration_of_variable_length?(other)
203
207
  method_missing(:-, other)
204
208
  else
@@ -14,7 +14,7 @@ rescue Gem::LoadError
14
14
  end
15
15
 
16
16
  begin
17
- gem 'memcache-client', '~> 1.5.1'
17
+ gem 'memcache-client', '>= 1.5.1'
18
18
  rescue Gem::LoadError
19
19
  $:.unshift "#{File.dirname(__FILE__)}/vendor/memcache-client-1.5.1"
20
20
  end
@@ -2,7 +2,7 @@ module ActiveSupport
2
2
  module VERSION #:nodoc:
3
3
  MAJOR = 2
4
4
  MINOR = 2
5
- TINY = 2
5
+ TINY = 3
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].join('.')
8
8
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activesupport
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.2
4
+ version: 2.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-11-21 00:00:00 +01:00
12
+ date: 2009-09-28 00:00:00 +13:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -24,11 +24,9 @@ extra_rdoc_files: []
24
24
  files:
25
25
  - CHANGELOG
26
26
  - README
27
- - lib/active_support
28
27
  - lib/active_support/base64.rb
29
28
  - lib/active_support/basic_object.rb
30
29
  - lib/active_support/buffered_logger.rb
31
- - lib/active_support/cache
32
30
  - lib/active_support/cache/compressed_mem_cache_store.rb
33
31
  - lib/active_support/cache/drb_store.rb
34
32
  - lib/active_support/cache/file_store.rb
@@ -37,51 +35,40 @@ files:
37
35
  - lib/active_support/cache/synchronized_memory_store.rb
38
36
  - lib/active_support/cache.rb
39
37
  - lib/active_support/callbacks.rb
40
- - lib/active_support/core_ext
41
- - lib/active_support/core_ext/array
42
38
  - lib/active_support/core_ext/array/access.rb
43
39
  - lib/active_support/core_ext/array/conversions.rb
44
40
  - lib/active_support/core_ext/array/extract_options.rb
45
41
  - lib/active_support/core_ext/array/grouping.rb
46
42
  - lib/active_support/core_ext/array/random_access.rb
47
43
  - lib/active_support/core_ext/array.rb
48
- - lib/active_support/core_ext/base64
49
44
  - lib/active_support/core_ext/base64/encoding.rb
50
45
  - lib/active_support/core_ext/base64.rb
51
46
  - lib/active_support/core_ext/benchmark.rb
52
- - lib/active_support/core_ext/bigdecimal
53
47
  - lib/active_support/core_ext/bigdecimal/conversions.rb
54
48
  - lib/active_support/core_ext/bigdecimal.rb
55
49
  - lib/active_support/core_ext/blank.rb
56
- - lib/active_support/core_ext/cgi
57
50
  - lib/active_support/core_ext/cgi/escape_skipping_slashes.rb
58
51
  - lib/active_support/core_ext/cgi.rb
59
- - lib/active_support/core_ext/class
60
52
  - lib/active_support/core_ext/class/attribute_accessors.rb
61
53
  - lib/active_support/core_ext/class/delegating_attributes.rb
62
54
  - lib/active_support/core_ext/class/inheritable_attributes.rb
63
55
  - lib/active_support/core_ext/class/removal.rb
64
56
  - lib/active_support/core_ext/class.rb
65
- - lib/active_support/core_ext/date
66
57
  - lib/active_support/core_ext/date/behavior.rb
67
58
  - lib/active_support/core_ext/date/calculations.rb
68
59
  - lib/active_support/core_ext/date/conversions.rb
69
60
  - lib/active_support/core_ext/date.rb
70
- - lib/active_support/core_ext/date_time
71
61
  - lib/active_support/core_ext/date_time/calculations.rb
72
62
  - lib/active_support/core_ext/date_time/conversions.rb
73
63
  - lib/active_support/core_ext/date_time.rb
74
64
  - lib/active_support/core_ext/duplicable.rb
75
65
  - lib/active_support/core_ext/enumerable.rb
76
66
  - lib/active_support/core_ext/exception.rb
77
- - lib/active_support/core_ext/file
78
67
  - lib/active_support/core_ext/file/atomic.rb
79
68
  - lib/active_support/core_ext/file.rb
80
- - lib/active_support/core_ext/float
81
69
  - lib/active_support/core_ext/float/rounding.rb
82
70
  - lib/active_support/core_ext/float/time.rb
83
71
  - lib/active_support/core_ext/float.rb
84
- - lib/active_support/core_ext/hash
85
72
  - lib/active_support/core_ext/hash/conversions.rb
86
73
  - lib/active_support/core_ext/hash/deep_merge.rb
87
74
  - lib/active_support/core_ext/hash/diff.rb
@@ -91,12 +78,10 @@ files:
91
78
  - lib/active_support/core_ext/hash/reverse_merge.rb
92
79
  - lib/active_support/core_ext/hash/slice.rb
93
80
  - lib/active_support/core_ext/hash.rb
94
- - lib/active_support/core_ext/integer
95
81
  - lib/active_support/core_ext/integer/even_odd.rb
96
82
  - lib/active_support/core_ext/integer/inflections.rb
97
83
  - lib/active_support/core_ext/integer/time.rb
98
84
  - lib/active_support/core_ext/integer.rb
99
- - lib/active_support/core_ext/kernel
100
85
  - lib/active_support/core_ext/kernel/agnostics.rb
101
86
  - lib/active_support/core_ext/kernel/daemonizing.rb
102
87
  - lib/active_support/core_ext/kernel/debugger.rb
@@ -105,7 +90,6 @@ files:
105
90
  - lib/active_support/core_ext/kernel.rb
106
91
  - lib/active_support/core_ext/load_error.rb
107
92
  - lib/active_support/core_ext/logger.rb
108
- - lib/active_support/core_ext/module
109
93
  - lib/active_support/core_ext/module/aliasing.rb
110
94
  - lib/active_support/core_ext/module/attr_accessor_with_default.rb
111
95
  - lib/active_support/core_ext/module/attr_internal.rb
@@ -118,33 +102,27 @@ files:
118
102
  - lib/active_support/core_ext/module/synchronization.rb
119
103
  - lib/active_support/core_ext/module.rb
120
104
  - lib/active_support/core_ext/name_error.rb
121
- - lib/active_support/core_ext/numeric
122
105
  - lib/active_support/core_ext/numeric/bytes.rb
123
106
  - lib/active_support/core_ext/numeric/conversions.rb
124
107
  - lib/active_support/core_ext/numeric/time.rb
125
108
  - lib/active_support/core_ext/numeric.rb
126
- - lib/active_support/core_ext/object
127
109
  - lib/active_support/core_ext/object/conversions.rb
128
110
  - lib/active_support/core_ext/object/extending.rb
129
111
  - lib/active_support/core_ext/object/instance_variables.rb
130
112
  - lib/active_support/core_ext/object/metaclass.rb
131
113
  - lib/active_support/core_ext/object/misc.rb
132
114
  - lib/active_support/core_ext/object.rb
133
- - lib/active_support/core_ext/pathname
134
115
  - lib/active_support/core_ext/pathname/clean_within.rb
135
116
  - lib/active_support/core_ext/pathname.rb
136
117
  - lib/active_support/core_ext/proc.rb
137
- - lib/active_support/core_ext/process
138
118
  - lib/active_support/core_ext/process/daemon.rb
139
119
  - lib/active_support/core_ext/process.rb
140
- - lib/active_support/core_ext/range
141
120
  - lib/active_support/core_ext/range/blockless_step.rb
142
121
  - lib/active_support/core_ext/range/conversions.rb
143
122
  - lib/active_support/core_ext/range/include_range.rb
144
123
  - lib/active_support/core_ext/range/overlaps.rb
145
124
  - lib/active_support/core_ext/range.rb
146
125
  - lib/active_support/core_ext/rexml.rb
147
- - lib/active_support/core_ext/string
148
126
  - lib/active_support/core_ext/string/access.rb
149
127
  - lib/active_support/core_ext/string/behavior.rb
150
128
  - lib/active_support/core_ext/string/conversions.rb
@@ -156,12 +134,12 @@ files:
156
134
  - lib/active_support/core_ext/string/xchar.rb
157
135
  - lib/active_support/core_ext/string.rb
158
136
  - lib/active_support/core_ext/symbol.rb
159
- - lib/active_support/core_ext/time
160
137
  - lib/active_support/core_ext/time/behavior.rb
161
138
  - lib/active_support/core_ext/time/calculations.rb
162
139
  - lib/active_support/core_ext/time/conversions.rb
163
140
  - lib/active_support/core_ext/time/zones.rb
164
141
  - lib/active_support/core_ext/time.rb
142
+ - lib/active_support/core_ext/uri.rb
165
143
  - lib/active_support/core_ext.rb
166
144
  - lib/active_support/dependencies.rb
167
145
  - lib/active_support/deprecation.rb
@@ -169,9 +147,7 @@ files:
169
147
  - lib/active_support/gzip.rb
170
148
  - lib/active_support/inflections.rb
171
149
  - lib/active_support/inflector.rb
172
- - lib/active_support/json
173
150
  - lib/active_support/json/decoding.rb
174
- - lib/active_support/json/encoders
175
151
  - lib/active_support/json/encoders/date.rb
176
152
  - lib/active_support/json/encoders/date_time.rb
177
153
  - lib/active_support/json/encoders/enumerable.rb
@@ -188,13 +164,12 @@ files:
188
164
  - lib/active_support/json/encoding.rb
189
165
  - lib/active_support/json/variable.rb
190
166
  - lib/active_support/json.rb
191
- - lib/active_support/locale
192
167
  - lib/active_support/locale/en.yml
193
168
  - lib/active_support/memoizable.rb
194
- - lib/active_support/multibyte
195
169
  - lib/active_support/multibyte/chars.rb
196
170
  - lib/active_support/multibyte/exceptions.rb
197
171
  - lib/active_support/multibyte/unicode_database.rb
172
+ - lib/active_support/multibyte/utils.rb
198
173
  - lib/active_support/multibyte.rb
199
174
  - lib/active_support/option_merger.rb
200
175
  - lib/active_support/ordered_hash.rb
@@ -203,23 +178,15 @@ files:
203
178
  - lib/active_support/secure_random.rb
204
179
  - lib/active_support/string_inquirer.rb
205
180
  - lib/active_support/test_case.rb
206
- - lib/active_support/testing
207
- - lib/active_support/testing/core_ext
208
- - lib/active_support/testing/core_ext/test
209
- - lib/active_support/testing/core_ext/test/unit
210
181
  - lib/active_support/testing/core_ext/test/unit/assertions.rb
211
182
  - lib/active_support/testing/core_ext/test.rb
212
183
  - lib/active_support/testing/default.rb
213
184
  - lib/active_support/testing/performance.rb
214
185
  - lib/active_support/testing/setup_and_teardown.rb
215
186
  - lib/active_support/time_with_zone.rb
216
- - lib/active_support/values
217
187
  - lib/active_support/values/time_zone.rb
218
188
  - lib/active_support/values/unicode_tables.dat
219
- - lib/active_support/vendor
220
- - lib/active_support/vendor/builder-2.1.2
221
189
  - lib/active_support/vendor/builder-2.1.2/blankslate.rb
222
- - lib/active_support/vendor/builder-2.1.2/builder
223
190
  - lib/active_support/vendor/builder-2.1.2/builder/blankslate.rb
224
191
  - lib/active_support/vendor/builder-2.1.2/builder/css.rb
225
192
  - lib/active_support/vendor/builder-2.1.2/builder/xchar.rb
@@ -227,20 +194,12 @@ files:
227
194
  - lib/active_support/vendor/builder-2.1.2/builder/xmlevents.rb
228
195
  - lib/active_support/vendor/builder-2.1.2/builder/xmlmarkup.rb
229
196
  - lib/active_support/vendor/builder-2.1.2/builder.rb
230
- - lib/active_support/vendor/i18n-0.0.1
231
- - lib/active_support/vendor/i18n-0.0.1/i18n
232
- - lib/active_support/vendor/i18n-0.0.1/i18n/backend
233
197
  - lib/active_support/vendor/i18n-0.0.1/i18n/backend/simple.rb
234
198
  - lib/active_support/vendor/i18n-0.0.1/i18n/exceptions.rb
235
199
  - lib/active_support/vendor/i18n-0.0.1/i18n.rb
236
- - lib/active_support/vendor/memcache-client-1.5.1
237
200
  - lib/active_support/vendor/memcache-client-1.5.1/memcache.rb
238
- - lib/active_support/vendor/tzinfo-0.3.12
239
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo
240
201
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/data_timezone.rb
241
202
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/data_timezone_info.rb
242
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions
243
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Africa
244
203
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Africa/Algiers.rb
245
204
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Africa/Cairo.rb
246
205
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Africa/Casablanca.rb
@@ -248,8 +207,6 @@ files:
248
207
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Africa/Johannesburg.rb
249
208
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Africa/Monrovia.rb
250
209
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Africa/Nairobi.rb
251
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America
252
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Argentina
253
210
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Argentina/Buenos_Aires.rb
254
211
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Argentina/San_Juan.rb
255
212
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Bogota.rb
@@ -260,7 +217,6 @@ files:
260
217
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Godthab.rb
261
218
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Guatemala.rb
262
219
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Halifax.rb
263
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Indiana
264
220
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Indiana/Indianapolis.rb
265
221
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Juneau.rb
266
222
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/La_Paz.rb
@@ -276,7 +232,6 @@ files:
276
232
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Sao_Paulo.rb
277
233
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/St_Johns.rb
278
234
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/America/Tijuana.rb
279
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Asia
280
235
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Asia/Almaty.rb
281
236
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Asia/Baghdad.rb
282
237
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Asia/Baku.rb
@@ -315,11 +270,9 @@ files:
315
270
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Asia/Yakutsk.rb
316
271
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Asia/Yekaterinburg.rb
317
272
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Asia/Yerevan.rb
318
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Atlantic
319
273
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Atlantic/Azores.rb
320
274
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Atlantic/Cape_Verde.rb
321
275
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Atlantic/South_Georgia.rb
322
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Australia
323
276
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Australia/Adelaide.rb
324
277
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Australia/Brisbane.rb
325
278
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Australia/Darwin.rb
@@ -327,9 +280,7 @@ files:
327
280
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Australia/Melbourne.rb
328
281
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Australia/Perth.rb
329
282
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Australia/Sydney.rb
330
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Etc
331
283
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Etc/UTC.rb
332
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Europe
333
284
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Europe/Amsterdam.rb
334
285
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Europe/Athens.rb
335
286
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Europe/Belgrade.rb
@@ -362,7 +313,6 @@ files:
362
313
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Europe/Vilnius.rb
363
314
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Europe/Warsaw.rb
364
315
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Europe/Zagreb.rb
365
- - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Pacific
366
316
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Pacific/Auckland.rb
367
317
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Pacific/Fiji.rb
368
318
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/definitions/Pacific/Guam.rb
@@ -386,7 +336,6 @@ files:
386
336
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/timezone_period.rb
387
337
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo/timezone_transition_info.rb
388
338
  - lib/active_support/vendor/tzinfo-0.3.12/tzinfo.rb
389
- - lib/active_support/vendor/xml-simple-1.0.11
390
339
  - lib/active_support/vendor/xml-simple-1.0.11/xmlsimple.rb
391
340
  - lib/active_support/vendor.rb
392
341
  - lib/active_support/version.rb
@@ -395,6 +344,8 @@ files:
395
344
  - lib/activesupport.rb
396
345
  has_rdoc: true
397
346
  homepage: http://www.rubyonrails.org
347
+ licenses: []
348
+
398
349
  post_install_message:
399
350
  rdoc_options: []
400
351
 
@@ -415,9 +366,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
415
366
  requirements: []
416
367
 
417
368
  rubyforge_project: activesupport
418
- rubygems_version: 1.3.1
369
+ rubygems_version: 1.3.2
419
370
  signing_key:
420
- specification_version: 2
371
+ specification_version: 3
421
372
  summary: Support and utility classes used by the Rails framework.
422
373
  test_files: []
423
374