tzinfo 2.0.0 → 2.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +1 -2
- data/CHANGES.md +21 -0
- data/LICENSE +1 -1
- data/lib/tzinfo.rb +12 -0
- data/lib/tzinfo/country.rb +10 -0
- data/lib/tzinfo/data_sources/ruby_data_source.rb +3 -1
- data/lib/tzinfo/data_sources/zoneinfo_data_source.rb +2 -0
- data/lib/tzinfo/data_sources/zoneinfo_reader.rb +2 -0
- data/lib/tzinfo/timezone.rb +10 -0
- data/lib/tzinfo/untaint_ext.rb +18 -0
- data/lib/tzinfo/version.rb +1 -1
- metadata +12 -11
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ec86298303c2574741a727440578c6e0b7f89be23f2c6d6e3ee01fccfeb1206e
|
4
|
+
data.tar.gz: c0fddb69282a1d64a69c5c73419ec5971a0baf7cc0d6af904879e39393953aa0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 24abd1a7d10d00dacf003d6d80211fa2f6bd46f90bf1068ed473d74a4cab3f2a44a46c3224a942f41850cbdaf303bbf59e02dba37b5bf0af600d60435f5d5242
|
7
|
+
data.tar.gz: a4665320a7cf87ac113e50e6af2f93f5d4df9c6f40af1b3d35bbf8a2ee88aeb95fb98d7e04b6cb3c2fedc1e0bb94c13d185fd712cd2105ae527129ae2abbecac
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
@@ -1,2 +1 @@
|
|
1
|
-
|
2
|
-
��β�A�8iKCJ��=ܧ��f��7�w;]x4�
|
1
|
+
<�U��#�p�D��P�����Kf�����_0e|��)��E��H�C�p`t�XR��d���R�[x�����-�,5�h۫��U�{u��wu���b���! d�`jX5?��>���T��)a��2���_���.d~�^��/�t'z%��?�'�eh�~�T{B�RĐY�'_$�0~����8'�����O6ŏ( yp� ������S`d{r���1�B���b�u�n��[�������$o��8��jt�#E
|
data/CHANGES.md
CHANGED
@@ -1,5 +1,16 @@
|
|
1
1
|
# Changes
|
2
2
|
|
3
|
+
## Version 2.0.1 - 24-Dec-2019
|
4
|
+
|
5
|
+
* Fixed "SecurityError: Insecure operation - require" exceptions when loading
|
6
|
+
data with recent Ruby releases in safe mode. #100.
|
7
|
+
* Fixed warnings when running on Ruby 2.7. #109.
|
8
|
+
* Add a `TZInfo::Timezone#=~` method that performs a regex match on the time
|
9
|
+
zone identifier. #99.
|
10
|
+
* Add a `TZInfo::Country#=~` method that performs a regex match on the country
|
11
|
+
code.
|
12
|
+
|
13
|
+
|
3
14
|
## Version 2.0.0 - 26-Dec-2018
|
4
15
|
|
5
16
|
### Added
|
@@ -145,6 +156,16 @@
|
|
145
156
|
`TZInfo::Country.get('US').zone_identifiers` should be used instead.
|
146
157
|
|
147
158
|
|
159
|
+
## Version 1.2.6 - 24-Dec-2019
|
160
|
+
|
161
|
+
* `Timezone#strftime('%s', time)` will now return the correct number of seconds
|
162
|
+
since the epoch. #91.
|
163
|
+
* Removed the unused `TZInfo::RubyDataSource::REQUIRE_PATH` constant.
|
164
|
+
* Fixed "SecurityError: Insecure operation - require" exceptions when loading
|
165
|
+
data with recent Ruby releases in safe mode.
|
166
|
+
* Fixed warnings when running on Ruby 2.7. #106 and #111.
|
167
|
+
|
168
|
+
|
148
169
|
## Version 1.2.5 - 4-Feb-2018
|
149
170
|
|
150
171
|
* Support recursively (deep) freezing `Country` and `Timezone` instances. #80.
|
data/LICENSE
CHANGED
data/lib/tzinfo.rb
CHANGED
@@ -5,6 +5,18 @@
|
|
5
5
|
module TZInfo
|
6
6
|
end
|
7
7
|
|
8
|
+
# Object#untaint is a deprecated no-op in Ruby >= 2.7 and will be removed in
|
9
|
+
# 3.0. Add a refinement to either silence the warning, or supply the method if
|
10
|
+
# needed.
|
11
|
+
old_verbose = $VERBOSE
|
12
|
+
$VERBOSE = false
|
13
|
+
begin
|
14
|
+
o = Object.new
|
15
|
+
require_relative 'tzinfo/untaint_ext' if [:taint, :untaint, :tainted?].none? {|m| o.respond_to?(m) } || !o.taint.tainted?
|
16
|
+
ensure
|
17
|
+
$VERBOSE = old_verbose
|
18
|
+
end
|
19
|
+
|
8
20
|
require_relative 'tzinfo/version'
|
9
21
|
|
10
22
|
require_relative 'tzinfo/string_deduper'
|
data/lib/tzinfo/country.rb
CHANGED
@@ -176,6 +176,16 @@ module TZInfo
|
|
176
176
|
code.hash
|
177
177
|
end
|
178
178
|
|
179
|
+
# Matches `regexp` against the {code} of this {Country}.
|
180
|
+
#
|
181
|
+
# @param regexp [Regexp] a `Regexp` to match against the {code} of
|
182
|
+
# this {Country}.
|
183
|
+
# @return [Integer] the position the match starts, or `nil` if there is no
|
184
|
+
# match.
|
185
|
+
def =~(regexp)
|
186
|
+
regexp =~ code
|
187
|
+
end
|
188
|
+
|
179
189
|
# Returns a serialized representation of this {Country}. This method is
|
180
190
|
# called when using `Marshal.dump` with an instance of {Country}.
|
181
191
|
#
|
@@ -2,6 +2,8 @@
|
|
2
2
|
# frozen_string_literal: true
|
3
3
|
|
4
4
|
module TZInfo
|
5
|
+
using UntaintExt if TZInfo.const_defined?(:UntaintExt)
|
6
|
+
|
5
7
|
module DataSources
|
6
8
|
# A {TZInfoDataNotFound} exception is raised if the tzinfo-data gem could
|
7
9
|
# not be found (i.e. `require 'tzinfo/data'` failed) when selecting the Ruby
|
@@ -48,7 +50,7 @@ module TZInfo
|
|
48
50
|
data_file = File.join('', 'tzinfo', 'data.rb')
|
49
51
|
path = $".reverse_each.detect {|p| p.end_with?(data_file) }
|
50
52
|
if path
|
51
|
-
@base_path = File.join(File.dirname(path), 'data')
|
53
|
+
@base_path = File.join(File.dirname(path), 'data').untaint
|
52
54
|
else
|
53
55
|
@base_path = 'tzinfo/data'
|
54
56
|
end
|
@@ -2,6 +2,8 @@
|
|
2
2
|
# frozen_string_literal: true
|
3
3
|
|
4
4
|
module TZInfo
|
5
|
+
using UntaintExt if TZInfo.const_defined?(:UntaintExt)
|
6
|
+
|
5
7
|
module DataSources
|
6
8
|
# An {InvalidZoneinfoDirectory} exception is raised if {ZoneinfoDataSource}
|
7
9
|
# is initialized with a specific zoneinfo path that is not a valid zoneinfo
|
data/lib/tzinfo/timezone.rb
CHANGED
@@ -1119,6 +1119,16 @@ module TZInfo
|
|
1119
1119
|
identifier.hash
|
1120
1120
|
end
|
1121
1121
|
|
1122
|
+
# Matches `regexp` against the {identifier} of this {Timezone}.
|
1123
|
+
#
|
1124
|
+
# @param regexp [Regexp] a `Regexp` to match against the {identifier} of
|
1125
|
+
# this {Timezone}.
|
1126
|
+
# @return [Integer] the position the match starts, or `nil` if there is no
|
1127
|
+
# match.
|
1128
|
+
def =~(regexp)
|
1129
|
+
regexp =~ identifier
|
1130
|
+
end
|
1131
|
+
|
1122
1132
|
# Returns a serialized representation of this {Timezone}. This method is
|
1123
1133
|
# called when using `Marshal.dump` with an instance of {Timezone}.
|
1124
1134
|
#
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# encoding: UTF-8
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module TZInfo
|
5
|
+
# Object#untaint is deprecated in Ruby >= 2.7 and will be removed in 3.0.
|
6
|
+
# UntaintExt adds a refinement to make Object#untaint a no-op and avoid the
|
7
|
+
# warning.
|
8
|
+
#
|
9
|
+
# @private
|
10
|
+
module UntaintExt # :nodoc:
|
11
|
+
refine Object do
|
12
|
+
def untaint
|
13
|
+
self
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
private_constant :UntaintExt
|
18
|
+
end
|
data/lib/tzinfo/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tzinfo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Philip Ross
|
@@ -11,8 +11,8 @@ cert_chain:
|
|
11
11
|
- |
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
13
|
MIIDPDCCAiSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAkMSIwIAYDVQQDDBlwaGls
|
14
|
-
|
15
|
-
|
14
|
+
LnJvc3MvREM9Z21haWwvREM9Y29tMB4XDTE5MTIyNDE0NTU0N1oXDTM5MTIyNDE0
|
15
|
+
NTU0N1owJDEiMCAGA1UEAwwZcGhpbC5yb3NzL0RDPWdtYWlsL0RDPWNvbTCCASIw
|
16
16
|
DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJGcwfqn4ZsmPl0b1Lt9dCzExrE5
|
17
17
|
EeP/CRQjBdGHkF+mSpi69XysxdwLdfg5SPr9LfxthUug4nNFd5fDCiXM8hYe9jQD
|
18
18
|
TmkIQKNBh4fFpGngn9gyy+SumCXi6b5L6d/aMc59NAOM6LJ88TOdH1648dh5rq3C
|
@@ -22,14 +22,14 @@ cert_chain:
|
|
22
22
|
AaN5MHcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFA+Z8zvfzBuA
|
23
23
|
esoHIfz7+jxfUOcfMB4GA1UdEQQXMBWBE3BoaWwucm9zc0BnbWFpbC5jb20wHgYD
|
24
24
|
VR0SBBcwFYETcGhpbC5yb3NzQGdtYWlsLmNvbTANBgkqhkiG9w0BAQsFAAOCAQEA
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
25
|
+
J80xgZ3gGdQVA8N+8NJANU5HLuZIU9jOaAlziU9ImoTgPiOHKGZC4as1TwT4kBt1
|
26
|
+
Qcnu7YSANYRrxP5tpOHsWPF/MQYgerAFCZS5+PzOTudwZ+7OsMW4/EMHy6aCVHEd
|
27
|
+
c7HzQRC4mSrDRpWxzyBnZ5nX5OAmIkKA8NgeKybT/4Ku6iFPPUQwlyxQaO+Wlxdo
|
28
|
+
FqHwpjRyoiVSpe4RUTNK3d3qesWPYi7Lxn6k6ZZeEdvG6ya33AXktE3jmmF+jPR1
|
29
|
+
J3Zn/kSTjTekiaspyGbczC3PUaeJNxr+yCvR4sk71Xmk/GaKKGOHedJ1uj/LAXrA
|
30
|
+
MR0mpl7b8zCg0PFC1J73uw==
|
31
31
|
-----END CERTIFICATE-----
|
32
|
-
date:
|
32
|
+
date: 2019-12-24 00:00:00.000000000 Z
|
33
33
|
dependencies:
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: concurrent-ruby
|
@@ -102,6 +102,7 @@ files:
|
|
102
102
|
- lib/tzinfo/timezone_proxy.rb
|
103
103
|
- lib/tzinfo/timezone_transition.rb
|
104
104
|
- lib/tzinfo/transitions_timezone_period.rb
|
105
|
+
- lib/tzinfo/untaint_ext.rb
|
105
106
|
- lib/tzinfo/version.rb
|
106
107
|
- lib/tzinfo/with_offset.rb
|
107
108
|
homepage: https://tzinfo.github.io
|
@@ -127,7 +128,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
127
128
|
- !ruby/object:Gem::Version
|
128
129
|
version: '0'
|
129
130
|
requirements: []
|
130
|
-
rubygems_version: 3.
|
131
|
+
rubygems_version: 3.1.2
|
131
132
|
signing_key:
|
132
133
|
specification_version: 4
|
133
134
|
summary: Time Zone Library
|
metadata.gz.sig
CHANGED
Binary file
|