public_suffix 7.0.1 → 7.0.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 96c64092cb38c0249d59c8ab4193438275155f8871affda9eb141cdd8bce1d0c
4
- data.tar.gz: 1d3c97ee5f787e0bc69c2552b9e6ff587e3a2d0a7e4ddd91b1be652173f03269
3
+ metadata.gz: 1ff61cb9451fff6aed47766db53c40c7a4888805c3c7bc5f6c6589d47504345c
4
+ data.tar.gz: e70fb4d7e20fce2a5e3fd89b30e4007c538fcaeba58171b6d931819c86d95687
5
5
  SHA512:
6
- metadata.gz: 2ddedb44078dd0e2d3c2d15f25021fdd0bfe251fd2507cfba82dee37b6a67a4ce0adeecf6f0c884930d05c0faae02550c9cfe15ac3f616f8fd2561973c5124cd
7
- data.tar.gz: 729bc2bb98203d65555b9e1aedd62f402f809186aefea93077b9c648b0c68a6587206697f76c8e31299ffa2d207f823794241840c1f3805cee32b461c3a9d11d
6
+ metadata.gz: ec5527af0c8aaef6707cd43e4ac1aea2d7fecffb0b1d1db2c12798fba1e052750a50ffc808d9fd4ee0176b880f548fe574d2030f00acd7a66cc2a7bd53a452ee
7
+ data.tar.gz: 709c40dc8fb9661ebde8e5c3c7e0226089ea3390aefef01faae733c905362c7be665aeaea1a1438e9b6f7f003c02dda4b9ebc5a612fc470bdd00a6f84f35fdda
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  # Changelog
2
2
 
3
3
 
4
+ ## Unreleased
5
+
6
+
7
+ ## 7.0.2 - 2026-01-04
8
+
9
+ ### Changed
10
+
11
+ - Excluded symlinks and unnecessary files from gem packaging. On Windows symlinks cannot be created without Administrator privileges or with developer mode enabled #496.
12
+
13
+
4
14
  ## 7.0.1 - 2026-01-03
5
15
 
6
16
  ### Changed
@@ -9,6 +9,6 @@
9
9
  module PublicSuffix
10
10
 
11
11
  # @return [String] the current library version
12
- VERSION = "7.0.1"
12
+ VERSION = "7.0.2"
13
13
 
14
14
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: public_suffix
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.0.1
4
+ version: 7.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Simone Carletti
@@ -19,13 +19,9 @@ extra_rdoc_files:
19
19
  - LICENSE.txt
20
20
  files:
21
21
  - ".yardopts"
22
- - AGENTS.md
23
22
  - CHANGELOG.md
24
- - CLAUDE.md
25
- - CONTRIBUTING.md
26
23
  - LICENSE.txt
27
24
  - README.md
28
- - RELEASING.md
29
25
  - SECURITY.md
30
26
  - data/list.txt
31
27
  - lib/public_suffix.rb
@@ -40,9 +36,9 @@ licenses:
40
36
  metadata:
41
37
  bug_tracker_uri: https://github.com/weppos/publicsuffix-ruby/issues
42
38
  changelog_uri: https://github.com/weppos/publicsuffix-ruby/blob/master/CHANGELOG.md
43
- documentation_uri: https://rubydoc.info/gems/public_suffix/7.0.1
39
+ documentation_uri: https://rubydoc.info/gems/public_suffix/7.0.2
44
40
  homepage_uri: https://simonecarletti.com/code/publicsuffix-ruby
45
- source_code_uri: https://github.com/weppos/publicsuffix-ruby/tree/v7.0.1
41
+ source_code_uri: https://github.com/weppos/publicsuffix-ruby/tree/v7.0.2
46
42
  funding_uri: https://github.com/sponsors/weppos
47
43
  rdoc_options: []
48
44
  require_paths:
