tz_offset 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|