From 53b75a924b568d7d5c13a90813f8a47fb7bb610c Mon Sep 17 00:00:00 2001 From: Bruno Guidolim Date: Mon, 25 May 2026 22:48:27 +0200 Subject: [PATCH] =?UTF-8?q?Deprecate=20repository=20=E2=80=94=20moved=20to?= =?UTF-8?q?=20the=20PhoneNumberKit=20organization?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add @available deprecation on PhoneNumberUtility.init pointing to the new repo - Add README banner; freeze metadata automation (remove update_metadata workflow) - Bump podspec to 4.3.0 --- .github/workflows/update_metadata.yml | 27 ------------------- PhoneNumberKit.podspec | 2 +- PhoneNumberKit/PartialFormatter.swift | 1 + PhoneNumberKit/PhoneNumberFormatter.swift | 1 + PhoneNumberKit/PhoneNumberUtility.swift | 1 + .../UI/CountryCodePickerViewController.swift | 1 + PhoneNumberKit/UI/PhoneNumberTextField.swift | 4 +++ README.md | 19 +++++++++++++ 8 files changed, 28 insertions(+), 28 deletions(-) delete mode 100644 .github/workflows/update_metadata.yml diff --git a/.github/workflows/update_metadata.yml b/.github/workflows/update_metadata.yml deleted file mode 100644 index f65e46df2..000000000 --- a/.github/workflows/update_metadata.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: Update metadata - -on: - workflow_dispatch: - schedule: - - cron: '0 */12 * * *' # Every 12 hours - -jobs: - build: - runs-on: macos-latest - steps: - - name: Configure Python - uses: actions/setup-python@v4 - with: - python-version: '3.12' - - - name: Install XML to JSON converter - run: pip install xmljson - - - name: Checkout - uses: actions/checkout@v4 - - - name: Authorize - run: echo "${{ secrets.GITHUB_TOKEN }}" | gh auth login --with-token - - - name: Update Metadata - run: cd PhoneNumberKit/Resources && sh ./update_metadata.sh \ No newline at end of file diff --git a/PhoneNumberKit.podspec b/PhoneNumberKit.podspec index 2d9bc3d45..feebc2ca1 100644 --- a/PhoneNumberKit.podspec +++ b/PhoneNumberKit.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'PhoneNumberKit' - s.version = '4.2.13' + s.version = '4.3.0' s.summary = 'Swift framework for working with phone numbers' s.description = <<-DESC A Swift framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber. diff --git a/PhoneNumberKit/PartialFormatter.swift b/PhoneNumberKit/PartialFormatter.swift index 839518653..dc2e472f6 100644 --- a/PhoneNumberKit/PartialFormatter.swift +++ b/PhoneNumberKit/PartialFormatter.swift @@ -17,6 +17,7 @@ public final class PartialFormatter { weak var parser: PhoneNumberParser? weak var regexManager: RegexManager? + @available(*, deprecated, message: "PhoneNumberKit has moved to github.com/PhoneNumberKit/PhoneNumberKit and is no longer maintained here. See the README to migrate.") public convenience init(utility: PhoneNumberUtility = PhoneNumberUtility(), defaultRegion: String = PhoneNumberUtility.defaultRegionCode(), withPrefix: Bool = true, diff --git a/PhoneNumberKit/PhoneNumberFormatter.swift b/PhoneNumberKit/PhoneNumberFormatter.swift index 192a6c843..4480d9e85 100644 --- a/PhoneNumberKit/PhoneNumberFormatter.swift +++ b/PhoneNumberKit/PhoneNumberFormatter.swift @@ -40,6 +40,7 @@ open class PhoneNumberFormatter: Foundation.Formatter { // MARK: Lifecycle + @available(*, deprecated, message: "PhoneNumberKit has moved to github.com/PhoneNumberKit/PhoneNumberKit and is no longer maintained here. See the README to migrate.") public init(utility: PhoneNumberUtility = PhoneNumberUtility(), defaultRegion: String = PhoneNumberUtility.defaultRegionCode(), withPrefix: Bool = true) { self.utility = utility self.partialFormatter = PartialFormatter(utility: self.utility, defaultRegion: defaultRegion, withPrefix: withPrefix) diff --git a/PhoneNumberKit/PhoneNumberUtility.swift b/PhoneNumberKit/PhoneNumberUtility.swift index c04b597e1..b6389bc58 100644 --- a/PhoneNumberKit/PhoneNumberUtility.swift +++ b/PhoneNumberKit/PhoneNumberUtility.swift @@ -26,6 +26,7 @@ public final class PhoneNumberUtility { // MARK: Lifecycle + @available(*, deprecated, message: "PhoneNumberKit has moved to github.com/PhoneNumberKit/PhoneNumberKit and is no longer maintained here. See the README to migrate.") public init(metadataCallback: @escaping MetadataCallback = defaultMetadataCallback) { self.metadataManager = MetadataManager(metadataCallback: metadataCallback) self.parseManager = ParseManager(metadataManager: self.metadataManager, regexManager: self.regexManager) diff --git a/PhoneNumberKit/UI/CountryCodePickerViewController.swift b/PhoneNumberKit/UI/CountryCodePickerViewController.swift index a2610f91b..3bf934740 100644 --- a/PhoneNumberKit/UI/CountryCodePickerViewController.swift +++ b/PhoneNumberKit/UI/CountryCodePickerViewController.swift @@ -51,6 +51,7 @@ public class CountryCodePickerViewController: UITableViewController { /// /// - parameter utility: A `PhoneNumberUtility` instance to be used by the text field. /// - parameter commonCountryCodes: An array of country codes to display in the section below the current region section. defaults to `PhoneNumberUtility.CountryCodePicker.commonCountryCodes` + @available(*, deprecated, message: "PhoneNumberKit's UI components have moved to github.com/PhoneNumberKit/PhoneNumberKitUI; this repository is no longer maintained. See the README to migrate.") public init( utility: PhoneNumberUtility, options: CountryCodePickerOptions?, diff --git a/PhoneNumberKit/UI/PhoneNumberTextField.swift b/PhoneNumberKit/UI/PhoneNumberTextField.swift index 52bb1e77c..8dc124029 100644 --- a/PhoneNumberKit/UI/PhoneNumberTextField.swift +++ b/PhoneNumberKit/UI/PhoneNumberTextField.swift @@ -256,6 +256,7 @@ open class PhoneNumberTextField: UITextField, UITextFieldDelegate { /// - parameter utility: A `PhoneNumberUtility` instance to be used by the text field. /// /// - returns: UITextfield + @available(*, deprecated, message: "PhoneNumberKit's UI components have moved to github.com/PhoneNumberKit/PhoneNumberKitUI; this repository is no longer maintained. See the README to migrate.") public convenience init(utility: PhoneNumberUtility) { self.init(frame: .zero, utility: utility) } @@ -266,6 +267,7 @@ open class PhoneNumberTextField: UITextField, UITextFieldDelegate { /// - parameter utility: A `PhoneNumberUtility` instance to be used by the text field. /// /// - returns: UITextfield + @available(*, deprecated, message: "PhoneNumberKit's UI components have moved to github.com/PhoneNumberKit/PhoneNumberKitUI; this repository is no longer maintained. See the README to migrate.") public init(frame: CGRect, utility: PhoneNumberUtility) { self.utility = utility super.init(frame: frame) @@ -277,6 +279,7 @@ open class PhoneNumberTextField: UITextField, UITextFieldDelegate { /// - parameter frame: UITextfield F /// /// - returns: UITextfield + @available(*, deprecated, message: "PhoneNumberKit's UI components have moved to github.com/PhoneNumberKit/PhoneNumberKitUI; this repository is no longer maintained. See the README to migrate.") override public init(frame: CGRect) { self.utility = PhoneNumberUtility() super.init(frame: frame) @@ -296,6 +299,7 @@ open class PhoneNumberTextField: UITextField, UITextFieldDelegate { /// - clearButtonPadding: The padding to be applied to the clear button. This value defines the space between the clear /// button and the edges of the text field. A positive value increases the distance between the clear button and the /// text field's edges, and a negative value decreases this distance. + @available(*, deprecated, message: "PhoneNumberKit's UI components have moved to github.com/PhoneNumberKit/PhoneNumberKitUI; this repository is no longer maintained. See the README to migrate.") public init(insets: UIEdgeInsets, clearButtonPadding: CGFloat) { self.utility = PhoneNumberUtility() self.insets = insets diff --git a/README.md b/README.md index 35ea574ce..e683b25f1 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,22 @@ +> # ⚠️ PhoneNumberKit has moved — this repository is no longer maintained +> +> Active development now lives in the **[PhoneNumberKit organization](https://github.com/PhoneNumberKit)**: +> +> - **Core** (parsing / formatting / validation): **[PhoneNumberKit/PhoneNumberKit](https://github.com/PhoneNumberKit/PhoneNumberKit)** — `5.0.0+` +> - **UI** (`PhoneNumberTextField`, country-code picker): **[PhoneNumberKit/PhoneNumberKitUI](https://github.com/PhoneNumberKit/PhoneNumberKitUI)** — `1.0.0+` +> +> This repository is **frozen at `4.3.0`** and no longer receives metadata updates, so its validation +> data will drift out of date over time. PhoneNumberKit was created and maintained here for years by +> **Roy Marmelstein** — thank you. Maintenance has moved to the organization to keep the metadata +> current and the project sustainable. +> +> **Migrating:** point your package at `https://github.com/PhoneNumberKit/PhoneNumberKit` — the module +> name `PhoneNumberKit` is unchanged, so core usage needs no source changes. If you use the text field +> or picker, add the `PhoneNumberKitUI` package and `import PhoneNumberKitUI`. Full steps in the +> **[migration guide](https://github.com/PhoneNumberKit/PhoneNumberKit/blob/main/MIGRATION.md)**. + +--- + ![PhoneNumberKit](https://cloud.githubusercontent.com/assets/889949/20864386/a1307950-b9ef-11e6-8a58-e9c5103738e7.png) [![Platform](https://img.shields.io/cocoapods/p/PhoneNumberKit.svg?maxAge=2592000&style=for-the-badge)](http://cocoapods.org/?q=PhoneNumberKit) ![GitHub Workflow Status (with branch)](https://img.shields.io/github/actions/workflow/status/marmelroy/PhoneNumberKit/pr.yml?branch=master&label=tests&style=for-the-badge) [![Version](http://img.shields.io/cocoapods/v/PhoneNumberKit.svg?style=for-the-badge)](http://cocoapods.org/?q=PhoneNumberKit)