public_suffix 4.0.6 → 5.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 48a2adc85da4aa3f989df90aab4b788c33f029def5daa425e1c78f2f996f457e
4
- data.tar.gz: 6b8fd93652f1eb725867dfc646f76f42524e3efecd758439ca0337e5717f7182
3
+ metadata.gz: 4e1af6bf3459567ad50f3e92f35193b0950f65126fb70eefb3b996857e27355b
4
+ data.tar.gz: 37035f8608cf236276841847274d5a44ae6e648de84a682fbf4d6b3b0e55911e
5
5
  SHA512:
6
- metadata.gz: 52c6c74121231ef5d99e165eec0fb460e4c286cbf0cf06fbe89a98272bc7ff2de68a7cf464676074f3851a0a4e2d7f842e3e34f7ddde32f480d2474bc6dd62c9
7
- data.tar.gz: 96cd0e0294cc31ca0176362938022d65782deec59ecb4e606119481a09e1906cccc05203ae4ba7ddb5bb20a2915cbea99d696c47335f250b1db8d512b41499d1
6
+ metadata.gz: e9e211288208da6264e7ea5cb66098a19a07a26754d9c9f3a038c2a557306fb697ce4e325fb70e3d3806771e84491b3e6f35861670f6582b3ea0ed901234eef8
7
+ data.tar.gz: f01180755194f5c30dd49025dac3794c7ad5287dc5ef49129b27521aba03361efc1e6ab4f7f0e9474a391db83dd8498455b5e2537f78f64158a52de12e518065
@@ -0,0 +1,19 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: bundler
4
+ directory: "/"
5
+ schedule:
6
+ interval: daily
7
+ time: "04:00"
8
+ open-pull-requests-limit: 10
9
+ labels:
10
+ - dependencies
11
+
12
+ - package-ecosystem: "github-actions"
13
+ directory: "/"
14
+ schedule:
15
+ interval: "daily"
16
+ time: "04:00"
17
+ open-pull-requests-limit: 10
18
+ labels:
19
+ - dependencies
@@ -0,0 +1,38 @@
1
+ name: PSL Update
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ schedule:
6
+ - cron: '40 6 * * *'
7
+
8
+ jobs:
9
+ update:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+
13
+ - name: Checkout
14
+ uses: actions/checkout@v3
15
+
16
+ - name: Set up Ruby
17
+ uses: ruby/setup-ruby@v1
18
+ with:
19
+ ruby-version: "3.1"
20
+ bundler-cache: true
21
+
22
+ - name: Update PSL
23
+ run: bundle exec rake update-list
24
+
25
+ - name: Create Pull Request
26
+ uses: peter-evans/create-pull-request@v5
27
+ with:
28
+ title: PSL auto-update
29
+ commit-message: Updated list from source
30
+ reviewers: weppos
31
+ add-paths: |
32
+ data/list.txt
33
+
34
+ - name: Check Pull Request
35
+ if: ${{ steps.cpr.outputs.pull-request-number }}
36
+ run: |
37
+ echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}"
38
+ echo "Pull Request URL - ${{ steps.cpr.outputs.pull-request-url }}"
@@ -0,0 +1,18 @@
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - v*.*.*
7
+
8
+ jobs:
9
+ release:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - name: Checkout
13
+ uses: actions/checkout@v3
14
+ - name: Release Gem
15
+ uses: cadwallion/publish-rubygems-action@94a6f4cd5350581749c569b5001eecc864e3ad0b
16
+ env:
17
+ RUBYGEMS_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }}
18
+ RELEASE_COMMAND: rake release
@@ -2,35 +2,29 @@ name: Tests
2
2
 
3
3
  on:
4
4
  push:
5
- branches: [ master ]
6
5
  pull_request:
7
- branches: [ master ]
6
+ workflow_dispatch:
8
7
 
9
8
  jobs:
10
-
11
- build:
9
+ test:
12
10
  strategy:
13
11
  matrix:
14
12
  ruby-version:
15
- # - "2.3"
16
- - "2.4"
17
- - "2.5"
18
13
  - "2.6"
19
14
  - "2.7"
20
- platform: [ubuntu-latest]
21
-
22
- runs-on: ${{ matrix.platform }}
15
+ - "3.0"
16
+ - "3.1"
17
+ - "3.2"
18
+ runs-on: ubuntu-latest
23
19
  steps:
