From aea0cbf78fbc46490aa32da9d85e6e5d562e3dbb Mon Sep 17 00:00:00 2001 From: "Matthew M. Keeler" Date: Wed, 12 Oct 2022 15:27:28 -0400 Subject: [PATCH] prepare 7.0.0 (#283) ## [7.0.0] - 2022-10-12 ### Changed: - Dropped support for older versions in accordance with the new [Xcode 14 release](https://developer.apple.com/documentation/xcode-release-notes/xcode-14-release-notes). --- .circleci/config.yml | 6 +- CHANGELOG.md | 4 ++ ContractTests/Package.swift | 6 +- LaunchDarkly.podspec | 12 ++-- LaunchDarkly.xcodeproj/project.pbxproj | 58 ++++++++++--------- .../xcschemes/LaunchDarkly_iOS.xcscheme | 2 +- .../ServiceObjects/EnvironmentReporter.swift | 2 +- .../ServiceObjects/FlagStore.swift | 2 +- Package.swift | 10 ++-- README.md | 14 ++--- 10 files changed, 65 insertions(+), 51 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 38e829e0..66e49cbd 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,7 +3,7 @@ version: 2.1 jobs: contract-tests: macos: - xcode: '13.4.1' + xcode: '14.0.1' steps: - checkout @@ -151,6 +151,10 @@ workflows: build: jobs: + - build: + name: Xcode 14.0 - Swift 5.7 + xcode-version: '14.0.1' + ios-sim: 'platform=iOS Simulator,name=iPhone 14,OS=16.0' - build: name: Xcode 13.3 - Swift 5.6 xcode-version: '13.3.1' diff --git a/CHANGELOG.md b/CHANGELOG.md index b761a34b..239288ce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,10 @@ All notable changes to the LaunchDarkly iOS SDK will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org). +## [7.0.0] - 2022-10-12 +### Changed: +- Dropped support for older versions in accordance with the new [Xcode 14 release](https://developer.apple.com/documentation/xcode-release-notes/xcode-14-release-notes). + ## [6.2.0] - 2022-09-01 ### Added: - CI builds now include a cross-platform test suite implemented in https://github.com/launchdarkly/sdk-test-harness. This covers many test cases that are also implemented in unit tests, but may be extended in the future to ensure consistent behavior across SDKs in other areas. diff --git a/ContractTests/Package.swift b/ContractTests/Package.swift index 324b05e4..658a3500 100644 --- a/ContractTests/Package.swift +++ b/ContractTests/Package.swift @@ -5,10 +5,10 @@ import PackageDescription let package = Package( name: "ContractTests", platforms: [ - .iOS(.v10), + .iOS(.v11), .macOS(.v10_15), - .watchOS(.v3), - .tvOS(.v10) + .watchOS(.v4), + .tvOS(.v11) ], products: [ .executable( diff --git a/LaunchDarkly.podspec b/LaunchDarkly.podspec index 77419b2a..e3dcc822 100644 --- a/LaunchDarkly.podspec +++ b/LaunchDarkly.podspec @@ -2,7 +2,7 @@ Pod::Spec.new do |ld| ld.name = "LaunchDarkly" - ld.version = "6.2.0" + ld.version = "7.0.0" ld.summary = "iOS SDK for LaunchDarkly" ld.description = <<-DESC @@ -21,10 +21,10 @@ Pod::Spec.new do |ld| ld.author = { "LaunchDarkly" => "sdks@launchdarkly.com" } - ld.ios.deployment_target = "10.0" - ld.watchos.deployment_target = "3.0" - ld.tvos.deployment_target = "10.0" - ld.osx.deployment_target = "10.12" + ld.ios.deployment_target = "11.0" + ld.watchos.deployment_target = "4.0" + ld.tvos.deployment_target = "11.0" + ld.osx.deployment_target = "10.13" ld.source = { :git => ld.homepage + '.git', :tag => ld.version} @@ -35,6 +35,6 @@ Pod::Spec.new do |ld| ld.swift_version = '5.0' ld.subspec 'Core' do |es| - es.dependency 'LDSwiftEventSource', '2.0.0' + es.dependency 'LDSwiftEventSource', '3.0.0' end end diff --git a/LaunchDarkly.xcodeproj/project.pbxproj b/LaunchDarkly.xcodeproj/project.pbxproj index d131df94..005255a9 100644 --- a/LaunchDarkly.xcodeproj/project.pbxproj +++ b/LaunchDarkly.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 52; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ @@ -848,7 +848,7 @@ isa = PBXNativeTarget; buildConfigurationList = 8354EFD61F22491C00C05156 /* Build configuration list for PBXNativeTarget "LaunchDarkly_iOS" */; buildPhases = ( - 835E1CFE1F61AC0600184DB4 /* ShellScript */, + 835E1CFE1F61AC0600184DB4 /* Run Script */, 8354EFBD1F22491C00C05156 /* Sources */, 8354EFBE1F22491C00C05156 /* Frameworks */, 8354EFBF1F22491C00C05156 /* Headers */, @@ -1023,6 +1023,7 @@ /* Begin PBXShellScriptBuildPhase section */ 830C2AC120741687001D645D /* ShellScript */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); @@ -1036,6 +1037,7 @@ }; 830C2AC2207416A5001D645D /* ShellScript */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); @@ -1049,6 +1051,7 @@ }; 833FD9F821C01333001F80EB /* ShellScript */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); @@ -1066,6 +1069,7 @@ }; 83411A561FABCA2200E5CF39 /* ShellScript */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); @@ -1077,13 +1081,15 @@ shellPath = /bin/sh; shellScript = "# Adds support for Apple Silicon brew directory\nexport PATH=\"$PATH:/opt/homebrew/bin\"\n\nif which mint >/dev/null; then\n /usr/bin/xcrun --sdk macosx mint run krzysztofzablocki/Sourcery\nelse\n echo \"warning: mint not installed, available from https://github.com/yonaskolb/Mint\"\nfi\n"; }; - 835E1CFE1F61AC0600184DB4 /* ShellScript */ = { + 835E1CFE1F61AC0600184DB4 /* Run Script */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); + name = "Run Script"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; @@ -1397,7 +1403,7 @@ GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - MARKETING_VERSION = 6.2.0; + MARKETING_VERSION = 7.0.0; MODULEMAP_FILE = ""; PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-tvOS"; PRODUCT_NAME = LaunchDarkly_tvOS; @@ -1420,7 +1426,7 @@ GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - MARKETING_VERSION = 6.2.0; + MARKETING_VERSION = 7.0.0; MODULEMAP_FILE = ""; PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-tvOS"; PRODUCT_NAME = LaunchDarkly_tvOS; @@ -1443,7 +1449,7 @@ GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - MARKETING_VERSION = 6.2.0; + MARKETING_VERSION = 7.0.0; PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-macOS"; PRODUCT_NAME = LaunchDarkly_macOS; SDKROOT = macosx; @@ -1464,7 +1470,7 @@ GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - MARKETING_VERSION = 6.2.0; + MARKETING_VERSION = 7.0.0; PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-macOS"; PRODUCT_NAME = LaunchDarkly_macOS; SDKROOT = macosx; @@ -1507,11 +1513,11 @@ COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = dwarf; - DYLIB_COMPATIBILITY_VERSION = 6.2.0; - DYLIB_CURRENT_VERSION = 6.2.0; + DYLIB_COMPATIBILITY_VERSION = 7.0.0; + DYLIB_CURRENT_VERSION = 7.0.0; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; - FRAMEWORK_VERSION = C; + FRAMEWORK_VERSION = D; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -1527,8 +1533,8 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; INFOPLIST_FILE = "$(PROJECT_DIR)/Framework/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - MACOSX_DEPLOYMENT_TARGET = 10.12; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + MACOSX_DEPLOYMENT_TARGET = 10.13; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -1536,10 +1542,10 @@ SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 11.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; - WATCHOS_DEPLOYMENT_TARGET = 3.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; @@ -1578,11 +1584,11 @@ COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DYLIB_COMPATIBILITY_VERSION = 6.2.0; - DYLIB_CURRENT_VERSION = 6.2.0; + DYLIB_COMPATIBILITY_VERSION = 7.0.0; + DYLIB_CURRENT_VERSION = 7.0.0; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; - FRAMEWORK_VERSION = C; + FRAMEWORK_VERSION = D; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -1592,19 +1598,19 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; INFOPLIST_FILE = "$(PROJECT_DIR)/Framework/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - MACOSX_DEPLOYMENT_TARGET = 10.12; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; + MACOSX_DEPLOYMENT_TARGET = 10.13; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SWIFT_COMPILATION_MODE = wholemodule; SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; - TVOS_DEPLOYMENT_TARGET = 10.0; + TVOS_DEPLOYMENT_TARGET = 11.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; - WATCHOS_DEPLOYMENT_TARGET = 3.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; @@ -1618,7 +1624,7 @@ INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_DYLIB_INSTALL_NAME = "$(DYLIB_INSTALL_NAME_BASE:standardizepath)/$(EXECUTABLE_PATH)"; - MARKETING_VERSION = 6.2.0; + MARKETING_VERSION = 7.0.0; MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap"; PRODUCT_BUNDLE_IDENTIFIER = com.launchdarkly.Darkly; PRODUCT_NAME = LaunchDarkly; @@ -1638,7 +1644,7 @@ INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_DYLIB_INSTALL_NAME = "$(DYLIB_INSTALL_NAME_BASE:standardizepath)/$(EXECUTABLE_PATH)"; - MARKETING_VERSION = 6.2.0; + MARKETING_VERSION = 7.0.0; MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap"; PRODUCT_BUNDLE_IDENTIFIER = com.launchdarkly.Darkly; PRODUCT_NAME = LaunchDarkly; @@ -1680,7 +1686,7 @@ GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - MARKETING_VERSION = 6.2.0; + MARKETING_VERSION = 7.0.0; PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-watchOS"; PRODUCT_NAME = LaunchDarkly_watchOS; SDKROOT = watchos; @@ -1702,7 +1708,7 @@ GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - MARKETING_VERSION = 6.2.0; + MARKETING_VERSION = 7.0.0; PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-watchOS"; PRODUCT_NAME = LaunchDarkly_watchOS; SDKROOT = watchos; @@ -1776,7 +1782,7 @@ repositoryURL = "https://github.com/LaunchDarkly/swift-eventsource.git"; requirement = { kind = exactVersion; - version = 2.0.0; + version = 3.0.0; }; }; B4903D9624BD61B200F087C4 /* XCRemoteSwiftPackageReference "OHHTTPStubs" */ = { diff --git a/LaunchDarkly.xcodeproj/xcshareddata/xcschemes/LaunchDarkly_iOS.xcscheme b/LaunchDarkly.xcodeproj/xcshareddata/xcschemes/LaunchDarkly_iOS.xcscheme index 68502378..230f5d25 100644 --- a/LaunchDarkly.xcodeproj/xcshareddata/xcschemes/LaunchDarkly_iOS.xcscheme +++ b/LaunchDarkly.xcodeproj/xcshareddata/xcschemes/LaunchDarkly_iOS.xcscheme @@ -3,7 +3,7 @@ LastUpgradeVersion = "1020" version = "1.7"> 6.2' + pod 'LaunchDarkly', '~> 7.0' end ``` @@ -71,7 +71,7 @@ To use the [Carthage](https://github.com/Carthage/Carthage) dependency manager t To integrate LaunchDarkly into your Xcode project using Carthage, specify it in your `Cartfile`: ```ogdl -github "launchdarkly/ios-client-sdk" ~> 6.2 +github "launchdarkly/ios-client-sdk" ~> 7.0 ``` ### Manual installation