activesupport 2.0.5 → 2.1.0

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.

Files changed (236) hide show
  1. data/CHANGELOG +183 -5
  2. data/lib/active_support.rb +6 -2
  3. data/lib/active_support/base64.rb +5 -0
  4. data/lib/active_support/basic_object.rb +23 -4
  5. data/lib/active_support/buffered_logger.rb +17 -3
  6. data/lib/active_support/cache.rb +145 -0
  7. data/lib/active_support/cache/compressed_mem_cache_store.rb +15 -0
  8. data/lib/active_support/cache/drb_store.rb +15 -0
  9. data/lib/active_support/cache/file_store.rb +70 -0
  10. data/lib/active_support/cache/mem_cache_store.rb +100 -0
  11. data/lib/active_support/cache/memory_store.rb +38 -0
  12. data/lib/active_support/callbacks.rb +275 -0
  13. data/lib/active_support/core_ext/array/access.rb +2 -4
  14. data/lib/active_support/core_ext/array/conversions.rb +89 -5
  15. data/lib/active_support/core_ext/array/extract_options.rb +2 -1
  16. data/lib/active_support/core_ext/array/grouping.rb +3 -8
  17. data/lib/active_support/core_ext/array/random_access.rb +1 -1
  18. data/lib/active_support/core_ext/base64.rb +4 -0
  19. data/lib/active_support/core_ext/base64/encoding.rb +13 -0
  20. data/lib/active_support/core_ext/benchmark.rb +12 -0
  21. data/lib/active_support/core_ext/bigdecimal.rb +4 -0
  22. data/lib/active_support/core_ext/bigdecimal/conversions.rb +39 -4
  23. data/lib/active_support/core_ext/blank.rb +5 -2
  24. data/lib/active_support/core_ext/class/attribute_accessors.rb +7 -1
  25. data/lib/active_support/core_ext/class/delegating_attributes.rb +7 -1
  26. data/lib/active_support/core_ext/class/inheritable_attributes.rb +1 -1
  27. data/lib/active_support/core_ext/class/removal.rb +26 -0
  28. data/lib/active_support/core_ext/date/calculations.rb +28 -1
  29. data/lib/active_support/core_ext/date/conversions.rb +1 -0
  30. data/lib/active_support/core_ext/date_time.rb +2 -0
  31. data/lib/active_support/core_ext/date_time/calculations.rb +37 -2
  32. data/lib/active_support/core_ext/date_time/conversions.rb +27 -14
  33. data/lib/active_support/core_ext/enumerable.rb +16 -9
  34. data/lib/active_support/core_ext/exception.rb +8 -0
  35. data/lib/active_support/core_ext/file.rb +6 -6
  36. data/lib/active_support/core_ext/hash/conversions.rb +26 -8
  37. data/lib/active_support/core_ext/hash/indifferent_access.rb +35 -0
  38. data/lib/active_support/core_ext/hash/reverse_merge.rb +4 -1
  39. data/lib/active_support/core_ext/integer/even_odd.rb +10 -5
  40. data/lib/active_support/core_ext/integer/inflections.rb +0 -1
  41. data/lib/active_support/core_ext/kernel/daemonizing.rb +2 -10
  42. data/lib/active_support/core_ext/kernel/reporting.rb +8 -0
  43. data/lib/active_support/core_ext/module/attr_internal.rb +4 -3
  44. data/lib/active_support/core_ext/module/attribute_accessors.rb +11 -1
  45. data/lib/active_support/core_ext/module/delegation.rb +5 -3
  46. data/lib/active_support/core_ext/module/inclusion.rb +19 -0
  47. data/lib/active_support/core_ext/module/introspection.rb +50 -16
  48. data/lib/active_support/core_ext/module/loading.rb +10 -0
  49. data/lib/active_support/core_ext/numeric.rb +3 -1
  50. data/lib/active_support/core_ext/numeric/conversions.rb +19 -0
  51. data/lib/active_support/core_ext/object/instance_variables.rb +52 -0
  52. data/lib/active_support/core_ext/object/misc.rb +1 -1
  53. data/lib/active_support/core_ext/process.rb +1 -0
  54. data/lib/active_support/core_ext/process/daemon.rb +25 -0
  55. data/lib/active_support/core_ext/range/conversions.rb +5 -1
  56. data/lib/active_support/core_ext/range/include_range.rb +8 -0
  57. data/lib/active_support/core_ext/range/overlaps.rb +3 -0
  58. data/lib/active_support/core_ext/string.rb +5 -10
  59. data/lib/active_support/core_ext/string/access.rb +72 -48
  60. data/lib/active_support/core_ext/string/conversions.rb +4 -4
  61. data/lib/active_support/core_ext/string/filters.rb +26 -0
  62. data/lib/active_support/core_ext/string/inflections.rb +56 -64
  63. data/lib/active_support/core_ext/string/iterators.rb +4 -0
  64. data/lib/active_support/core_ext/string/starts_ends_with.rb +12 -4
  65. data/lib/active_support/core_ext/string/unicode.rb +14 -7
  66. data/lib/active_support/core_ext/symbol.rb +1 -1
  67. data/lib/active_support/core_ext/time.rb +2 -0
  68. data/lib/active_support/core_ext/time/calculations.rb +75 -23
  69. data/lib/active_support/core_ext/time/conversions.rb +22 -35
  70. data/lib/active_support/core_ext/time/zones.rb +86 -0
  71. data/lib/active_support/dependencies.rb +92 -80
  72. data/lib/active_support/deprecation.rb +2 -16
  73. data/lib/active_support/duration.rb +4 -4
  74. data/lib/active_support/gzip.rb +25 -0
  75. data/lib/active_support/inflector.rb +92 -69
  76. data/lib/active_support/json.rb +17 -25
  77. data/lib/active_support/json/decoding.rb +1 -1
  78. data/lib/active_support/json/encoders/date.rb +11 -2
  79. data/lib/active_support/json/encoders/date_time.rb +11 -2
  80. data/lib/active_support/json/encoders/enumerable.rb +2 -2
  81. data/lib/active_support/json/encoders/hash.rb +3 -6
  82. data/lib/active_support/json/encoders/object.rb +1 -1
  83. data/lib/active_support/json/encoders/string.rb +8 -2
  84. data/lib/active_support/json/encoders/time.rb +11 -2
  85. data/lib/active_support/json/encoding.rb +0 -1
  86. data/lib/active_support/multibyte/chars.rb +8 -6
  87. data/lib/active_support/multibyte/handlers/utf8_handler.rb +11 -11
  88. data/lib/active_support/ordered_hash.rb +43 -0
  89. data/lib/active_support/ordered_options.rb +0 -38
  90. data/lib/active_support/test_case.rb +10 -2
  91. data/lib/active_support/testing/default.rb +3 -6
  92. data/lib/active_support/testing/setup_and_teardown.rb +93 -0
  93. data/lib/active_support/time_with_zone.rb +283 -0
  94. data/lib/active_support/values/time_zone.rb +336 -123
  95. data/lib/active_support/vendor.rb +12 -0
  96. data/lib/active_support/vendor/memcache-client-1.5.0/memcache.rb +849 -0
  97. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo.rb +33 -0
  98. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/data_timezone.rb +47 -0
  99. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/data_timezone_info.rb +226 -0
  100. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Africa/Algiers.rb +55 -0
  101. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Africa/Cairo.rb +219 -0
  102. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Africa/Casablanca.rb +38 -0
  103. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Africa/Harare.rb +18 -0
  104. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Africa/Johannesburg.rb +25 -0
  105. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Africa/Monrovia.rb +22 -0
  106. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Africa/Nairobi.rb +23 -0
  107. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Argentina/Buenos_Aires.rb +166 -0
  108. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Argentina/San_Juan.rb +170 -0
  109. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Bogota.rb +23 -0
  110. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Caracas.rb +23 -0
  111. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Chicago.rb +283 -0
  112. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Chihuahua.rb +136 -0
  113. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Denver.rb +204 -0
  114. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Godthab.rb +161 -0
  115. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Guatemala.rb +27 -0
  116. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Halifax.rb +274 -0
  117. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Indiana/Indianapolis.rb +149 -0
  118. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Juneau.rb +194 -0
  119. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/La_Paz.rb +22 -0
  120. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Lima.rb +35 -0
  121. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Los_Angeles.rb +232 -0
  122. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Mazatlan.rb +139 -0
  123. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Mexico_City.rb +144 -0
  124. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Monterrey.rb +131 -0
  125. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/New_York.rb +282 -0
  126. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Phoenix.rb +30 -0
  127. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Regina.rb +74 -0
  128. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Santiago.rb +205 -0
  129. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/St_Johns.rb +288 -0
  130. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/America/Tijuana.rb +196 -0
  131. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Almaty.rb +67 -0
  132. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Baghdad.rb +73 -0
  133. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Baku.rb +161 -0
  134. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Bangkok.rb +20 -0
  135. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Chongqing.rb +33 -0
  136. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Dhaka.rb +27 -0
  137. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Hong_Kong.rb +87 -0
  138. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Irkutsk.rb +165 -0
  139. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Jakarta.rb +30 -0
  140. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Jerusalem.rb +163 -0
  141. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Kabul.rb +20 -0
  142. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Kamchatka.rb +163 -0
  143. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Karachi.rb +28 -0
  144. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Katmandu.rb +20 -0
  145. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Kolkata.rb +25 -0
  146. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Krasnoyarsk.rb +163 -0
  147. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Kuala_Lumpur.rb +31 -0
  148. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Kuwait.rb +18 -0
  149. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Magadan.rb +163 -0
  150. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Muscat.rb +18 -0
  151. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Novosibirsk.rb +164 -0
  152. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Rangoon.rb +24 -0
  153. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Riyadh.rb +18 -0
  154. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Seoul.rb +34 -0
  155. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Shanghai.rb +35 -0
  156. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Singapore.rb +33 -0
  157. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Taipei.rb +59 -0
  158. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Tashkent.rb +47 -0
  159. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Tbilisi.rb +78 -0
  160. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Tehran.rb +121 -0
  161. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Tokyo.rb +30 -0
  162. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Ulaanbaatar.rb +65 -0
  163. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Urumqi.rb +33 -0
  164. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Vladivostok.rb +164 -0
  165. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Yakutsk.rb +163 -0
  166. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Yekaterinburg.rb +165 -0
  167. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Asia/Yerevan.rb +165 -0
  168. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Atlantic/Azores.rb +270 -0
  169. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Atlantic/Cape_Verde.rb +23 -0
  170. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Atlantic/South_Georgia.rb +18 -0
  171. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Australia/Adelaide.rb +187 -0
  172. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Australia/Brisbane.rb +35 -0
  173. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Australia/Darwin.rb +29 -0
  174. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Australia/Hobart.rb +193 -0
  175. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Australia/Melbourne.rb +185 -0
  176. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Australia/Perth.rb +37 -0
  177. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Australia/Sydney.rb +185 -0
  178. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Etc/UTC.rb +16 -0
  179. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Amsterdam.rb +228 -0
  180. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Athens.rb +185 -0
  181. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Belgrade.rb +163 -0
  182. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Berlin.rb +188 -0
  183. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Bratislava.rb +13 -0
  184. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Brussels.rb +232 -0
  185. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Bucharest.rb +181 -0
  186. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Budapest.rb +197 -0
  187. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Copenhagen.rb +179 -0
  188. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Dublin.rb +276 -0
  189. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Helsinki.rb +163 -0
  190. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Istanbul.rb +218 -0
  191. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Kiev.rb +168 -0
  192. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Lisbon.rb +268 -0
  193. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Ljubljana.rb +13 -0
  194. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/London.rb +288 -0
  195. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Madrid.rb +211 -0
  196. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Minsk.rb +170 -0
  197. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Moscow.rb +181 -0
  198. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Paris.rb +232 -0
  199. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Prague.rb +187 -0
  200. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Riga.rb +176 -0
  201. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Rome.rb +215 -0
  202. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Sarajevo.rb +13 -0
  203. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Skopje.rb +13 -0
  204. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Sofia.rb +173 -0
  205. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Stockholm.rb +165 -0
  206. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Tallinn.rb +172 -0
  207. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Vienna.rb +183 -0
  208. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Vilnius.rb +170 -0
  209. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Warsaw.rb +212 -0
  210. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Europe/Zagreb.rb +13 -0
  211. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Pacific/Auckland.rb +202 -0
  212. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Pacific/Fiji.rb +23 -0
  213. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Pacific/Guam.rb +22 -0
  214. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Pacific/Honolulu.rb +28 -0
  215. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Pacific/Majuro.rb +20 -0
  216. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Pacific/Midway.rb +25 -0
  217. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Pacific/Noumea.rb +25 -0
  218. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Pacific/Pago_Pago.rb +26 -0
  219. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Pacific/Port_Moresby.rb +20 -0
  220. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/definitions/Pacific/Tongatapu.rb +27 -0
  221. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/info_timezone.rb +52 -0
  222. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/linked_timezone.rb +51 -0
  223. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/linked_timezone_info.rb +44 -0
  224. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/offset_rationals.rb +95 -0
  225. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/time_or_datetime.rb +292 -0
  226. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/timezone.rb +508 -0
  227. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/timezone_definition.rb +56 -0
  228. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/timezone_info.rb +40 -0
  229. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/timezone_offset_info.rb +94 -0
  230. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/timezone_period.rb +198 -0
  231. data/lib/active_support/vendor/tzinfo-0.3.8/tzinfo/timezone_transition_info.rb +138 -0
  232. data/lib/active_support/version.rb +2 -2
  233. data/lib/active_support/whiny_nil.rb +30 -10
  234. metadata +175 -5
  235. data/lib/active_support/core_ext/rexml.rb +0 -38
  236. data/lib/active_support/testing.rb +0 -1
