Skip to content

Commit

Permalink
prepare 9.2.0 release (#315)
Browse files Browse the repository at this point in the history
## [9.2.0] - 2023-10-24
### Changed:
- Updated swift-tools-version from 5.2 to 5.3.

### Removed:
- Removed support for iOS 11 and tvOS 11 to support XCode15. This is
being released as a minor change because those platforms can no longer
use any portion of this SDKs APIs.

---------

Co-authored-by: Ben Woskow <[email protected]>
Co-authored-by: torchhound <[email protected]>
Co-authored-by: Gavin Whelan <[email protected]>
Co-authored-by: Louis Chan <[email protected]>
Co-authored-by: Matthew Keeler <[email protected]>
Co-authored-by: Louis Chan <[email protected]>
Co-authored-by: Ember Stevens <[email protected]>
Co-authored-by: Ember Stevens <[email protected]>
Co-authored-by: Ryan Lamb <[email protected]>
Co-authored-by: ld-repository-standards[bot] <113625520+ld-repository-standards[bot]@users.noreply.github.com>
Co-authored-by: Kane Parkinson <[email protected]>
  • Loading branch information
12 people authored Oct 24, 2023
1 parent 1fd4db1 commit 5f8aae1
Show file tree
Hide file tree
Showing 13 changed files with 78 additions and 112 deletions.
11 changes: 9 additions & 2 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ version: 2.1
jobs:
contract-tests:
macos:
xcode: '14.2.0'
xcode: '15.0.0'

steps:
- checkout
Expand Down Expand Up @@ -31,6 +31,9 @@ jobs:
- run:
command: make start-contract-test-service
background: true
- run:
name: wait for contract test service to be ready
command: sleep 5
- run:
name: run contract tests
command: TEST_HARNESS_PARAMS="-junit /tmp/test-results/contract-tests-junit.xml" make run-contract-tests
Expand All @@ -54,7 +57,7 @@ jobs:

macos:
xcode: <<parameters.xcode-version>>
resource_class: macos.x86.medium.gen2
resource_class: macos.m1.medium.gen1

steps:
- checkout
Expand Down Expand Up @@ -158,6 +161,10 @@ workflows:

build:
jobs:
- build:
name: Xcode 15.0.0 - Swift 5.9
xcode-version: '15.0.0'
ios-sim: 'platform=iOS Simulator,name=iPhone 15,OS=17.0.1'
- build:
name: Xcode 14.0 - Swift 5.7
xcode-version: '14.0.1'
Expand Down
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,13 @@

All notable changes to the LaunchDarkly iOS SDK will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org).

## [9.2.0] - 2023-10-24
### Changed:
- Updated swift-tools-version from 5.2 to 5.3.

### Removed:
- Removed support for iOS 11 and tvOS 11 to support XCode15. This is being released as a minor change because those platforms can no longer use any portion of this SDKs APIs.

## [9.1.1] - 2023-09-19
### Fixed:
- Fixed rare bug in key generation in some contexts generated by the Auto Environment Attributes feature.
Expand Down
6 changes: 3 additions & 3 deletions ContractTests/Package.swift
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
// swift-tools-version:5.2
// swift-tools-version:5.3

import PackageDescription