24
-
25
- - uses: actions/checkout@v2
26
-
27
- - name: Set up Ruby
28
- uses: ruby/setup-ruby@v1
29
- with:
30
- ruby-version: ${{ matrix.ruby-version }}
31
-
32
- - name: Install dependencies
33
- run: bundle install
34
-
35
- - name: Run tests
36
- run: bundle exec rake
20
+ - name: Checkout
21
+ uses: actions/checkout@v3
22
+ - name: Set up Ruby
23
+ uses: ruby/setup-ruby@v1
24
+ with:
25
+ ruby-version: ${{ matrix.ruby-version }}
26
+ bundler-cache: true
27
+ - name: Rubocop
28
+ run: bundle exec rake rubocop
29
+ - name: Run tests
30
+ run: bundle exec rake test
data/.rubocop.yml CHANGED
@@ -13,6 +13,7 @@ AllCops:
13
13
  # Other
14
14
  - 'test/benchmarks/**/*'
15
15
  - 'test/profilers/**/*'
16
+ TargetRubyVersion: 2.6
16
17
 
17
18
  # I often use @_variable to avoid clashing.
18
19
  Naming/MemoizedInstanceVariableName:
@@ -95,12 +95,6 @@ Layout/EmptyLinesAroundModuleBody:
95
95
  Layout/EmptyLineBetweenDefs:
96
96
  Enabled: false
97
97
 
98
- # I personally don't care about the format style.
99
- # In most cases I like to use %, but not at the point I want to enforce it
100
- # as a convention in the entire code.
101
- Style/FormatString:
102
- Enabled: false
103
-
104
98
  # Annotated tokens (like %<foo>s) are a good thing, but in most cases we don't need them.
105
99
  # %s is a simpler and straightforward version that works in almost all cases. So don't complain.
106
100
  Style/FormatStringToken:
@@ -110,11 +104,6 @@ Style/FormatStringToken:
110
104
  Style/NegatedIf:
111
105
  Enabled: false
112
106
 
113
- # For years, %w() has been the de-facto standard. A lot of libraries are using ().
114
- # Switching to [] would be a nightmare.
115
- Style/PercentLiteralDelimiters:
116
- Enabled: false
117
-
118
107
  # There are cases were the inline rescue is ok. We can either downgrade the severity,
119
108
  # or rely on the developer judgement on a case-by-case basis.
120
109
  Style/RescueModifier:
@@ -123,17 +112,6 @@ Style/RescueModifier:
123
112
  Style/SymbolArray:
124
113
  EnforcedStyle: brackets
125
114
 
126
- # Sorry, but using trailing spaces helps readability.
127
- #
128
- # %w( foo bar )
129
- #
130
- # looks better to me than
131
- #
132
- # %w( foo bar )
133
- #
134
- Layout/SpaceInsidePercentLiteralDelimiters:
135
- Enabled: false
136
-
137
115
  # Hate It or Love It, I prefer double quotes as this is more consistent
138
116
  # with several other programming languages and the output of puts and inspect.
139
117
  Style/StringLiterals:
data/CHANGELOG.md CHANGED
@@ -2,6 +2,44 @@
2
2
 