@@ -0,0 +1,18 @@
1
+ require 'tzinfo/timezone_definition'
2
+
3
+ module TZInfo
4
+ module Definitions
5
+ module Asia
6
+ module Kuwait
7
+ include TimezoneDefinition
8
+
9
+ timezone 'Asia/Kuwait' do |tz|
10
+ tz.offset :o0, 11516, 0, :LMT
11
+ tz.offset :o1, 10800, 0, :AST
12
+
13
+ tz.transition 1949, 12, :o1, 52558899121, 21600
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,163 @@
1
+ require 'tzinfo/timezone_definition'
2
+
3
+ module TZInfo
4
+ module Definitions
5
+ module Asia
6
+ module Magadan
7
+ include TimezoneDefinition
8
+
9
+ timezone 'Asia/Magadan' do |tz|
10
+ tz.offset :o0, 36192, 0, :LMT
11
+ tz.offset :o1, 36000, 0, :MAGT
12
+ tz.offset :o2, 39600, 0, :MAGT
13
+ tz.offset :o3, 39600, 3600, :MAGST
14
+ tz.offset :o4, 36000, 3600, :MAGST
15
+
16
+ tz.transition 1924, 5, :o1, 2181516373, 900
17
+ tz.transition 1930, 6, :o2, 29113777, 12
18
+ tz.transition 1981, 3, :o3, 354891600
19
+ tz.transition 1981, 9, :o2, 370699200
20
+ tz.transition 1982, 3, :o3, 386427600
21
+ tz.transition 1982, 9, :o2, 402235200
22
+ tz.transition 1983, 3, :o3, 417963600
23
+ tz.transition 1983, 9, :o2, 433771200
24
+ tz.transition 1984, 3, :o3, 449586000
25
+ tz.transition 1984, 9, :o2, 465318000
26
+ tz.transition 1985, 3, :o3, 481042800
27
+ tz.transition 1985, 9, :o2, 496767600
28
+ tz.transition 1986, 3, :o3, 512492400
29
+ tz.transition 1986, 9, :o2, 528217200
30
+ tz.transition 1987, 3, :o3, 543942000
31
+ tz.transition 1987, 9, :o2, 559666800
32
+ tz.transition 1988, 3, :o3, 575391600
33
+ tz.transition 1988, 9, :o2, 591116400
34
+ tz.transition 1989, 3, :o3, 606841200
35
+ tz.transition 1989, 9, :o2, 622566000
36
+ tz.transition 1990, 3, :o3, 638290800
37
+ tz.transition 1990, 9, :o2, 654620400
38
+ tz.transition 1991, 3, :o4, 670345200
39
+ tz.transition 1991, 9, :o1, 686073600
40
+ tz.transition 1992, 1, :o2, 695750400
41
+ tz.transition 1992, 3, :o3, 701784000
42
+ tz.transition 1992, 9, :o2, 717505200
43
+ tz.transition 1993, 3, :o3, 733244400
44
+ tz.transition 1993, 9, :o2, 748969200
45
+ tz.transition 1994, 3, :o3, 764694000
46
+ tz.transition 1994, 9, :o2, 780418800
47
+ tz.transition 1995, 3, :o3, 796143600
48
+ tz.transition 1995, 9, :o2, 811868400
49
+ tz.transition 1996, 3, :o3, 828198000
50
+ tz.transition 1996, 10, :o2, 846342000
51
+ tz.transition 1997, 3, :o3, 859647600
52
+ tz.transition 1997, 10, :o2, 877791600
53
+ tz.transition 1998, 3, :o3, 891097200
54
+ tz.transition 1998, 10, :o2, 909241200
55
+ tz.transition 1999, 3, :o3, 922546800
56
+ tz.transition 1999, 10, :o2, 941295600
57
+ tz.transition 2000, 3, :o3, 953996400
58
+ tz.transition 2000, 10, :o2, 972745200
59
+ tz.transition 2001, 3, :o3, 985446000
60
+ tz.transition 2001, 10, :o2, 1004194800
61
+ tz.transition 2002, 3, :o3, 1017500400
62
+ tz.transition 2002, 10, :o2, 1035644400
63
+ tz.transition 2003, 3, :o3, 1048950000
64
+ tz.transition 2003, 10, :o2, 1067094000
65
+ tz.transition 2004, 3, :o3, 1080399600
66
+ tz.transition 2004, 10, :o2, 1099148400
67
+ tz.transition 2005, 3, :o3, 1111849200
68
+ tz.transition 2005, 10, :o2, 1130598000
69
+ tz.transition 2006, 3, :o3, 1143298800
70
+ tz.transition 2006, 10, :o2, 1162047600
71
+ tz.transition 2007, 3, :o3, 1174748400
72
+ tz.transition 2007, 10, :o2, 1193497200
73
+ tz.transition 2008, 3, :o3, 1206802800
74
+ tz.transition 2008, 10, :o2, 1224946800
75
+ tz.transition 2009, 3, :o3, 1238252400
76
+ tz.transition 2009, 10, :o2, 1256396400
77
+ tz.transition 2010, 3, :o3, 1269702000
78
+ tz.transition 2010, 10, :o2, 1288450800
79
+ tz.transition 2011, 3, :o3, 1301151600
80
+ tz.transition 2011, 10, :o2, 1319900400
81
+ tz.transition 2012, 3, :o3, 1332601200
82
+ tz.transition 2012, 10, :o2, 1351350000
83
+ tz.transition 2013, 3, :o3, 1364655600
84
+ tz.transition 2013, 10, :o2, 1382799600
85
+ tz.transition 2014, 3, :o3, 1396105200
86
+ tz.transition 2014, 10, :o2, 1414249200
87
+ tz.transition 2015, 3, :o3, 1427554800
88
+ tz.transition 2015, 10, :o2, 1445698800
89
+ tz.transition 2016, 3, :o3, 1459004400
90
+ tz.transition 2016, 10, :o2, 1477753200
91
+ tz.transition 2017, 3, :o3, 1490454000
92
+ tz.transition 2017, 10, :o2, 1509202800
93
+ tz.transition 2018, 3, :o3, 1521903600
94
+ tz.transition 2018, 10, :o2, 1540652400
95
+ tz.transition 2019, 3, :o3, 1553958000
96
+ tz.transition 2019, 10, :o2, 1572102000
97
+ tz.transition 2020, 3, :o3, 1585407600
98
+ tz.transition 2020, 10, :o2, 1603551600
99
+ tz.transition 2021, 3, :o3, 1616857200
100
+ tz.transition 2021, 10, :o2, 1635606000
101
+ tz.transition 2022, 3, :o3, 1648306800
102
+ tz.transition 2022, 10, :o2, 1667055600
103
+ tz.transition 2023, 3, :o3, 1679756400
104
+ tz.transition 2023, 10, :o2, 1698505200
105
+ tz.transition 2024, 3, :o3, 1711810800
106
+ tz.transition 2024, 10, :o2, 1729954800
107
+ tz.transition 2025, 3, :o3, 1743260400
108
+ tz.transition 2025, 10, :o2, 1761404400
109
+ tz.transition 2026, 3, :o3, 1774710000
110
+ tz.transition 2026, 10, :o2, 1792854000
111
+ tz.transition 2027, 3, :o3, 1806159600
112
+ tz.transition 2027, 10, :o2, 1824908400
113
+ tz.transition 2028, 3, :o3, 1837609200
114
+ tz.transition 2028, 10, :o2, 1856358000
115
+ tz.transition 2029, 3, :o3, 1869058800
116
+ tz.transition 2029, 10, :o2, 1887807600
117
+ tz.transition 2030, 3, :o3, 1901113200
118
+ tz.transition 2030, 10, :o2, 1919257200
119
+ tz.transition 2031, 3, :o3, 1932562800
120
+ tz.transition 2031, 10, :o2, 1950706800
121
+ tz.transition 2032, 3, :o3, 1964012400
122
+ tz.transition 2032, 10, :o2, 1982761200
123
+ tz.transition 2033, 3, :o3, 1995462000
124
+ tz.transition 2033, 10, :o2, 2014210800
125
+ tz.transition 2034, 3, :o3, 2026911600
126
+ tz.transition 2034, 10, :o2, 2045660400
127
+ tz.transition 2035, 3, :o3, 2058361200
128
+ tz.transition 2035, 10, :o2, 2077110000
129
+ tz.transition 2036, 3, :o3, 2090415600
130
+ tz.transition 2036, 10, :o2, 2108559600
131
+ tz.transition 2037, 3, :o3, 2121865200
132
+ tz.transition 2037, 10, :o2, 2140009200
133
+ tz.transition 2038, 3, :o3, 19724081, 8
134
+ tz.transition 2038, 10, :o2, 19725817, 8
135
+ tz.transition 2039, 3, :o3, 19726993, 8
136
+ tz.transition 2039, 10, :o2, 19728729, 8
137
+ tz.transition 2040, 3, :o3, 19729905, 8
138
+ tz.transition 2040, 10, :o2, 19731641, 8
139
+ tz.transition 2041, 3, :o3, 19732873, 8
140
+ tz.transition 2041, 10, :o2, 19734553, 8
141
+ tz.transition 2042, 3, :o3, 19735785, 8
142
+ tz.transition 2042, 10, :o2, 19737465, 8
143
+ tz.transition 2043, 3, :o3, 19738697, 8
144
+ tz.transition 2043, 10, :o2, 19740377, 8
145
+ tz.transition 2044, 3, :o3, 19741609, 8
146
+ tz.transition 2044, 10, :o2, 19743345, 8
147
+ tz.transition 2045, 3, :o3, 19744521, 8
148
+ tz.transition 2045, 10, :o2, 19746257, 8
149
+ tz.transition 2046, 3, :o3, 19747433, 8
150
+ tz.transition 2046, 10, :o2, 19749169, 8
151
+ tz.transition 2047, 3, :o3, 19750401, 8
152
+ tz.transition 2047, 10, :o2, 19752081, 8
153
+ tz.transition 2048, 3, :o3, 19753313, 8
154
+ tz.transition 2048, 10, :o2, 19754993, 8
155
+ tz.transition 2049, 3, :o3, 19756225, 8
156
+ tz.transition 2049, 10, :o2, 19757961, 8
157
+ tz.transition 2050, 3, :o3, 19759137, 8
158
+ tz.transition 2050, 10, :o2, 19760873, 8
159
+ end
160
+ end
161
+ end
162
+ end
163
+ end
@@ -0,0 +1,18 @@
1
+ require 'tzinfo/timezone_definition'
2
+
3
+ module TZInfo
4
+ module Definitions
5
+ module Asia
6
+ module Muscat
7
+ include TimezoneDefinition
8
+
9
+ timezone 'Asia/Muscat' do |tz|
10
+ tz.offset :o0, 14060, 0, :LMT
11
+ tz.offset :o1, 14400, 0, :GST
12
+
13
+ tz.transition 1919, 12, :o1, 10464441137, 4320
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,164 @@
1
+ require 'tzinfo/timezone_definition'
2
+
3
+ module TZInfo
4
+ module Definitions
5
+ module Asia
6
+ module Novosibirsk
7
+ include TimezoneDefinition
8
+
9
+ timezone 'Asia/Novosibirsk' do |tz|
10
+ tz.offset :o0, 19900, 0, :LMT
11
+ tz.offset :o1, 21600, 0, :NOVT
12
+ tz.offset :o2, 25200, 0, :NOVT
13
+ tz.offset :o3, 25200, 3600, :NOVST
14
+ tz.offset :o4, 21600, 3600, :NOVST
15
+
16
+ tz.transition 1919, 12, :o1, 2092872833, 864
17
+ tz.transition 1930, 6, :o2, 9704593, 4
18
+ tz.transition 1981, 3, :o3, 354906000
19
+ tz.transition 1981, 9, :o2, 370713600
20
+ tz.transition 1982, 3, :o3, 386442000
21
+ tz.transition 1982, 9, :o2, 402249600
22
+ tz.transition 1983, 3, :o3, 417978000
23
+ tz.transition 1983, 9, :o2, 433785600
24
+ tz.transition 1984, 3, :o3, 449600400
25
+ tz.transition 1984, 9, :o2, 465332400
26
+ tz.transition 1985, 3, :o3, 481057200
27
+ tz.transition 1985, 9, :o2, 496782000
28
+ tz.transition 1986, 3, :o3, 512506800
29
+ tz.transition 1986, 9, :o2, 528231600
30
+ tz.transition 1987, 3, :o3, 543956400
31
+ tz.transition 1987, 9, :o2, 559681200
32
+ tz.transition 1988, 3, :o3, 575406000
33
+ tz.transition 1988, 9, :o2, 591130800
34
+ tz.transition 1989, 3, :o3, 606855600
35
+ tz.transition 1989, 9, :o2, 622580400
36
+ tz.transition 1990, 3, :o3, 638305200
37
+ tz.transition 1990, 9, :o2, 654634800
38
+ tz.transition 1991, 3, :o4, 670359600
39
+ tz.transition 1991, 9, :o1, 686088000
40
+ tz.transition 1992, 1, :o2, 695764800
41
+ tz.transition 1992, 3, :o3, 701798400
42
+ tz.transition 1992, 9, :o2, 717519600
43
+ tz.transition 1993, 3, :o3, 733258800
44
+ tz.transition 1993, 5, :o4, 738086400
45
+ tz.transition 1993, 9, :o1, 748987200
46
+ tz.transition 1994, 3, :o4, 764712000
47
+ tz.transition 1994, 9, :o1, 780436800
48
+ tz.transition 1995, 3, :o4, 796161600
49
+ tz.transition 1995, 9, :o1, 811886400
50
+ tz.transition 1996, 3, :o4, 828216000
51
+ tz.transition 1996, 10, :o1, 846360000
52
+ tz.transition 1997, 3, :o4, 859665600
53
+ tz.transition 1997, 10, :o1, 877809600
54
+ tz.transition 1998, 3, :o4, 891115200
55
+ tz.transition 1998, 10, :o1, 909259200
56
+ tz.transition 1999, 3, :o4, 922564800
57
+ tz.transition 1999, 10, :o1, 941313600
58
+ tz.transition 2000, 3, :o4, 954014400
59
+ tz.transition 2000, 10, :o1, 972763200
60
+ tz.transition 2001, 3, :o4, 985464000
61
+ tz.transition 2001, 10, :o1, 1004212800
62
+ tz.transition 2002, 3, :o4, 1017518400
63
+ tz.transition 2002, 10, :o1, 1035662400
64
+ tz.transition 2003, 3, :o4, 1048968000
65
+ tz.transition 2003, 10, :o1, 1067112000
66
+ tz.transition 2004, 3, :o4, 1080417600
67
+ tz.transition 2004, 10, :o1, 1099166400
68
+ tz.transition 2005, 3, :o4, 1111867200
69
+ tz.transition 2005, 10, :o1, 1130616000
70
+ tz.transition 2006, 3, :o4, 1143316800
71
+ tz.transition 2006, 10, :o1, 1162065600
72
+ tz.transition 2007, 3, :o4, 1174766400
73
+ tz.transition 2007, 10, :o1, 1193515200
74
+ tz.transition 2008, 3, :o4, 1206820800
75
+ tz.transition 2008, 10, :o1, 1224964800
76
+ tz.transition 2009, 3, :o4, 1238270400
77
+ tz.transition 2009, 10, :o1, 1256414400
78
+ tz.transition 2010, 3, :o4, 1269720000
79
+ tz.transition 2010, 10, :o1, 1288468800
80
+ tz.transition 2011, 3, :o4, 1301169600
81
+ tz.transition 2011, 10, :o1, 1319918400
82
+ tz.transition 2012, 3, :o4, 1332619200
83
+ tz.transition 2012, 10, :o1, 1351368000
84
+ tz.transition 2013, 3, :o4, 1364673600
85
+ tz.transition 2013, 10, :o1, 1382817600
86
+ tz.transition 2014, 3, :o4, 1396123200
87
+ tz.transition 2014, 10, :o1, 1414267200
88
+ tz.transition 2015, 3, :o4, 1427572800
89
+ tz.transition 2015, 10, :o1, 1445716800
90
+ tz.transition 2016, 3, :o4, 1459022400
91
+ tz.transition 2016, 10, :o1, 1477771200
92
+ tz.transition 2017, 3, :o4, 1490472000
93
+ tz.transition 2017, 10, :o1, 1509220800
94
+ tz.transition 2018, 3, :o4, 1521921600
95
+ tz.transition 2018, 10, :o1, 1540670400
96
+ tz.transition 2019, 3, :o4, 1553976000
97
+ tz.transition 2019, 10, :o1, 1572120000
98
+ tz.transition 2020, 3, :o4, 1585425600
99
+ tz.transition 2020, 10, :o1, 1603569600
100
+ tz.transition 2021, 3, :o4, 1616875200
101
+ tz.transition 2021, 10, :o1, 1635624000
102
+ tz.transition 2022, 3, :o4, 1648324800
103
+ tz.transition 2022, 10, :o1, 1667073600
104
+ tz.transition 2023, 3, :o4, 1679774400
105
+ tz.transition 2023, 10, :o1, 1698523200
106
+ tz.transition 2024, 3, :o4, 1711828800
107
+ tz.transition 2024, 10, :o1, 1729972800
108
+ tz.transition 2025, 3, :o4, 1743278400
109
+ tz.transition 2025, 10, :o1, 1761422400
110
+ tz.transition 2026, 3, :o4, 1774728000
111
+ tz.transition 2026, 10, :o1, 1792872000
112
+ tz.transition 2027, 3, :o4, 1806177600
113
+ tz.transition 2027, 10, :o1, 1824926400
114
+ tz.transition 2028, 3, :o4, 1837627200
115
+ tz.transition 2028, 10, :o1, 1856376000
116
+ tz.transition 2029, 3, :o4, 1869076800
117
+ tz.transition 2029, 10, :o1, 1887825600
118
+ tz.transition 2030, 3, :o4, 1901131200
119
+ tz.transition 2030, 10, :o1, 1919275200
120
+ tz.transition 2031, 3, :o4, 1932580800
121
+ tz.transition 2031, 10, :o1, 1950724800
122
+ tz.transition 2032, 3, :o4, 1964030400
123
+ tz.transition 2032, 10, :o1, 1982779200
124
+ tz.transition 2033, 3, :o4, 1995480000
125
+ tz.transition 2033, 10, :o1, 2014228800
126
+ tz.transition 2034, 3, :o4, 2026929600
127
+ tz.transition 2034, 10, :o1, 2045678400
128
+ tz.transition 2035, 3, :o4, 2058379200
129
+ tz.transition 2035, 10, :o1, 2077128000
130
+ tz.transition 2036, 3, :o4, 2090433600
131
+ tz.transition 2036, 10, :o1, 2108577600
132
+ tz.transition 2037, 3, :o4, 2121883200
133
+ tz.transition 2037, 10, :o1, 2140027200
134
+ tz.transition 2038, 3, :o4, 7396531, 3
135
+ tz.transition 2038, 10, :o1, 7397182, 3
136
+ tz.transition 2039, 3, :o4, 7397623, 3
137
+ tz.transition 2039, 10, :o1, 7398274, 3
138
+ tz.transition 2040, 3, :o4, 7398715, 3
139
+ tz.transition 2040, 10, :o1, 7399366, 3
140
+ tz.transition 2041, 3, :o4, 7399828, 3
141
+ tz.transition 2041, 10, :o1, 7400458, 3
142
+ tz.transition 2042, 3, :o4, 7400920, 3
143
+ tz.transition 2042, 10, :o1, 7401550, 3
144
+ tz.transition 2043, 3, :o4, 7402012, 3
145
+ tz.transition 2043, 10, :o1, 7402642, 3
146
+ tz.transition 2044, 3, :o4, 7403104, 3
147
+ tz.transition 2044, 10, :o1, 7403755, 3
148
+ tz.transition 2045, 3, :o4, 7404196, 3
149
+ tz.transition 2045, 10, :o1, 7404847, 3
150
+ tz.transition 2046, 3, :o4, 7405288, 3
151
+ tz.transition 2046, 10, :o1, 7405939, 3
152
+ tz.transition 2047, 3, :o4, 7406401, 3
153
+ tz.transition 2047, 10, :o1, 7407031, 3
154
+ tz.transition 2048, 3, :o4, 7407493, 3
155
+ tz.transition 2048, 10, :o1, 7408123, 3
156
+ tz.transition 2049, 3, :o4, 7408585, 3
157
+ tz.transition 2049, 10, :o1, 7409236, 3
158
+ tz.transition 2050, 3, :o4, 7409677, 3
159
+ tz.transition 2050, 10, :o1, 7410328, 3
160
+ end
161
+ end
162
+ end
163
+ end
164
+ end
@@ -0,0 +1,24 @@
1
+ require 'tzinfo/timezone_definition'
2
+
3
+ module TZInfo
4
+ module Definitions
5
+ module Asia
6
+ module Rangoon
7
+ include TimezoneDefinition
8
+
9
+ timezone 'Asia/Rangoon' do |tz|
10
+ tz.offset :o0, 23080, 0, :LMT
11
+ tz.offset :o1, 23076, 0, :RMT
12
+ tz.offset :o2, 23400, 0, :BURT
13
+ tz.offset :o3, 32400, 0, :JST
14
+ tz.offset :o4, 23400, 0, :MMT
15
+
16
+ tz.transition 1879, 12, :o1, 5200664903, 2160
17
+ tz.transition 1919, 12, :o2, 5813578159, 2400
18
+ tz.transition 1942, 4, :o3, 116663051, 48
19
+ tz.transition 1945, 5, :o4, 19452625, 8
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,18 @@
1
+ require 'tzinfo/timezone_definition'
2
+
3
+ module TZInfo
4
+ module Definitions
5
+ module Asia
6
+ module Riyadh
7
+ include TimezoneDefinition
8
+
9
+ timezone 'Asia/Riyadh' do |tz|
10
+ tz.offset :o0, 11212, 0, :LMT
11
+ tz.offset :o1, 10800, 0, :AST
12
+
13
+ tz.transition 1949, 12, :o1, 52558899197, 21600
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,34 @@
1
+ require 'tzinfo/timezone_definition'
2
+
3
+ module TZInfo
4
+ module Definitions
5
+ module Asia
6
+ module Seoul
7
+ include TimezoneDefinition
8
+
9
+ timezone 'Asia/Seoul' do |tz|
10
+ tz.offset :o0, 30472, 0, :LMT
11
+ tz.offset :o1, 30600, 0, :KST
12
+ tz.offset :o2, 32400, 0, :KST
13
+ tz.offset :o3, 28800, 0, :KST
14
+ tz.offset :o4, 28800, 3600, :KDT
15
+ tz.offset :o5, 32400, 3600, :KDT
16
+
17
+ tz.transition 1889, 12, :o1, 26042775991, 10800
18
+ tz.transition 1904, 11, :o2, 116007127, 48
19
+ tz.transition 1927, 12, :o1, 19401969, 8
20
+ tz.transition 1931, 12, :o2, 116481943, 48
21
+ tz.transition 1954, 3, :o3, 19478577, 8
22
+ tz.transition 1960, 5, :o4, 14622415, 6
23
+ tz.transition 1960, 9, :o3, 19497521, 8
24
+ tz.transition 1961, 8, :o1, 14625127, 6
25
+ tz.transition 1968, 9, :o2, 117126247, 48
26
+ tz.transition 1987, 5, :o5, 547570800
27
+ tz.transition 1987, 10, :o2, 560872800
28
+ tz.transition 1988, 5, :o5, 579020400
29
+ tz.transition 1988, 10, :o2, 592322400
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,35 @@
1
+ require 'tzinfo/timezone_definition'
2
+
3
+ module TZInfo
4
+ module Definitions
5
+ module Asia
6
+ module Shanghai
7
+ include TimezoneDefinition
8
+
9
+ timezone 'Asia/Shanghai' do |tz|
10
+ tz.offset :o0, 29152, 0, :LMT
11
+ tz.offset :o1, 28800, 0, :CST
12
+ tz.offset :o2, 28800, 3600, :CDT
13
+
14
+ tz.transition 1927, 12, :o1, 6548164639, 2700
15
+ tz.transition 1940, 6, :o2, 14578699, 6
16
+ tz.transition 1940, 9, :o1, 19439225, 8
17
+ tz.transition 1941, 3, :o2, 14580415, 6
18
+ tz.transition 1941, 9, :o1, 19442145, 8
19
+ tz.transition 1986, 5, :o2, 515520000
20
+ tz.transition 1986, 9, :o1, 527007600
21
+ tz.transition 1987, 4, :o2, 545155200
22
+ tz.transition 1987, 9, :o1, 558457200
23
+ tz.transition 1988, 4, :o2, 576604800
24
+ tz.transition 1988, 9, :o1, 589906800
25
+ tz.transition 1989, 4, :o2, 608659200
26
+ tz.transition 1989, 9, :o1, 621961200
27
+ tz.transition 1990, 4, :o2, 640108800
28
+ tz.transition 1990, 9, :o1, 653410800
29
+ tz.transition 1991, 4, :o2, 671558400
30
+ tz.transition 1991, 9, :o1, 684860400
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end