From 200645459375da29e88ab51b7c51f7c12f414ebc Mon Sep 17 00:00:00 2001 From: Eric Amorde Date: Wed, 1 Jul 2026 11:32:53 -0700 Subject: [PATCH] Remove CocoaPods support --- .github/workflows/build.yml | 6 ++--- KIF.podspec | 29 --------------------- README.md | 50 +++++++++---------------------------- 3 files changed, 15 insertions(+), 70 deletions(-) delete mode 100644 KIF.podspec diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 674dbac6..a3f744d8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -6,14 +6,14 @@ on: pull_request: jobs: - validate_spec: + validate_package: runs-on: macos-latest steps: - name: Checkout Project uses: actions/checkout@v1 - - name: Validate podspec - run: pod lib lint + - name: Validate Package + run: swift build --sdk "`xcrun --sdk iphonesimulator --show-sdk-path`" --triple arm64-apple-ios13.0-simulator build_macos15: runs-on: macos-15 strategy: diff --git a/KIF.podspec b/KIF.podspec deleted file mode 100644 index 80f652f0..00000000 --- a/KIF.podspec +++ /dev/null @@ -1,29 +0,0 @@ -Pod::Spec.new do |s| - s.name = "KIF" - s.version = "3.12.3" - s.summary = "Keep It Functional - iOS UI acceptance testing in an XCUnit harness." - s.homepage = "https://github.com/kif-framework/KIF/" - s.license = 'Apache 2.0' - s.authors = 'Michael Thole', 'Eric Firestone', 'Jim Puls', 'Brian Nickel' - s.source = { :git => "https://github.com/kif-framework/KIF.git", :tag => "v#{ s.version.to_s }" } - s.platform = :ios, '13.0' - s.frameworks = 'CoreGraphics', 'QuartzCore', 'IOKit', 'WebKit', 'XCTest' - s.default_subspec = 'Core' - s.requires_arc = true - s.prefix_header_contents = '#import ' - s.pod_target_xcconfig = { 'ENABLE_BITCODE' => 'NO' } - - s.subspec 'Core' do |core| - core.source_files = 'Sources/KIF/Classes/**/*.{h,m}', 'Sources/KIF/Additions/**/*.{h,m}', 'Sources/KIF/Visualizer/**/*.{h,m}', 'Sources/KIF/ApplePrivateAPIs/**/*.{h,m}' - core.public_header_files = 'Sources/KIF/Classes/**/*.h', 'Sources/KIF/Additions/**/*{-,+}KIFAdditions.h', 'Sources/KIF/Additions/UIView-Debugging.h' - core.xcconfig = { 'FRAMEWORK_SEARCH_PATHS' => '$(PLATFORM_DIR)/Developer/Library/Frameworks' } - core.requires_arc = true - end - - s.subspec 'IdentifierTests' do |kiaf| - kiaf.dependency 'KIF/Core' - kiaf.source_files = 'Sources/KIF/IdentifierTests' - kiaf.public_header_files = 'Sources/KIF/IdentifierTests/**/*.h' - kiaf.requires_arc = true - end -end diff --git a/README.md b/README.md index b51821f3..c7750eee 100644 --- a/README.md +++ b/README.md @@ -36,9 +36,21 @@ See KIF in Action KIF uses techniques described below to validate its internal functionality. You can see a test suite that exercises its entire functionality by simply building and testing the KIF scheme with ⌘U. Look at the tests in the "Tests" group for ideas on how to build your own tests. + +Installation (with Swift Package Manager) +----------------------------------------- + +Add the KIF package as a dependency: + +```swift +.package(url: "https://github.com/kif-framework/KIF", from: {VERSION}) +``` + Installation (with CocoaPods) ----------------------------- +⚠️ CocoaPods is no longer supported and will not be receiving new updates + [CocoaPods](http://cocoapods.org) are the easiest way to get set up with KIF. The first thing you will want to do is set up a test target you will be using for KIF. You may already have one named *MyApplication*_Tests if you selected to automatically create unit tests. If you did, you can keep using it if you aren't using it for unit tests. Otherwise, follow these directions to create a new one. @@ -61,33 +73,6 @@ end After running `pod install` complete the tasks in [**Final Test Target Configurations**](#final-test-target-configurations) below for the final details on getting your tests to run. -Installation (from GitHub) --------------------------- - -To install KIF, you'll need to link the libKIF static library directly into your application. Download the source from the [kif-framework/KIF](https://github.com/kif-framework/KIF/) and follow the instructions below. The screenshots are from Xcode 6 on Yosemite, but the instructions should be the same for Xcode 5 or later on any OS version. - -We'll be using a simple project as an example, and you can find it in `Documentation/Examples/Testable Swift` in this repository. - -![Simple App](https://github.com/kif-framework/KIF/raw/master/Documentation/Images/Simple%20App.png) - - -### Add KIF to your project files -The first step is to add the KIF project into the ./Frameworks/KIF subdirectory of your existing app. If your project uses Git for version control, you can use submodules to make updating in the future easier: - -``` -cd /path/to/MyApplicationSource -mkdir Frameworks -git submodule add https://github.com/kif-framework/KIF.git Frameworks/KIF -``` - -If you're not using Git, simply download the source and copy it into the `./Frameworks/KIF` directory. - -### Add KIF to Your Workspace -Let your project know about KIF by adding the KIF project into a workspace along with your main project. Find the `KIF.xcodeproj` file in Finder and drag it into the Project Navigator (⌘1). - -![Added KIF to the project](https://github.com/kif-framework/KIF/raw/master/Documentation/Images/Added%20KIF%20to%20Project.png) - - ### Create a Testing Target You'll need to create a test target for your app. You may already have one named *MyApplication*Tests if you selected to automatically create unit tests when you created the project. If you did, you can keep using it if you aren't using it for unit tests. Otherwise, follow these directions to create a new one. @@ -110,17 +95,6 @@ KIF takes advantage of Objective C's ability to add categories on an object, but Read **Final Test Target Configurations** below for the final details on getting your tests to run. -Installing Accessibility Identifier Tests ------------------------------------------ - -Normally you identify a UI element via its accessibility label so that KIF simulates the interactions of a real user as closely as possible. In some cases, however, you may have to use accessibility identifiers, which are not exposed to users. If using CocoaPods, install the additional identifier-based Tests via the Identifier CocoaPods subspec: - -``` -pod 'KIF/IdentifierTests' -``` - -If not using CocoaPods, the identifier-based Tests can be added by including "KIFUITestActor-IdentifierTests.h". - Final Test Target Configurations --------------------------------