data/AGENTS.md DELETED
@@ -1,38 +0,0 @@
1
- # Agent Instructions
2
-
3
- Instructions for AI coding agents when working on this project.
4
-
5
- ## Agent Organization
6
-
7
- When creating agent instruction files:
8
-
9
- - The main file should always be named `AGENTS.md`
10
- - Create a `CLAUDE.md` symlink pointing to `AGENTS.md` for compatibility with Claude Code
11
-
12
- ## Project Overview
13
-
14
- PublicSuffix for Ruby is a Ruby domain name parser based on the Public Suffix List. It provides domain parsing, validation, and extraction with support for private domains, FQDN handling, and custom rule definitions.
15
-
16
- ## Key Documentation
17
-
18
- - **[README.md](README.md)** - Library overview, features, usage examples, and API reference
19
- - **[CONTRIBUTING.md](CONTRIBUTING.md)** - Contribution guidelines, commit format, testing approach
20
- - **[Public Suffix List](https://publicsuffix.org/)** - Official Public Suffix List documentation
21
- - **[RubyDoc](https://rubydoc.info/gems/public_suffix)** - API documentation
22
-
23
- ## Project-Specific Context
24
-
25
- ### Code Style Notes
26
-
27
- - Use Conventional Commits format (see [CONTRIBUTING.md](CONTRIBUTING.md#commit-message-guidelines))
28
- - Follow Ruby community style guidelines
29
- - Do not include AI attribution in commit messages or code comments
30
- - Tests are mandatory for all changes
31
-
32
- ## Project Structure
33
-
34
- ```
35
- lib/public_suffix/ # Main library code
36
- test/ # Test suite
37
- data/ # Public Suffix List data
38
- ```
data/CLAUDE.md DELETED
@@ -1 +0,0 @@
1
- AGENTS.md
data/CONTRIBUTING.md DELETED
@@ -1,129 +0,0 @@
1
- # Contributing to PublicSuffix for Ruby
2
-
3
- Thank you for your interest in contributing to PublicSuffix for Ruby!
4
-
5
- ## Development Workflow
6
-
7
- 1. Fork and clone the repository
8
- 2. Install dependencies: `bundle install`
9
- 3. Create a branch: `git checkout -b feature/your-feature`
10
- 4. Make your changes
11
- 5. Run tests: `rake test`
12
- 6. Commit using Conventional Commits format (see below)
13
- 7. Push and create a pull request
14
-
15
- ## Commit Message Guidelines
16
-
17
- We follow the [Conventional Commits](https://www.conventionalcommits.org/) specification for commit messages.
18
-
19
- We follow the [Common Changelog](https://common-changelog.org/) format for changelog entries.
20
-
21
- ### Format
22
-
23
- ```
24
- <type>(<scope>): <subject>
25
-
26
- <body>
27
-
28
- <footer>
29
- ```
30
-
31
- Use lowercase for `<type>`. Capitalize the first letter of `<subject>` (sentence-style). See examples below.
32
-
33
- ### Type
34
-
35
- - **feat**: A new feature
36
- - **fix**: A bug fix
37
- - **chore**: Other changes that don't modify src or test files
38
- - **docs**: Documentation only changes
39
- - **style**: Code style changes (formatting, etc.)
40
- - **refactor**: Code change that neither fixes a bug nor adds a feature
41
- - **perf**: Performance improvement
42
- - **test**: Adding or updating tests
43
- - **build**: Changes to build system or external dependencies
44
- - **ci**: Changes to CI configuration files and scripts
45
-
46
- ### Scope
47
-
48
- - **parser**: List parsing and rule handling
49
- - **domain**: Domain parsing and validation
50
- - **list**: List management and operations
51
- - **rule**: Rule definitions and matching
52
-
53
- ### Examples
54
-
55
- ```bash
56
- feat(parser): Add support for wildcard exceptions
57
-
58
- fix(domain): Handle FQDN trailing dots correctly
59
-
60
- docs: Update usage examples in README
61
-
62
- refactor(list): Simplify rule lookup logic
63
- ```
64
-
65
- ### Breaking Changes
66
-
67
- Add `BREAKING CHANGE:` in the footer:
68
-
69
- ```
70
- feat(domain): Change parse return type
71
-
72
- BREAKING CHANGE: Domain#parse now returns nil for invalid domains instead of raising.
73
- Update code to check for nil returns.
74
- ```
75
-
76
- ## Testing
77
-
78
- ### Running Tests
79
-
80
- ```bash
81
- rake test # Run all tests
82
- rake test TEST=test/domain_test.rb # Run specific test file
83
- ```
84
-
85
- ### Writing Tests
86
-
87
- - Tests use Minitest framework
88
- - Place tests in `test/` directory
89
- - Use descriptive test names
90
- - Test both happy paths and error cases
91
- - Include tests for edge cases (empty strings, unicode, etc.)
92
-
93
- ## Pull Request Process
94
-
95
- 1. Update documentation for API changes
96
- 2. Add tests for new features or bug fixes
97
- 3. Ensure all tests pass: `rake test`
98
- 4. Use Conventional Commits format
99
- 5. Provide clear PR description with context
100
- 6. Reference related issues if applicable
101
-
102
- ## Code Style
103
-
104
- - Follow [Ruby Style Guide](https://rubystyle.guide/)
105
- - Use RuboCop configuration if present
106
- - Add YARD documentation for public methods
107
- - Keep methods focused and small
108
-
109
- ### Ruby-Specific Guidelines
110
-
111
- - Follow idiomatic Ruby patterns
112
- - Use meaningful variable and method names
113
- - Prefer `raise` over `fail`
114
- - Use blocks and iterators effectively
115
- - Follow the principle of least surprise
116
- - Prefer methods that return values over side effects
117
-
118
- ### Documentation
119
-
120
- - Add YARD comments for public methods
121
- - Include usage examples in documentation
122
- - Update README.md for user-facing changes
123
- - Keep inline comments minimal - prefer self-documenting code
124
-
125
- ## Questions?
126
-
127
- Open an issue for questions, feature discussions, or bug reports.
128
-
129
- Thank you for contributing!
data/RELEASING.md DELETED
@@ -1,96 +0,0 @@
1
- # Releasing
2
-
3
- This document describes the steps to release a new version of PublicSuffix.
4
-
5
- ## Prerequisites
6
-
7
- - You have commit access to the repository
8
- - You have push access to the repository
9
- - You have a GPG key configured for signing tags
10
- - You have permission to publish to RubyGems
11
-
12
- ## Release process
13
-
14
- 1. **Determine the new version** using [Semantic Versioning](https://semver.org/)
15
-
16
- ```shell
17
- VERSION=X.Y.Z
18
- ```
19
-
20
- - **MAJOR** version for incompatible API changes
21
- - **MINOR** version for backwards-compatible functionality additions
22
- - **PATCH** version for backwards-compatible bug fixes
23
-
24
- 2. **Update the version file** with the new version
25
-
26
- Edit `lib/public_suffix/version.rb` and update the `VERSION` constant:
27
-
28
- ```ruby
29
- VERSION = "X.Y.Z"
30
- ```
31
-
32
- 3. **Update the changelog** with the new version
33
-
34
- Edit `CHANGELOG.md` and add a new section for the release following the [Common Changelog](https://common-changelog.org/) format (see [CONTRIBUTING.md](CONTRIBUTING.md) for details):
35
-
36
- ```markdown
37
- ## X.Y.Z - YYYY-MM-DD
38
-
39
- ### Changed
40
-
41
- - Description of changes
42
- ```
43
-
44
- 4. **Install dependencies**
45
-
46
- ```shell
47
- bundle install
48
- ```
49
-
50
- or simply:
51
-
52
- ```shell
53
- bundle
54
- ```
55
-
56
- 5. **Run tests** and confirm they pass
57
-
58
- ```shell
59
- bundle exec rake test
60
- ```
61
-
62
- 6. **Commit the new version**
63
-
64
- ```shell
65
- git commit -am "Release $VERSION"
66
- ```
67
-
68
- 7. **Create a signed tag**
69
-
70
- ```shell
71
- git tag -a v$VERSION -s -m "Release $VERSION"
72
- ```
73
-
74
- 8. **Push the changes and tag**
75
-
76
- ```shell
77
- git push origin main
78
- git push origin v$VERSION
79
- ```
80
-
81
- 9. **Build and publish the gem**
82
-
83
- ```shell
84
- bundle exec rake release
85
- ```
86
-
87
- This will:
88
- - Build the gem
89
- - Push it to RubyGems
90
- - Create a GitHub release
91
-
92
- ## Post-release
93
-
94
- - Verify the new version appears on [RubyGems](https://rubygems.org/gems/public_suffix)
95
- - Verify the GitHub release was created
96
- - Announce the release if necessary