tz_offset 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -6
- data/lib/tz_offset.rb +13 -3
- data/lib/tz_offset/data/abbreviations.yaml +41 -26
- data/lib/tz_offset/tasks/extract_offsets.rb +1 -0
- data/lib/tz_offset/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c6c551fd804ccb6447a37a8f0ba12a04c3473d86
|
4
|
+
data.tar.gz: ed70f96b5c51c670199289ef14e01a77778c5488
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4456038642861d8e2dd33e4c7a1b72ba61cfdcb1a0574c2c82ca825283673f42ffdec66b7dc896f9d9168af681b014134b2abce9a318dd9f3975b4002aeae22e
|
7
|
+
data.tar.gz: aa79a77310541f97b1b5b895a0601a67438c74205622f902212580731eefe020c2ce8656f771aca81cf083dfd9f1f90db462a6a10019ff2235d549200c87131d
|
data/CHANGELOG.md
CHANGED
@@ -1,14 +1,16 @@
|
|
1
|
-
TZOffset Changelog
|
2
|
-
==================
|
1
|
+
# TZOffset Changelog
|
3
2
|
|
4
|
-
0.0.
|
5
|
-
|
3
|
+
## 0.0.4 - 2018-01-27
|
4
|
+
|
5
|
+
* Correct parsing of ±00:00UTC;
|
6
|
+
* Updated list of known offsets from Wikipedia.
|
7
|
+
|
8
|
+
## 0.0.3 - 2017-01-14
|
6
9
|
|
7
10
|
* TZOffset is now detailed up to seconds;
|
8
11
|
* Add simple arithmetics (`+`, unary and binary `-`);
|
9
12
|
* Add some handy synonims (like `TZOffset.utc` and `TZOffset#utc?`).
|
10
13
|
|
11
|
-
0.0.2 - 2016-10-25
|
12
|
-
------------------
|
14
|
+
## 0.0.2 - 2016-10-25
|
13
15
|
|
14
16
|
* Add `TZOffset#parse`.
|
data/lib/tz_offset.rb
CHANGED
@@ -45,7 +45,8 @@ class TZOffset
|
|
45
45
|
|
46
46
|
class << self
|
47
47
|
# @private
|
48
|
-
|
48
|
+
# ± should hopefully do no harm to be considered minus, as it happens only in ±00:00 statements
|
49
|
+
MINUSES = /[−—–±]/
|
49
50
|
|
50
51
|
# Parses TZOffset from string. Understands several options like:
|
51
52
|
#
|
@@ -55,7 +56,16 @@ class TZOffset
|
|
55
56
|
# * `+03:30`;
|
56
57
|
# * ..and several combinations.
|
57
58
|
#
|
58
|
-
# @
|
59
|
+
# @example
|
60
|
+
# TZOffset.parse('+05:30') # => #<TZOffset +05:30>
|
61
|
+
# TZOffset.parse('UTC+0200') # => #<TZOffset +02:00>
|
62
|
+
# TZOffset.parse('something') # => nil
|
63
|
+
# TZOffset.parse('EST') # => #<TZOffset -05:00 (EST)>
|
64
|
+
# TZOffset.parse('CST') # => [#<TZOffset -06:00 (CST)>, #<TZOffset +08:00 (CST)>, #<TZOffset -05:00 (CST)>]
|
65
|
+
# TZOffset.parse('CST').map(&:description) # => ["Central Standard Time (North America)", "China Standard Time", "Cuba Standard Time"]
|
66
|
+
#
|
67
|
+
# @return [TZOffset, Array<TZOffset>, nil] Returns array on ambigous abbreviations, and `nil` on
|
68
|
+
# unparseable string.
|
59
69
|
def parse(text)
|
60
70
|
return ABBREV[text.upcase] if ABBREV.key?(text.upcase)
|
61
71
|
|
@@ -197,7 +207,7 @@ class TZOffset
|
|
197
207
|
|
198
208
|
# @return [Boolean]
|
199
209
|
def ==(other)
|
200
|
-
other.class == self.class && other.
|
210
|
+
other.class == self.class && other.seconds == seconds
|
201
211
|
end
|
202
212
|
|
203
213
|
# Like Ruby's `Time.local`, but in current offset.
|
@@ -14,6 +14,16 @@
|
|
14
14
|
:region: Acre
|
15
15
|
:dst: false
|
16
16
|
:val: -300
|
17
|
+
- :abbr: ACT
|
18
|
+
:title: ASEAN Common Time
|
19
|
+
:region: ASEAN Common
|
20
|
+
:dst: false
|
21
|
+
:val: 360
|
22
|
+
- :abbr: ACWST
|
23
|
+
:title: Australian Central Western Standard Time (unofficial)
|
24
|
+
:region: Australian Central Western
|
25
|
+
:dst: false
|
26
|
+
:val: 525
|
17
27
|
- :abbr: ADT
|
18
28
|
:title: Atlantic Daylight Time
|
19
29
|
:region: Atlantic
|
@@ -115,8 +125,8 @@
|
|
115
125
|
:dst: false
|
116
126
|
:val: -240
|
117
127
|
- :abbr: BRST
|
118
|
-
:title:
|
119
|
-
:region:
|
128
|
+
:title: Brasília Summer Time
|
129
|
+
:region: Brasília
|
120
130
|
:dst: true
|
121
131
|
:val: -120
|
122
132
|
- :abbr: BRT
|
@@ -255,7 +265,7 @@
|
|
255
265
|
:dst: false
|
256
266
|
:val: -300
|
257
267
|
- :abbr: CT
|
258
|
-
:title: China
|
268
|
+
:title: China Time
|
259
269
|
:region: China
|
260
270
|
:dst: false
|
261
271
|
:val: 480
|
@@ -280,8 +290,8 @@
|
|
280
290
|
:dst: false
|
281
291
|
:val: 600
|
282
292
|
- :abbr: DFT
|
283
|
-
:title: AIX
|
284
|
-
:region: AIX
|
293
|
+
:title: AIX-specific equivalent of Central European Time
|
294
|
+
:region: AIX-specific equivalent of Central European
|
285
295
|
:dst: false
|
286
296
|
:val: 60
|
287
297
|
- :abbr: EASST
|
@@ -370,8 +380,8 @@
|
|
370
380
|
:dst: false
|
371
381
|
:val: -120
|
372
382
|
- :abbr: GALT
|
373
|
-
:title:
|
374
|
-
:region:
|
383
|
+
:title: Galápagos Time
|
384
|
+
:region: Galápagos
|
375
385
|
:dst: false
|
376
386
|
:val: -360
|
377
387
|
- :abbr: GAMT
|
@@ -419,21 +429,16 @@
|
|
419
429
|
:region: Guyana
|
420
430
|
:dst: false
|
421
431
|
:val: -240
|
422
|
-
- :abbr: HADT
|
423
|
-
:title: Hawaii-Aleutian Daylight Time
|
424
|
-
:region: Hawaii-Aleutian
|
425
|
-
:dst: true
|
426
|
-
:val: -540
|
427
432
|
- :abbr: HAEC
|
428
|
-
:title: Heure Avancée d'Europe Centrale
|
429
|
-
:region: Heure Avancée d'Europe Centrale
|
433
|
+
:title: Heure Avancée d'Europe Centrale French-language name for CEST Time
|
434
|
+
:region: Heure Avancée d'Europe Centrale French-language name for CEST
|
430
435
|
:dst: false
|
431
436
|
:val: 120
|
432
|
-
- :abbr:
|
433
|
-
:title: Hawaii
|
434
|
-
:region: Hawaii
|
435
|
-
:dst:
|
436
|
-
:val: -
|
437
|
+
- :abbr: HDT
|
438
|
+
:title: Hawaii–Aleutian Daylight Time
|
439
|
+
:region: Hawaii–Aleutian
|
440
|
+
:dst: true
|
441
|
+
:val: -540
|
437
442
|
- :abbr: HKT
|
438
443
|
:title: Hong Kong Time
|
439
444
|
:region: Hong Kong
|
@@ -454,6 +459,11 @@
|
|
454
459
|
:region: Khovd
|
455
460
|
:dst: false
|
456
461
|
:val: 420
|
462
|
+
- :abbr: HST
|
463
|
+
:title: Hawaii–Aleutian Standard Time
|
464
|
+
:region: Hawaii–Aleutian
|
465
|
+
:dst: false
|
466
|
+
:val: -600
|
457
467
|
- :abbr: ICT
|
458
468
|
:title: Indochina Time
|
459
469
|
:region: Indochina
|
@@ -505,7 +515,7 @@
|
|
505
515
|
:dst: false
|
506
516
|
:val: 540
|
507
517
|
- :abbr: KGT
|
508
|
-
:title: Kyrgyzstan
|
518
|
+
:title: Kyrgyzstan Time
|
509
519
|
:region: Kyrgyzstan
|
510
520
|
:dst: false
|
511
521
|
:val: 360
|
@@ -630,8 +640,8 @@
|
|
630
640
|
:dst: true
|
631
641
|
:val: -150
|
632
642
|
- :abbr: NFT
|
633
|
-
:title: Norfolk Time
|
634
|
-
:region: Norfolk
|
643
|
+
:title: Norfolk Island Time
|
644
|
+
:region: Norfolk Island
|
635
645
|
:dst: false
|
636
646
|
:val: 660
|
637
647
|
- :abbr: NPT
|
@@ -710,7 +720,7 @@
|
|
710
720
|
:dst: false
|
711
721
|
:val: 300
|
712
722
|
- :abbr: PMDT
|
713
|
-
:title: Saint Pierre and Miquelon Daylight
|
723
|
+
:title: Saint Pierre and Miquelon Daylight Time
|
714
724
|
:region: Saint Pierre and Miquelon
|
715
725
|
:dst: true
|
716
726
|
:val: -120
|
@@ -735,12 +745,12 @@
|
|
735
745
|
:dst: false
|
736
746
|
:val: 480
|
737
747
|
- :abbr: PYST
|
738
|
-
:title: Paraguay Summer Time
|
748
|
+
:title: Paraguay Summer Time
|
739
749
|
:region: Paraguay
|
740
750
|
:dst: true
|
741
751
|
:val: -180
|
742
752
|
- :abbr: PYT
|
743
|
-
:title: Paraguay Time
|
753
|
+
:title: Paraguay Time
|
744
754
|
:region: Paraguay
|
745
755
|
:dst: false
|
746
756
|
:val: -240
|
@@ -755,7 +765,7 @@
|
|
755
765
|
:dst: false
|
756
766
|
:val: -180
|
757
767
|
- :abbr: SAKT
|
758
|
-
:title: Sakhalin Island
|
768
|
+
:title: Sakhalin Island Time
|
759
769
|
:region: Sakhalin Island
|
760
770
|
:dst: false
|
761
771
|
:val: 660
|
@@ -779,6 +789,11 @@
|
|
779
789
|
:region: Seychelles
|
780
790
|
:dst: false
|
781
791
|
:val: 240
|
792
|
+
- :abbr: SDT
|
793
|
+
:title: Samoa Daylight Time
|
794
|
+
:region: Samoa
|
795
|
+
:dst: true
|
796
|
+
:val: -600
|
782
797
|
- :abbr: SGT
|
783
798
|
:title: Singapore Time
|
784
799
|
:region: Singapore
|
@@ -9,6 +9,7 @@ class TZOffset
|
|
9
9
|
'Gambier Islands',
|
10
10
|
'South Georgia and the South Sandwich Islands',
|
11
11
|
"Heure Avancée d'Europe Centrale francised name for CEST",
|
12
|
+
"Heure Avancée d'Europe Centrale French-language name for CEST",
|
12
13
|
'Marshall Islands',
|
13
14
|
'Indian/Kerguelen'
|
14
15
|
]
|
data/lib/tz_offset/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tz_offset
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Victor Shepelev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-01-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubocop
|
@@ -185,7 +185,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
185
185
|
version: '0'
|
186
186
|
requirements: []
|
187
187
|
rubyforge_project:
|
188
|
-
rubygems_version: 2.
|
188
|
+
rubygems_version: 2.6.10
|
189
189
|
signing_key:
|
190
190
|
specification_version: 4
|
191
191
|
summary: Simple and solid timezone offset class
|