Skip to content

4.0.0

Choose a tag to compare

@github-actions github-actions released this 18 Aug 01:26
· 19 commits to main since this release
bf9f0a1

Added

  • Linux support, verified by CI (swift build / swift test on the official Swift container).
  • GitHub Releases are now created automatically when a version tag is pushed.
  • CI Success aggregate check for branch protection.
  • Community files: CHANGELOG.md, CONTRIBUTING.md, SECURITY.md, issue and PR templates.

Changed

  • Breaking: Package.swift requires swift-tools 5.9 (Xcode 15 or later for SPM consumers) and declares explicit platforms: macOS 10.13, iOS 12, tvOS 12, watchOS 4, visionOS 1.
  • Breaking: the PunycodeSwift dependency is raised to 4.0 (.upToNextMajor(from: "4.0.0")), which adds the URL-aware idnaEncodedURL / idnaDecodedURL API.
  • Product bundle identifiers renamed from com.gumob.* to dev.futamura.*, completing the account rename.
  • CI runs on pushes and pull requests to main and develop, on current macOS runner images, resolving simulator destinations at runtime.
  • API documentation migrated from jazzy to DocC, built and deployed to GitHub Pages by CI; the generated site is no longer tracked in the repository. New URL: https://futamura.github.io/TLDExtractSwift/documentation/tldextractswift/.
  • Releasing is now a separate tag-triggered workflow that verifies the tag against the project version before publishing. Version tags are immutable.
  • Development tooling: Ruby 3.4 / Bundler 2.7, gems updated to clear all outstanding Dependabot alerts.

Fixed

  • The README example that applied idnaEncoded to a full URL (which mangles the scheme into the first label) now encodes the host component correctly (#8).

Deprecated

  • Carthage support is best-effort and no longer CI-verified.

Removed

  • CocoaPods publishing: 3.0.0 is the last version available as the TLDExtractSwift pod (the trunk becomes read-only on 2026-12-02 anyway). Later versions are distributed via Swift Package Manager (and Carthage on a best-effort basis). The podspec, the pod lint CI job, and the trunk push in the release workflow are removed.