public_suffix 4.0.6 → 5.0.3
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/.github/dependabot.yml +19 -0
- data/.github/workflows/psl-update.yml +38 -0
- data/.github/workflows/release.yml +18 -0
- data/.github/workflows/tests.yml +17 -23
- data/.rubocop.yml +1 -0
- data/.rubocop_opinionated.yml +0 -22
- data/CHANGELOG.md +38 -0
- data/Gemfile +2 -3
- data/LICENSE.txt +1 -1
- data/README.md +20 -3
- data/Rakefile +4 -3
- data/data/list.txt +1621 -1174
- data/lib/public_suffix/domain.rb +1 -1
- data/lib/public_suffix/errors.rb +1 -1
- data/lib/public_suffix/list.rb +4 -4
- data/lib/public_suffix/rule.rb +16 -16
- data/lib/public_suffix/version.rb +5 -4
- data/lib/public_suffix.rb +12 -14
- data/public_suffix.gemspec +1 -1
- data/test/acceptance_test.rb +4 -4
- data/test/psl_test.rb +1 -1
- data/test/test_helper.rb +0 -8
- data/test/unit/domain_test.rb +3 -3
- data/test/unit/list_test.rb +1 -1
- data/test/unit/rule_test.rb +15 -15
- metadata +13 -33
- data/.travis.yml +0 -23
- data/codecov.yml +0 -12
data/lib/public_suffix/domain.rb
CHANGED
data/lib/public_suffix/errors.rb
CHANGED
data/lib/public_suffix/list.rb
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
#
|
5
5
|
# Domain name parser based on the Public Suffix List.
|
6
6
|
#
|
7
|
-
# Copyright (c) 2009-
|
7
|
+
# Copyright (c) 2009-2023 Simone Carletti <weppos@weppos.net>
|
8
8
|
|
9
9
|
module PublicSuffix
|
10
10
|
|
@@ -63,7 +63,7 @@ module PublicSuffix
|
|
63
63
|
#
|
64
64
|
# See http://publicsuffix.org/format/ for more details about input format.
|
65
65
|
#
|
66
|
-
# @param
|
66
|
+
# @param input [#each_line] the list to parse
|
67
67
|
# @param private_domains [Boolean] whether to ignore the private domains section
|
68
68
|
# @return [PublicSuffix::List]
|
69
69
|
def self.parse(input, private_domains: true)
|
@@ -87,7 +87,7 @@ module PublicSuffix
|
|
87
87
|
section = 2
|
88
88
|
|
89
89
|
# skip comments
|
90
|
-
when line.start_with?(comment_token)
|
90
|
+
when line.start_with?(comment_token) # rubocop:disable Lint/DuplicateBranch
|
91
91
|
next
|
92
92
|
|
93
93
|
else
|
@@ -173,7 +173,7 @@ module PublicSuffix
|
|
173
173
|
# @return [PublicSuffix::Rule::*]
|
174
174
|
def find(name, default: default_rule, **options)
|
175
175
|
rule = select(name, **options).inject do |l, r|
|
176
|
-
return r if r.
|
176
|
+
return r if r.instance_of?(Rule::Exception)
|
177
177
|
|
178
178
|
l.length > r.length ? l : r
|
179
179
|
end
|
data/lib/public_suffix/rule.rb
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
#
|
5
5
|
# Domain name parser based on the Public Suffix List.
|
6
6
|
#
|
7
|
-
# Copyright (c) 2009-
|
7
|
+
# Copyright (c) 2009-2023 Simone Carletti <weppos@weppos.net>
|
8
8
|
|
9
9
|
module PublicSuffix
|
10
10
|
|
@@ -125,16 +125,15 @@ module PublicSuffix
|
|
125
125
|
# @param private [Boolean]
|
126
126
|
def initialize(value:, length: nil, private: false)
|
127
127
|
@value = value.to_s
|
128
|
-
@length = length || @value.count(DOT) + 1
|
128
|
+
@length = length || (@value.count(DOT) + 1)
|
129
129
|
@private = private
|
130
130
|
end
|
131
131
|
|
132
132
|
# Checks whether this rule is equal to <tt>other</tt>.
|
133
133
|
#
|
134
|
-
# @param [PublicSuffix::Rule::*]
|
135
|
-
# @return [Boolean]
|
136
|
-
#
|
137
|
-
# and has the same value, false otherwise.
|
134
|
+
# @param other [PublicSuffix::Rule::*] The rule to compare
|
135
|
+
# @return [Boolean] true if this rule and other are instances of the same class
|
136
|
+
# and has the same value, false otherwise.
|
138
137
|
def ==(other)
|
139
138
|
equal?(other) || (self.class == other.class && value == other.value)
|
140
139
|
end
|
@@ -162,7 +161,7 @@ module PublicSuffix
|
|
162
161
|
# @param name [String] the domain name to check
|
163
162
|
# @return [Boolean]
|
164
163
|
def match?(name)
|
165
|
-
#
|
164
|
+
# NOTE: it works because of the assumption there are no
|
166
165
|
# rules like foo.*.com. If the assumption is incorrect,
|
167
166
|
# we need to properly walk the input and skip parts according
|
168
167
|
# to wildcard component.
|
@@ -176,7 +175,7 @@ module PublicSuffix
|
|
176
175
|
end
|
177
176
|
|
178
177
|
# @abstract
|
179
|
-
# @param [
|
178
|
+
# @param domain [#to_s] The domain name to decompose
|
180
179
|
# @return [Array<String, nil>]
|
181
180
|
def decompose(*)
|
182
181
|
raise NotImplementedError
|
@@ -196,7 +195,7 @@ module PublicSuffix
|
|
196
195
|
|
197
196
|
# Decomposes the domain name according to rule properties.
|
198
197
|
#
|
199
|
-
# @param [
|
198
|
+
# @param domain [#to_s] The domain name to decompose
|
200
199
|
# @return [Array<String>] The array with [trd + sld, tld].
|
201
200
|
def decompose(domain)
|
202
201
|
suffix = parts.join('\.')
|
@@ -222,12 +221,13 @@ module PublicSuffix
|
|
222
221
|
# @param content [String] the content of the rule
|
223
222
|
# @param private [Boolean]
|
224
223
|
def self.build(content, private: false)
|
225
|
-
new(value: content.to_s[2
|
224
|
+
new(value: content.to_s[2..], private: private)
|
226
225
|
end
|
227
226
|
|
228
227
|
# Initializes a new rule.
|
229
228
|
#
|
230
229
|
# @param value [String]
|
230
|
+
# @param length [Integer]
|
231
231
|
# @param private [Boolean]
|
232
232
|
def initialize(value:, length: nil, private: false)
|
233
233
|
super(value: value, length: length, private: private)
|
@@ -243,7 +243,7 @@ module PublicSuffix
|
|
243
243
|
|
244
244
|
# Decomposes the domain name according to rule properties.
|
245
245
|
#
|
246
|
-
# @param [
|
246
|
+
# @param domain [#to_s] The domain name to decompose
|
247
247
|
# @return [Array<String>] The array with [trd + sld, tld].
|
248
248
|
def decompose(domain)
|
249
249
|
suffix = ([".*?"] + parts).join('\.')
|
@@ -266,10 +266,10 @@ module PublicSuffix
|
|
266
266
|
|
267
267
|
# Initializes a new rule from the content.
|
268
268
|
#
|
269
|
-
# @param content [
|
269
|
+
# @param content [#to_s] the content of the rule
|
270
270
|
# @param private [Boolean]
|
271
271
|
def self.build(content, private: false)
|
272
|
-
new(value: content.to_s[1
|
272
|
+
new(value: content.to_s[1..], private: private)
|
273
273
|
end
|
274
274
|
|
275
275
|
# Gets the original rule definition.
|
@@ -281,7 +281,7 @@ module PublicSuffix
|
|
281
281
|
|
282
282
|
# Decomposes the domain name according to rule properties.
|
283
283
|
#
|
284
|
-
# @param [
|
284
|
+
# @param domain [#to_s] The domain name to decompose
|
285
285
|
# @return [Array<String>] The array with [trd + sld, tld].
|
286
286
|
def decompose(domain)
|
287
287
|
suffix = parts.join('\.')
|
@@ -299,7 +299,7 @@ module PublicSuffix
|
|
299
299
|
#
|
300
300
|
# @return [Array<String>]
|
301
301
|
def parts
|
302
|
-
@value.split(DOT)[1
|
302
|
+
@value.split(DOT)[1..]
|
303
303
|
end
|
304
304
|
|
305
305
|
end
|
@@ -321,7 +321,7 @@ module PublicSuffix
|
|
321
321
|
# PublicSuffix::Rule.factory("!congresodelalengua3.ar")
|
322
322
|
# # => #<PublicSuffix::Rule::Exception>
|
323
323
|
#
|
324
|
-
# @param [
|
324
|
+
# @param content [#to_s] the content of the rule
|
325
325
|
# @return [PublicSuffix::Rule::*] A rule instance.
|
326
326
|
def self.factory(content, private: false)
|
327
327
|
case content.to_s[0, 1]
|
@@ -1,13 +1,14 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
#
|
4
3
|
# = Public Suffix
|
5
4
|
#
|
6
5
|
# Domain name parser based on the Public Suffix List.
|
7
6
|
#
|
8
|
-
# Copyright (c) 2009-
|
7
|
+
# Copyright (c) 2009-2023 Simone Carletti <weppos@weppos.net>
|
9
8
|
|
10
9
|
module PublicSuffix
|
11
|
-
|
12
|
-
|
10
|
+
|
11
|
+
# @return [String] the current library version
|
12
|
+
VERSION = "5.0.3"
|
13
|
+
|
13
14
|
end
|
data/lib/public_suffix.rb
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
#
|
5
5
|
# Domain name parser based on the Public Suffix List.
|
6
6
|
#
|
7
|
-
# Copyright (c) 2009-
|
7
|
+
# Copyright (c) 2009-2023 Simone Carletti <weppos@weppos.net>
|
8
8
|
|
9
9
|
require_relative "public_suffix/domain"
|
10
10
|
require_relative "public_suffix/version"
|
@@ -57,15 +57,13 @@ module PublicSuffix
|
|
57
57
|
# # => PublicSuffix::DomainInvalid: http://www.google.com is not expected to contain a scheme
|
58
58
|
#
|
59
59
|
#
|
60
|
-
# @param [
|
61
|
-
# @param [PublicSuffix::List]
|
62
|
-
# @param [Boolean]
|
60
|
+
# @param name [#to_s] The domain name or fully qualified domain name to parse.
|
61
|
+
# @param list [PublicSuffix::List] The rule list to search, defaults to the default {PublicSuffix::List}
|
62
|
+
# @param ignore_private [Boolean]
|
63
63
|
# @return [PublicSuffix::Domain]
|
64
64
|
#
|
65
|
-
# @raise [PublicSuffix::DomainInvalid]
|
66
|
-
#
|
67
|
-
# @raise [PublicSuffix::DomainNotAllowed]
|
68
|
-
# If a rule for +domain+ is found, but the rule doesn't allow +domain+.
|
65
|
+
# @raise [PublicSuffix::DomainInvalid] If domain is not a valid domain.
|
66
|
+
# @raise [PublicSuffix::DomainNotAllowed] If a rule for +domain+ is found, but the rule doesn't allow +domain+.
|
69
67
|
def self.parse(name, list: List.default, default_rule: list.default_rule, ignore_private: false)
|
70
68
|
what = normalize(name)
|
71
69
|
raise what if what.is_a?(DomainInvalid)
|
@@ -119,8 +117,8 @@ module PublicSuffix
|
|
119
117
|
# # => false
|
120
118
|
#
|
121
119
|
#
|
122
|
-
# @param [
|
123
|
-
# @param [Boolean]
|
120
|
+
# @param name [#to_s] The domain name or fully qualified domain name to validate.
|
121
|
+
# @param ignore_private [Boolean]
|
124
122
|
# @return [Boolean]
|
125
123
|
def self.valid?(name, list: List.default, default_rule: list.default_rule, ignore_private: false)
|
126
124
|
what = normalize(name)
|
@@ -135,9 +133,9 @@ module PublicSuffix
|
|
135
133
|
#
|
136
134
|
# This method doesn't raise. Instead, it returns nil if the domain is not valid for whatever reason.
|
137
135
|
#
|
138
|
-
# @param [
|
139
|
-
# @param [PublicSuffix::List]
|
140
|
-
# @param [Boolean]
|
136
|
+
# @param name [#to_s] The domain name or fully qualified domain name to parse.
|
137
|
+
# @param list [PublicSuffix::List] The rule list to search, defaults to the default {PublicSuffix::List}
|
138
|
+
# @param ignore_private [Boolean]
|
141
139
|
# @return [String]
|
142
140
|
def self.domain(name, **options)
|
143
141
|
parse(name, **options).domain
|
@@ -171,7 +169,7 @@ module PublicSuffix
|
|
171
169
|
|
172
170
|
return DomainInvalid.new("Name is blank") if name.empty?
|
173
171
|
return DomainInvalid.new("Name starts with a dot") if name.start_with?(DOT)
|
174
|
-
return DomainInvalid.new("%s is not expected to contain a scheme"
|
172
|
+
return DomainInvalid.new(format("%s is not expected to contain a scheme", name)) if name.include?("://")
|
175
173
|
|
176
174
|
name
|
177
175
|
end
|
data/public_suffix.gemspec
CHANGED
@@ -20,7 +20,7 @@ Gem::Specification.new do |s|
|
|
20
20
|
"source_code_uri" => "https://github.com/weppos/publicsuffix-ruby/tree/v#{s.version}",
|
21
21
|
}
|
22
22
|
|
23
|
-
s.required_ruby_version = ">= 2.
|
23
|
+
s.required_ruby_version = ">= 2.6"
|
24
24
|
|
25
25
|
s.require_paths = ["lib"]
|
26
26
|
s.files = `git ls-files`.split("\n")
|
data/test/acceptance_test.rb
CHANGED
@@ -64,7 +64,7 @@ class AcceptanceTest < Minitest::Test
|
|
64
64
|
def test_rejected
|
65
65
|
REJECTED_CASES.each do |name, expected|
|
66
66
|
assert_equal expected, PublicSuffix.valid?(name),
|
67
|
-
"Expected %s to be %s"
|
67
|
+
format("Expected %s to be %s", name.inspect, expected.inspect)
|
68
68
|
assert !valid_domain?(name),
|
69
69
|
"#{name} expected to be invalid"
|
70
70
|
end
|
@@ -72,9 +72,9 @@ class AcceptanceTest < Minitest::Test
|
|
72
72
|
|
73
73
|
|
74
74
|
CASE_CASES = [
|
75
|
-
["Www.google.com", %w
|
76
|
-
["www.Google.com", %w
|
77
|
-
["www.google.Com", %w
|
75
|
+
["Www.google.com", %w[www google com]],
|
76
|
+
["www.Google.com", %w[www google com]],
|
77
|
+
["www.google.Com", %w[www google com]],
|
78
78
|
].freeze
|
79
79
|
|
80
80
|
def test_ignore_case
|
data/test/psl_test.rb
CHANGED
@@ -45,7 +45,7 @@ class PslTest < Minitest::Test
|
|
45
45
|
end
|
46
46
|
|
47
47
|
message = "The following #{failures.size} tests fail:\n"
|
48
|
-
failures.each { |i, o, d| message += "Expected %s to be %s, got %s\n"
|
48
|
+
failures.each { |i, o, d| message += format("Expected %s to be %s, got %s\n", i.inspect, o.inspect, d.inspect) }
|
49
49
|
assert_equal 0, failures.size, message
|
50
50
|
end
|
51
51
|
|
data/test/test_helper.rb
CHANGED
@@ -1,13 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
if ENV["COVERAGE"]
|
4
|
-
require "simplecov"
|
5
|
-
SimpleCov.start
|
6
|
-
|
7
|
-
require "codecov"
|
8
|
-
SimpleCov.formatter = SimpleCov::Formatter::Codecov
|
9
|
-
end
|
10
|
-
|
11
3
|
require "minitest/autorun"
|
12
4
|
require "minitest/reporters"
|
13
5
|
require "mocha/minitest"
|
data/test/unit/domain_test.rb
CHANGED
@@ -10,15 +10,15 @@ class PublicSuffix::DomainTest < Minitest::Test
|
|
10
10
|
|
11
11
|
# Tokenizes given input into labels.
|
12
12
|
def test_self_name_to_labels
|
13
|
-
assert_equal %w
|
13
|
+
assert_equal %w[someone spaces live com],
|
14
14
|
PublicSuffix::Domain.name_to_labels("someone.spaces.live.com")
|
15
|
-
assert_equal %w
|
15
|
+
assert_equal %w[leontina23samiko wiki zoho com],
|
16
16
|
PublicSuffix::Domain.name_to_labels("leontina23samiko.wiki.zoho.com")
|
17
17
|
end
|
18
18
|
|
19
19
|
# Converts input into String.
|
20
20
|
def test_self_name_to_labels_converts_input_to_string
|
21
|
-
assert_equal %w
|
21
|
+
assert_equal %w[someone spaces live com],
|
22
22
|
PublicSuffix::Domain.name_to_labels(:"someone.spaces.live.com")
|
23
23
|
end
|
24
24
|
|
data/test/unit/list_test.rb
CHANGED
@@ -214,7 +214,7 @@ LIST
|
|
214
214
|
assert_instance_of PublicSuffix::List, list
|
215
215
|
assert_equal 4, list.size
|
216
216
|
|
217
|
-
rules = %w
|
217
|
+
rules = %w[com *.uk !british-library.uk blogspot.com].map { |name| PublicSuffix::Rule.factory(name) }
|
218
218
|
assert_equal rules, list.each.to_a
|
219
219
|
|
220
220
|
# private domains
|
data/test/unit/rule_test.rb
CHANGED
@@ -29,8 +29,8 @@ class PublicSuffix::RuleTest < Minitest::Test
|
|
29
29
|
def test_default_returns_default_wildcard
|
30
30
|
default = PublicSuffix::Rule.default
|
31
31
|
assert_equal PublicSuffix::Rule::Wildcard.build("*"), default
|
32
|
-
assert_equal %w
|
33
|
-
assert_equal %w
|
32
|
+
assert_equal %w[example tldnotlisted], default.decompose("example.tldnotlisted")
|
33
|
+
assert_equal %w[www.example tldnotlisted], default.decompose("www.example.tldnotlisted")
|
34
34
|
end
|
35
35
|
|
36
36
|
end
|
@@ -140,15 +140,15 @@ class PublicSuffix::RuleNormalTest < Minitest::Test
|
|
140
140
|
end
|
141
141
|
|
142
142
|
def test_parts
|
143
|
-
assert_equal %w
|
144
|
-
assert_equal %w
|
145
|
-
assert_equal %w
|
143
|
+
assert_equal %w[com], @klass.build("com").parts
|
144
|
+
assert_equal %w[co com], @klass.build("co.com").parts
|
145
|
+
assert_equal %w[mx co com], @klass.build("mx.co.com").parts
|
146
146
|
end
|
147
147
|
|
148
148
|
def test_decompose
|
149
149
|
assert_equal [nil, nil], @klass.build("com").decompose("com")
|
150
|
-
assert_equal %w
|
151
|
-
assert_equal %w
|
150
|
+
assert_equal %w[example com], @klass.build("com").decompose("example.com")
|
151
|
+
assert_equal %w[foo.example com], @klass.build("com").decompose("foo.example.com")
|
152
152
|
end
|
153
153
|
|
154
154
|
end
|
@@ -175,14 +175,14 @@ class PublicSuffix::RuleExceptionTest < Minitest::Test
|
|
175
175
|
end
|
176
176
|
|
177
177
|
def test_parts
|
178
|
-
assert_equal %w
|
179
|
-
assert_equal %w
|
178
|
+
assert_equal %w[uk], @klass.build("!british-library.uk").parts
|
179
|
+
assert_equal %w[tokyo jp], @klass.build("!metro.tokyo.jp").parts
|
180
180
|
end
|
181
181
|
|
182
182
|
def test_decompose
|
183
183
|
assert_equal [nil, nil], @klass.build("!british-library.uk").decompose("uk")
|
184
|
-
assert_equal %w
|
185
|
-
assert_equal %w
|
184
|
+
assert_equal %w[british-library uk], @klass.build("!british-library.uk").decompose("british-library.uk")
|
185
|
+
assert_equal %w[foo.british-library uk], @klass.build("!british-library.uk").decompose("foo.british-library.uk")
|
186
186
|
end
|
187
187
|
|
188
188
|
end
|
@@ -209,14 +209,14 @@ class PublicSuffix::RuleWildcardTest < Minitest::Test
|
|
209
209
|
end
|
210
210
|
|
211
211
|
def test_parts
|
212
|
-
assert_equal %w
|
213
|
-
assert_equal %w
|
212
|
+
assert_equal %w[uk], @klass.build("*.uk").parts
|
213
|
+
assert_equal %w[co uk], @klass.build("*.co.uk").parts
|
214
214
|
end
|
215
215
|
|
216
216
|
def test_decompose
|
217
217
|
assert_equal [nil, nil], @klass.build("*.do").decompose("nic.do")
|
218
|
-
assert_equal %w
|
219
|
-
assert_equal %w
|
218
|
+
assert_equal %w[google co.uk], @klass.build("*.uk").decompose("google.co.uk")
|
219
|
+
assert_equal %w[foo.google co.uk], @klass.build("*.uk").decompose("foo.google.co.uk")
|
220
220
|
end
|
221
221
|
|
222
222
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: public_suffix
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 5.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Simone Carletti
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-07-11 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: PublicSuffix can parse and decompose a domain name into top level domain,
|
14
14
|
domain and subdomains.
|
@@ -20,11 +20,13 @@ extra_rdoc_files:
|
|
20
20
|
- LICENSE.txt
|
21
21
|
files:
|
22
22
|
- ".github/FUNDING.yml"
|
23
|
+
- ".github/dependabot.yml"
|
24
|
+
- ".github/workflows/psl-update.yml"
|
25
|
+
- ".github/workflows/release.yml"
|
23
26
|
- ".github/workflows/tests.yml"
|
24
27
|
- ".gitignore"
|
25
28
|
- ".rubocop.yml"
|
26
29
|
- ".rubocop_opinionated.yml"
|
27
|
-
- ".travis.yml"
|
28
30
|
- ".yardopts"
|
29
31
|
- 2.0-Upgrade.md
|
30
32
|
- CHANGELOG.md
|
@@ -34,7 +36,6 @@ files:
|
|
34
36
|
- Rakefile
|
35
37
|
- SECURITY.md
|
36
38
|
- bin/console
|
37
|
-
- codecov.yml
|
38
39
|
- data/list.txt
|
39
40
|
- lib/public_suffix.rb
|
40
41
|
- lib/public_suffix/domain.rb
|
@@ -71,10 +72,10 @@ licenses:
|
|
71
72
|
metadata:
|
72
73
|
bug_tracker_uri: https://github.com/weppos/publicsuffix-ruby/issues
|
73
74
|
changelog_uri: https://github.com/weppos/publicsuffix-ruby/blob/master/CHANGELOG.md
|
74
|
-
documentation_uri: https://rubydoc.info/gems/public_suffix/
|
75
|
+
documentation_uri: https://rubydoc.info/gems/public_suffix/5.0.3
|
75
76
|
homepage_uri: https://simonecarletti.com/code/publicsuffix-ruby
|
76
|
-
source_code_uri: https://github.com/weppos/publicsuffix-ruby/tree/
|
77
|
-
post_install_message:
|
77
|
+
source_code_uri: https://github.com/weppos/publicsuffix-ruby/tree/v5.0.3
|
78
|
+
post_install_message:
|
78
79
|
rdoc_options: []
|
79
80
|
require_paths:
|
80
81
|
- lib
|
@@ -82,36 +83,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
82
83
|
requirements:
|
83
84
|
- - ">="
|
84
85
|
- !ruby/object:Gem::Version
|
85
|
-
version: '2.
|
86
|
+
version: '2.6'
|
86
87
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
87
88
|
requirements:
|
88
89
|
- - ">="
|
89
90
|
- !ruby/object:Gem::Version
|
90
91
|
version: '0'
|
91
92
|
requirements: []
|
92
|
-
rubygems_version: 3.
|
93
|
-
signing_key:
|
93
|
+
rubygems_version: 3.4.10
|
94
|
+
signing_key:
|
94
95
|
specification_version: 4
|
95
96
|
summary: Domain name parser based on the Public Suffix List.
|
96
|
-
test_files:
|
97
|
-
- test/acceptance_test.rb
|
98
|
-
- test/benchmarks/bm_find.rb
|
99
|
-
- test/benchmarks/bm_find_all.rb
|
100
|
-
- test/benchmarks/bm_names.rb
|
101
|
-
- test/benchmarks/bm_select.rb
|
102
|
-
- test/benchmarks/bm_select_incremental.rb
|
103
|
-
- test/benchmarks/bm_valid.rb
|
104
|
-
- test/profilers/domain_profiler.rb
|
105
|
-
- test/profilers/find_profiler.rb
|
106
|
-
- test/profilers/find_profiler_jp.rb
|
107
|
-
- test/profilers/initialization_profiler.rb
|
108
|
-
- test/profilers/list_profsize.rb
|
109
|
-
- test/profilers/object_binsize.rb
|
110
|
-
- test/psl_test.rb
|
111
|
-
- test/test_helper.rb
|
112
|
-
- test/tests.txt
|
113
|
-
- test/unit/domain_test.rb
|
114
|
-
- test/unit/errors_test.rb
|
115
|
-
- test/unit/list_test.rb
|
116
|
-
- test/unit/public_suffix_test.rb
|
117
|
-
- test/unit/rule_test.rb
|
97
|
+
test_files: []
|
data/.travis.yml
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
|
3
|
-
rvm:
|
4
|
-
# - 2.3
|
5
|
-
- 2.4
|
6
|
-
- 2.5
|
7
|
-
- 2.6
|
8
|
-
- 2.7
|
9
|
-
- ruby-head
|
10
|
-
|
11
|
-
env:
|
12
|
-
- COVERAGE=1
|
13
|
-
|
14
|
-
cache:
|
15
|
-
- bundler
|
16
|
-
|
17
|
-
matrix:
|
18
|
-
allow_failures:
|
19
|
-
- rvm: ruby-head
|
20
|
-
|
21
|
-
before_install:
|
22
|
-
- gem update --system
|
23
|
-
- gem install bundler
|
data/codecov.yml
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
# https://docs.codecov.io/docs/coverage-configuration
|
2
|
-
coverage:
|
3
|
-
precision: 1
|
4
|
-
round: down
|
5
|
-
status:
|
6
|
-
project:
|
7
|
-
default: false
|
8
|
-
patch:
|
9
|
-
default: false
|
10
|
-
|
11
|
-
# https://docs.codecov.io/docs/pull-request-comments#section-requiring-changes
|
12
|
-
comment: off
|