3
3
  This project uses [Semantic Versioning 2.0.0](https://semver.org/).
4
4
 
5
+ ## 5.0.3
6
+
7
+ ### Fixed
8
+
9
+ - Fixed automated release workflow.
10
+
11
+ ## 5.0.2
12
+
13
+ ### Changed
14
+
15
+ - Updated definitions.
16
+
17
+ ## 5.0.1
18
+
19
+ ### Changed
20
+
21
+ - Updated definitions.
22
+
23
+
24
+ ## 5.0.0
25
+
26
+ ### Changed
27
+
28
+ - Minimum Ruby version is 2.6
29
+
30
+ - Updated definitions.
31
+
32
+
33
+ ## 4.0.7
34
+
35
+ ### Fixes
36
+
37
+ - Fixed YARD rake task (GH-179)
38
+
39
+ ### Changed
40
+
41
+ - Updated definitions.
42
+
5
43
 
6
44
  ## 4.0.6
7
45
 
data/Gemfile CHANGED
@@ -6,10 +6,9 @@ gemspec
6
6
 
7
7
  gem "rake"
8
8
 
9
- gem "codecov", require: false
10
9
  gem "memory_profiler", require: false
11
10
  gem "minitest"
12
11
  gem "minitest-reporters"
13
- gem "mocha"
14
- gem "rubocop", "~>0.90", require: false
12
+ gem "mocha", "~> 2.0.1"
13
+ gem "rubocop", require: false
15
14
  gem "yard"
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2009-2020 Simone Carletti <weppos@weppos.net>
1
+ Copyright (c) 2009-2023 Simone Carletti <weppos@weppos.net>
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  <tt>PublicSuffix</tt> is a Ruby domain name parser based on the [Public Suffix List](https://publicsuffix.org/).
4
4
 
5
- [![Build Status](https://travis-ci.com/weppos/publicsuffix-ruby.svg?branch=master)](https://travis-ci.com/weppos/publicsuffix-ruby)
5
+ [![Build Status](https://github.com/weppos/publicsuffix-ruby/actions/workflows/tests.yml/badge.svg)](https://github.com/weppos/publicsuffix-ruby/actions/workflows/tests.yml)
6
6
  [![Tidelift dependencies](https://tidelift.com/badges/package/rubygems/public_suffix)](https://tidelift.com/subscription/pkg/rubygems-public-suffix?utm_source=rubygems-public-suffix&utm_medium=referral&utm_campaign=enterprise)
7
7
 
8
8
 
@@ -16,7 +16,7 @@
16
16
 
17
17
  ## Requirements
18
18
 
19
- <tt>PublicSuffix</tt> requires **Ruby >= 2.3**. For an older versions of Ruby use a previous release.
19
+ <tt>PublicSuffix</tt> requires **Ruby >= 2.6**. For an older versions of Ruby use a previous release.
20
20
 
21
21
 
22
22
  ## Installation
@@ -150,6 +150,13 @@ PublicSuffix.domain("something.blogspot.com")
150
150
  # => "blogspot.com"
151
151
  ```
152
152
 
153
+ ## Add domain to list
154
+
155
+ If you want to manually add a domain to the list just run:
156
+
157
+ ```ruby
158
+ PublicSuffix::List.default << PublicSuffix::Rule.factory('onmicrosoft.com')
159
+ ```
153
160
 
154
161
  ## What is the Public Suffix List?
155
162
 
@@ -202,6 +209,16 @@ See the [CHANGELOG.md](CHANGELOG.md) file for details.
202
209
 
203
210
  ## License
204
211
 
205
- Copyright (c) 2009-2020 Simone Carletti. This is Free Software distributed under the MIT license.
212
+ Copyright (c) 2009-2023 Simone Carletti. This is Free Software distributed under the MIT license.
206
213
 
207
214
  The [Public Suffix List source](https://publicsuffix.org/list/) is subject to the terms of the Mozilla Public License, v. 2.0.
215
+
216
+ ## Definitions
217
+
218
+ tld = Top level domain, this is in reference to the last segment of a domain, sometimes the part that is directly after the "dot" symbol. For example, `mozilla.org`, the `.org` portion is the tld.
219
+
220
+ sld = Second level domain, a domain that is directly below a top-level domain. For example, in `https://www.mozilla.org/en-US/`, `mozilla` is the second-level domain of the .org tld.
221
+
222
+ trd = Transit routing domain, or known as a subdomain. This is the part of the domain that is before the sld or root domain. For example, in `https://www.mozilla.org/en-US/`, `www` is the trd.
223
+
224
+ FQDN = Fully Qualified Domain Names, are domain names that are written with the hostname and the domain name, and include the top-level domain, the format looks like `[hostname].[domain].[tld].` for ex. `[www].[mozilla].[org]`.
data/Rakefile CHANGED
@@ -9,7 +9,7 @@ task default: [:test, :rubocop]
9
9
  require "rake/testtask"
10
10
 
11
11
  Rake::TestTask.new do |t|
12
- t.libs = %w( lib test )
12
+ t.libs = %w[lib test]
13
13
  t.pattern = "test/**/*_test.rb"
14
14
  t.verbose = !ENV["VERBOSE"].nil?
15
15
  t.warning = !ENV["WARNING"].nil?
@@ -20,6 +20,7 @@ require "rubocop/rake_task"
20
20
  RuboCop::RakeTask.new
21
21
 
22
22
 
23
+ require "yard"
23
24
  require "yard/rake/yardoc_task"
24
25
 
25
26
  YARD::Rake::YardocTask.new(:yardoc) do |y|
@@ -41,10 +42,10 @@ desc "Downloads the Public Suffix List file from the repository and stores it lo
41
42
  task :"update-list" do
42
43
  require "net/http"
43
44
 
44
- DEFINITION_URL = "https://raw.githubusercontent.com/publicsuffix/list/master/public_suffix_list.dat"
45
+ definition_url = "https://raw.githubusercontent.com/publicsuffix/list/master/public_suffix_list.dat"
45
46
 
46
47
  File.open("data/list.txt", "w+") do |f|
47
- response = Net::HTTP.get_response(URI.parse(DEFINITION_URL))
48
+ response = Net::HTTP.get_response(URI.parse(definition_url))
48
49
  response.body
49
50
  f.write(response.body)
50
51
  end