let package = Package(
name: "ContractTests",
platforms: [
.iOS(.v11),
.iOS(.v12),
.macOS(.v10_15),
.watchOS(.v4),
.tvOS(.v11)
.tvOS(.v12)
],
products: [
.executable(
Expand Down
6 changes: 3 additions & 3 deletions LaunchDarkly.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Pod::Spec.new do |ld|

ld.name = "LaunchDarkly"
ld.version = "9.1.1"
ld.version = "9.2.0"
ld.summary = "iOS SDK for LaunchDarkly"

ld.description = <<-DESC
Expand All @@ -21,9 +21,9 @@ Pod::Spec.new do |ld|

ld.author = { "LaunchDarkly" => "[email protected]" }

ld.ios.deployment_target = "11.0"
ld.ios.deployment_target = "12.0"
ld.watchos.deployment_target = "4.0"
ld.tvos.deployment_target = "11.0"
ld.tvos.deployment_target = "12.0"
ld.osx.deployment_target = "10.13"

ld.source = { :git => ld.homepage + '.git', :tag => ld.version}
Expand Down
80 changes: 36 additions & 44 deletions LaunchDarkly.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,6 @@
831AAE2D20A9E4F600B46DBA /* Throttler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 831AAE2B20A9E4F600B46DBA /* Throttler.swift */; };
831AAE2E20A9E4F600B46DBA /* Throttler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 831AAE2B20A9E4F600B46DBA /* Throttler.swift */; };
831AAE3020A9E75D00B46DBA /* ThrottlerSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 831AAE2F20A9E75D00B46DBA /* ThrottlerSpec.swift */; };
831CE0661F853A1700A13A3A /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = 831CE0651F853A1700A13A3A /* Match.swift */; };
831D2AAF2061AAA000B4AC3C /* Thread.swift in Sources */ = {isa = PBXBuildFile; fileRef = 831D2AAE2061AAA000B4AC3C /* Thread.swift */; };
831D8B6F1F71532300ED65E8 /* HTTPHeaders.swift in Sources */ = {isa = PBXBuildFile; fileRef = 831D8B6E1F71532300ED65E8 /* HTTPHeaders.swift */; };
831D8B721F71D3E700ED65E8 /* DarklyService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 831D8B711F71D3E700ED65E8 /* DarklyService.swift */; };
Expand Down Expand Up @@ -379,7 +378,6 @@
831425B0206B030100F2EF36 /* EnvironmentReporter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnvironmentReporter.swift; sourceTree = "<group>"; };
831AAE2B20A9E4F600B46DBA /* Throttler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Throttler.swift; sourceTree = "<group>"; };
831AAE2F20A9E75D00B46DBA /* ThrottlerSpec.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ThrottlerSpec.swift; sourceTree = "<group>"; };
831CE0651F853A1700A13A3A /* Match.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Match.swift; sourceTree = "<group>"; };
831D2AAE2061AAA000B4AC3C /* Thread.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Thread.swift; sourceTree = "<group>"; };
831D8B6E1F71532300ED65E8 /* HTTPHeaders.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HTTPHeaders.swift; sourceTree = "<group>"; };
831D8B711F71D3E700ED65E8 /* DarklyService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DarklyService.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -530,14 +528,6 @@
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
831CE0671F853CB700A13A3A /* Matcher */ = {
isa = PBXGroup;
children = (
831CE0651F853A1700A13A3A /* Match.swift */,
);
path = Matcher;
sourceTree = "<group>";
};
831D8B701F71D3A600ED65E8 /* Networking */ = {
isa = PBXGroup;
children = (
Expand Down Expand Up @@ -660,7 +650,6 @@
831D8B751F72A48900ED65E8 /* ServiceObjects */,
83396BC71F7C3688000E256E /* Networking */,
83D17EA81FCDA16300B2823C /* Extensions */,
831CE0671F853CB700A13A3A /* Matcher */,
8354EFD21F22491C00C05156 /* Info.plist */,
B4265EB024E7390C001CFD2C /* TestUtil.swift */,
);
Expand Down Expand Up @@ -1427,7 +1416,6 @@
83CFE7CE1F7AD81D0010544E /* EventReporterSpec.swift in Sources */,
8392FFA32033565700320914 /* HTTPURLResponse.swift in Sources */,
83411A5F1FABDA8700E5CF39 /* mocks.generated.swift in Sources */,
831CE0661F853A1700A13A3A /* Match.swift in Sources */,
83DDBF001FA2589900E428B6 /* FlagStoreSpec.swift in Sources */,
B4F689142497B2FC004D3CE0 /* DiagnosticEventSpec.swift in Sources */,
83396BC91F7C3711000E256E /* DarklyServiceSpec.swift in Sources */,
Expand Down Expand Up @@ -1571,19 +1559,20 @@
CODE_SIGN_IDENTITY = "";
CODE_SIGN_STYLE = Automatic;
DEFINES_MODULE = NO;
DYLIB_COMPATIBILITY_VERSION = 9.1.0;
DYLIB_CURRENT_VERSION = 9.1.1;
DYLIB_COMPATIBILITY_VERSION = 9.2.0;
DYLIB_CURRENT_VERSION = 9.2.0;
DYLIB_INSTALL_NAME_BASE = "@rpath";
GCC_C_LANGUAGE_STANDARD = gnu11;
INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
MARKETING_VERSION = 9.1.1;
MARKETING_VERSION = 9.2.0;
MODULEMAP_FILE = "";
PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-tvOS";
PRODUCT_NAME = LaunchDarkly_tvOS;
SDKROOT = appletvos;
SKIP_INSTALL = YES;
TARGETED_DEVICE_FAMILY = 3;
TVOS_DEPLOYMENT_TARGET = 12.0;
};
name = Debug;
};
Expand All @@ -1596,19 +1585,20 @@
CODE_SIGN_IDENTITY = "";
CODE_SIGN_STYLE = Automatic;
DEFINES_MODULE = NO;
DYLIB_COMPATIBILITY_VERSION = 9.1.0;
DYLIB_CURRENT_VERSION = 9.1.1;
DYLIB_COMPATIBILITY_VERSION = 9.2.0;
DYLIB_CURRENT_VERSION = 9.2.0;
DYLIB_INSTALL_NAME_BASE = "@rpath";
GCC_C_LANGUAGE_STANDARD = gnu11;
INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
MARKETING_VERSION = 9.1.1;
MARKETING_VERSION = 9.2.0;
MODULEMAP_FILE = "";
PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-tvOS";
PRODUCT_NAME = LaunchDarkly_tvOS;
SDKROOT = appletvos;
SKIP_INSTALL = YES;
TARGETED_DEVICE_FAMILY = 3;
TVOS_DEPLOYMENT_TARGET = 12.0;
};
name = Release;
};
Expand All @@ -1621,13 +1611,13 @@
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
DEFINES_MODULE = NO;
DYLIB_COMPATIBILITY_VERSION = 9.1.0;
DYLIB_CURRENT_VERSION = 9.1.1;
DYLIB_COMPATIBILITY_VERSION = 9.2.0;
DYLIB_CURRENT_VERSION = 9.2.0;
DYLIB_INSTALL_NAME_BASE = "@rpath";
GCC_C_LANGUAGE_STANDARD = gnu11;
INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
MARKETING_VERSION = 9.1.1;
MARKETING_VERSION = 9.2.0;
PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-macOS";
PRODUCT_NAME = LaunchDarkly_macOS;
SDKROOT = macosx;
Expand All @@ -1644,13 +1634,13 @@
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
DEFINES_MODULE = NO;
DYLIB_COMPATIBILITY_VERSION = 9.1.0;
DYLIB_CURRENT_VERSION = 9.1.1;
DYLIB_COMPATIBILITY_VERSION = 9.2.0;
DYLIB_CURRENT_VERSION = 9.2.0;
DYLIB_INSTALL_NAME_BASE = "@rpath";
GCC_C_LANGUAGE_STANDARD = gnu11;
INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
MARKETING_VERSION = 9.1.1;
MARKETING_VERSION = 9.2.0;
PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-macOS";
PRODUCT_NAME = LaunchDarkly_macOS;
SDKROOT = macosx;
Expand Down Expand Up @@ -1693,8 +1683,8 @@
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1;
DEBUG_INFORMATION_FORMAT = dwarf;
DYLIB_COMPATIBILITY_VERSION = 9.1.0;
DYLIB_CURRENT_VERSION = 9.1.1;
DYLIB_COMPATIBILITY_VERSION = 9.2.0;
DYLIB_CURRENT_VERSION = 9.2.0;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
FRAMEWORK_VERSION = F;
Expand All @@ -1713,7 +1703,7 @@
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = "$(PROJECT_DIR)/Framework/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
MACOSX_DEPLOYMENT_TARGET = 10.13;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
Expand All @@ -1722,7 +1712,7 @@
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
TVOS_DEPLOYMENT_TARGET = 11.0;
TVOS_DEPLOYMENT_TARGET = 12.0;
VERSIONING_SYSTEM = "apple-generic";
VERSION_INFO_PREFIX = "";
WATCHOS_DEPLOYMENT_TARGET = 4.0;
Expand Down Expand Up @@ -1764,8 +1754,8 @@
COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 1;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DYLIB_COMPATIBILITY_VERSION = 9.1.0;
DYLIB_CURRENT_VERSION = 9.1.1;
DYLIB_COMPATIBILITY_VERSION = 9.2.0;
DYLIB_CURRENT_VERSION = 9.2.0;
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
FRAMEWORK_VERSION = F;
Expand All @@ -1778,15 +1768,15 @@
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = "$(PROJECT_DIR)/Framework/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
IPHONEOS_DEPLOYMENT_TARGET = 12.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 = 11.0;
TVOS_DEPLOYMENT_TARGET = 12.0;
VALIDATE_PRODUCT = YES;
VERSIONING_SYSTEM = "apple-generic";
VERSION_INFO_PREFIX = "";
Expand All @@ -1800,13 +1790,14 @@
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES;
CODE_SIGN_IDENTITY = "";
DEFINES_MODULE = NO;
DYLIB_COMPATIBILITY_VERSION = 9.1.0;
DYLIB_CURRENT_VERSION = 9.1.1;
DYLIB_COMPATIBILITY_VERSION = 9.2.0;
DYLIB_CURRENT_VERSION = 9.2.0;
DYLIB_INSTALL_NAME_BASE = "@rpath";
INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
LD_DYLIB_INSTALL_NAME = "$(DYLIB_INSTALL_NAME_BASE:standardizepath)/$(EXECUTABLE_PATH)";
MARKETING_VERSION = 9.1.1;
MARKETING_VERSION = 9.2.0;
MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap";
PRODUCT_BUNDLE_IDENTIFIER = com.launchdarkly.Darkly;
PRODUCT_NAME = LaunchDarkly;
Expand All @@ -1822,13 +1813,14 @@
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES;
CODE_SIGN_IDENTITY = "";
DEFINES_MODULE = NO;
DYLIB_COMPATIBILITY_VERSION = 9.1.0;
DYLIB_CURRENT_VERSION = 9.1.1;
DYLIB_COMPATIBILITY_VERSION = 9.2.0;
DYLIB_CURRENT_VERSION = 9.2.0;
DYLIB_INSTALL_NAME_BASE = "@rpath";
INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
LD_DYLIB_INSTALL_NAME = "$(DYLIB_INSTALL_NAME_BASE:standardizepath)/$(EXECUTABLE_PATH)";
MARKETING_VERSION = 9.1.1;
MARKETING_VERSION = 9.2.0;
MODULEMAP_FILE = "$(PROJECT_DIR)/Framework/module.modulemap";
PRODUCT_BUNDLE_IDENTIFIER = com.launchdarkly.Darkly;
PRODUCT_NAME = LaunchDarkly;
Expand Down Expand Up @@ -1866,13 +1858,13 @@
CODE_SIGN_IDENTITY = "";
CODE_SIGN_STYLE = Automatic;
DEFINES_MODULE = NO;
DYLIB_COMPATIBILITY_VERSION = 9.1.0;
DYLIB_CURRENT_VERSION = 9.1.1;
DYLIB_COMPATIBILITY_VERSION = 9.2.0;
DYLIB_CURRENT_VERSION = 9.2.0;
DYLIB_INSTALL_NAME_BASE = "@rpath";
GCC_C_LANGUAGE_STANDARD = gnu11;
INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
MARKETING_VERSION = 9.1.1;
MARKETING_VERSION = 9.2.0;
PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-watchOS";
PRODUCT_NAME = LaunchDarkly_watchOS;
SDKROOT = watchos;
Expand All @@ -1890,13 +1882,13 @@
CODE_SIGN_IDENTITY = "";
CODE_SIGN_STYLE = Automatic;
DEFINES_MODULE = NO;
DYLIB_COMPATIBILITY_VERSION = 9.1.0;
DYLIB_CURRENT_VERSION = 9.1.1;
DYLIB_COMPATIBILITY_VERSION = 9.2.0;
DYLIB_CURRENT_VERSION = 9.2.0;
DYLIB_INSTALL_NAME_BASE = "@rpath";
GCC_C_LANGUAGE_STANDARD = gnu11;
INFOPLIST_FILE = "$(PROJECT_DIR)/LaunchDarkly/LaunchDarkly/Support/Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
MARKETING_VERSION = 9.1.1;
MARKETING_VERSION = 9.2.0;
PRODUCT_BUNDLE_IDENTIFIER = "com.launchdarkly.Darkly-watchOS";
PRODUCT_NAME = LaunchDarkly_watchOS;
SDKROOT = watchos;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import Foundation

struct ReportingConsts {
static let sdkVersion = "9.1.1"
static let sdkVersion = "9.2.0"
static let sdkName = "ios-client-sdk"
}
2 changes: 1 addition & 1 deletion LaunchDarkly/LaunchDarkly/Util.swift
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ class Util {
class func sha256base64(_ str: String) -> String {
sha256(str).base64EncodedString()
}

class func sha256(_ str: String) -> Data {
let data = Data(str.utf8)
var digest = [UInt8](repeating: 0, count: Int(CC_SHA256_DIGEST_LENGTH))
Expand Down
Loading

0 comments on commit 5f8aae1

Please sign in to comment.