From 62e59effd0f2dca4f465a6e8e30020e68fe5c95c Mon Sep 17 00:00:00 2001 From: Troy Stump Date: Mon, 29 Apr 2024 12:52:09 -0700 Subject: [PATCH] Update project and installation methods (CocoaPods, and Swift Package Manager) to support building and running with Xcode 15 --- CHANGELOG.md | 9 + Cartfile | 2 +- .../PINOperation.xcodeproj/project.pbxproj | 155 +++++++--- .../xcschemes/PINOperation-macOS.xcscheme | 24 +- .../xcschemes/PINOperation-tvOS.xcscheme | 24 +- .../xcschemes/PINOperation-watchOS.xcscheme | 2 +- .../xcschemes/PINOperation.xcscheme | 24 +- .../PINOperation/Source/PINOperation.h | 8 +- .../PINOperation/Source/PINOperationGroup.h | 4 +- .../PINOperation/Source/PINOperationQueue.h | 4 +- .../Tests/PINOperationQueueTests.m | 1 + .../project.pbxproj | 9 +- .../PINCache-SPM-Integration.xcscheme | 2 +- Makefile | 11 +- PINCache.podspec | 15 +- PINCache.xcodeproj/project.pbxproj | 273 +++++++++++------- .../xcschemes/PINCache-macOS.xcscheme | 24 +- .../xcschemes/PINCache-tvOS.xcscheme | 24 +- .../xcschemes/PINCache-watchOS.xcscheme | 2 +- .../xcshareddata/xcschemes/PINCache.xcscheme | 24 +- Package.swift | 17 +- README.md | 2 +- Source/PINCache.h | 8 +- Source/PINCache.m | 2 +- Source/PINCaching.h | 1 - Source/PINDiskCache.h | 6 +- Source/PINDiskCache.m | 65 +---- Source/PINMemoryCache.h | 6 +- .../PrivacyInfo.xcprivacy | 0 Source/include/PINCache/PINCache.h | 1 + Source/include/PINCache/PINCacheMacros.h | 1 + .../PINCache/PINCacheObjectSubscripting.h | 1 + Source/include/PINCache/PINCaching.h | 1 + Source/include/PINCache/PINDiskCache.h | 1 + Source/include/PINCache/PINMemoryCache.h | 1 + Tests/PINDiskCache+PINCacheTests.h | 2 +- 36 files changed, 431 insertions(+), 325 deletions(-) rename PrivacyInfo.xcprivacy => Source/PrivacyInfo.xcprivacy (100%) create mode 120000 Source/include/PINCache/PINCache.h create mode 120000 Source/include/PINCache/PINCacheMacros.h create mode 120000 Source/include/PINCache/PINCacheObjectSubscripting.h create mode 120000 Source/include/PINCache/PINCaching.h create mode 120000 Source/include/PINCache/PINDiskCache.h create mode 120000 Source/include/PINCache/PINMemoryCache.h diff --git a/CHANGELOG.md b/CHANGELOG.md index 4ad6ac04..b96fc98a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## [3.0.4](https://github.com/Pinterest/PINCache/tree/3.0.4) (TBD) + +[Full Changelog](https://github.com/Pinterest/PINCache/compare/3.0.3...3.0.4) + + +- Update project to build and run using Xcode 15 +- Update CocoaPods Podspec to include Privacy Manifest file +- Bump minimum deployment targets to iOS 12, tvOS 12, watchOS 4, and macOS 10.13 + ## [3.0.3](https://github.com/Pinterest/PINCache/tree/3.0.3) (2020-10-22) [Full Changelog](https://github.com/Pinterest/PINCache/compare/3.0.2...3.0.3) diff --git a/Cartfile b/Cartfile index 9265ddf2..011b0c5b 100644 --- a/Cartfile +++ b/Cartfile @@ -1 +1 @@ -github "pinterest/PINOperation" ~> 1.2.1 \ No newline at end of file +github "pinterest/PINOperation" ~> 1.2.2 \ No newline at end of file diff --git a/Carthage/Checkouts/PINOperation/PINOperation.xcodeproj/project.pbxproj b/Carthage/Checkouts/PINOperation/PINOperation.xcodeproj/project.pbxproj index ddcb88c2..7913a892 100644 --- a/Carthage/Checkouts/PINOperation/PINOperation.xcodeproj/project.pbxproj +++ b/Carthage/Checkouts/PINOperation/PINOperation.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 46; + objectVersion = 60; objects = { /* Begin PBXBuildFile section */ @@ -384,7 +384,8 @@ CC0105241E27110D00890935 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1010; + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1520; ORGANIZATIONNAME = Pinterest; TargetAttributes = { 3201178B24444859004FD783 = { @@ -412,7 +413,7 @@ }; }; buildConfigurationList = CC0105271E27110D00890935 /* Build configuration list for PBXProject "PINOperation" */; - compatibilityVersion = "Xcode 3.2"; + compatibilityVersion = "Xcode 15.0"; developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( @@ -580,15 +581,23 @@ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CODE_SIGN_IDENTITY = ""; CODE_SIGN_STYLE = Automatic; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu11 gnu++14"; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = "com.pinterest.PINOperation-watchOS"; @@ -596,7 +605,6 @@ SDKROOT = watchos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 2.0; }; name = Debug; }; @@ -608,22 +616,29 @@ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CODE_SIGN_IDENTITY = ""; CODE_SIGN_STYLE = Automatic; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu11 gnu++14"; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = "com.pinterest.PINOperation-watchOS"; PRODUCT_NAME = PINOperation; SDKROOT = watchos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 2.0; }; name = Release; }; @@ -651,6 +666,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -661,6 +677,7 @@ DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -675,14 +692,16 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.8; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MACOSX_DEPLOYMENT_TARGET = 10.13; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; + TVOS_DEPLOYMENT_TARGET = 12.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; + WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; @@ -710,6 +729,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -720,6 +740,7 @@ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -728,14 +749,16 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.8; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MACOSX_DEPLOYMENT_TARGET = 10.13; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; + TVOS_DEPLOYMENT_TARGET = 12.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; + WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; @@ -743,13 +766,21 @@ isa = XCBuildConfiguration; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; + CODE_SIGN_IDENTITY = ""; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINOperation; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -760,13 +791,21 @@ isa = XCBuildConfiguration; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; + CODE_SIGN_IDENTITY = ""; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINOperation; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -777,20 +816,26 @@ isa = XCBuildConfiguration; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + CODE_SIGN_IDENTITY = ""; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINOperation; PRODUCT_NAME = PINOperation; SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; }; name = Debug; }; @@ -798,20 +843,26 @@ isa = XCBuildConfiguration; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + CODE_SIGN_IDENTITY = ""; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINOperation; PRODUCT_NAME = PINOperation; SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; }; name = Release; }; @@ -820,15 +871,22 @@ buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; COMBINE_HIDPI_IMAGES = YES; + DEAD_CODE_STRIPPING = YES; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; FRAMEWORK_VERSION = A; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.8; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINOperation; PRODUCT_NAME = PINOperation; SDKROOT = macosx; @@ -841,15 +899,22 @@ buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; COMBINE_HIDPI_IMAGES = YES; + DEAD_CODE_STRIPPING = YES; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; FRAMEWORK_VERSION = A; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.8; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINOperation; PRODUCT_NAME = PINOperation; SDKROOT = macosx; @@ -861,7 +926,11 @@ isa = XCBuildConfiguration; buildSettings = { INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINOperationTests; PRODUCT_NAME = "$(TARGET_NAME)"; }; @@ -871,7 +940,11 @@ isa = XCBuildConfiguration; buildSettings = { INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINOperationTests; PRODUCT_NAME = "$(TARGET_NAME)"; }; @@ -881,11 +954,15 @@ isa = XCBuildConfiguration; buildSettings = { INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = "com.pinterest.PINOperation-tvOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = appletvos; - TVOS_DEPLOYMENT_TARGET = 9.2; + TARGETED_DEVICE_FAMILY = 3; }; name = Debug; }; @@ -893,11 +970,15 @@ isa = XCBuildConfiguration; buildSettings = { INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = "com.pinterest.PINOperation-tvOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = appletvos; - TVOS_DEPLOYMENT_TARGET = 9.2; + TARGETED_DEVICE_FAMILY = 3; }; name = Release; }; @@ -906,9 +987,13 @@ buildSettings = { CODE_SIGN_IDENTITY = "-"; COMBINE_HIDPI_IMAGES = YES; + DEAD_CODE_STRIPPING = YES; INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.11; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/../Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = "com.pinterest.PINOperation-macOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; @@ -920,9 +1005,13 @@ buildSettings = { CODE_SIGN_IDENTITY = "-"; COMBINE_HIDPI_IMAGES = YES; + DEAD_CODE_STRIPPING = YES; INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.11; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/../Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = "com.pinterest.PINOperation-macOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; diff --git a/Carthage/Checkouts/PINOperation/PINOperation.xcodeproj/xcshareddata/xcschemes/PINOperation-macOS.xcscheme b/Carthage/Checkouts/PINOperation/PINOperation.xcodeproj/xcshareddata/xcschemes/PINOperation-macOS.xcscheme index ebc5ab8b..020b8ba3 100644 --- a/Carthage/Checkouts/PINOperation/PINOperation.xcodeproj/xcshareddata/xcschemes/PINOperation-macOS.xcscheme +++ b/Carthage/Checkouts/PINOperation/PINOperation.xcodeproj/xcshareddata/xcschemes/PINOperation-macOS.xcscheme @@ -1,6 +1,6 @@ + + + + @@ -39,17 +48,6 @@ - - - - - - - - + + + + @@ -39,17 +48,6 @@ - - - - - - - - + + + + @@ -39,17 +48,6 @@ - - - - - - - - +#import +#import +#import diff --git a/Carthage/Checkouts/PINOperation/Source/PINOperationGroup.h b/Carthage/Checkouts/PINOperation/Source/PINOperationGroup.h index 0ae7dbac..d93a0097 100644 --- a/Carthage/Checkouts/PINOperation/Source/PINOperationGroup.h +++ b/Carthage/Checkouts/PINOperation/Source/PINOperationGroup.h @@ -7,8 +7,8 @@ // #import -#import "PINOperationTypes.h" -#import "PINOperationMacros.h" +#import +#import @class PINOperationQueue; diff --git a/Carthage/Checkouts/PINOperation/Source/PINOperationQueue.h b/Carthage/Checkouts/PINOperation/Source/PINOperationQueue.h index 07eacbeb..e9246ca1 100644 --- a/Carthage/Checkouts/PINOperation/Source/PINOperationQueue.h +++ b/Carthage/Checkouts/PINOperation/Source/PINOperationQueue.h @@ -7,8 +7,8 @@ // #import -#import "PINOperationTypes.h" -#import "PINOperationMacros.h" +#import +#import NS_ASSUME_NONNULL_BEGIN diff --git a/Carthage/Checkouts/PINOperation/Tests/PINOperationQueueTests.m b/Carthage/Checkouts/PINOperation/Tests/PINOperationQueueTests.m index 844968f2..02b24255 100644 --- a/Carthage/Checkouts/PINOperation/Tests/PINOperationQueueTests.m +++ b/Carthage/Checkouts/PINOperation/Tests/PINOperationQueueTests.m @@ -7,6 +7,7 @@ // @import PINOperation; + #import #import diff --git a/IntegrationTests/PINCache-SPM-Integration/PINCache-SPM-Integration.xcodeproj/project.pbxproj b/IntegrationTests/PINCache-SPM-Integration/PINCache-SPM-Integration.xcodeproj/project.pbxproj index 778efd67..962314b7 100644 --- a/IntegrationTests/PINCache-SPM-Integration/PINCache-SPM-Integration.xcodeproj/project.pbxproj +++ b/IntegrationTests/PINCache-SPM-Integration/PINCache-SPM-Integration.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 52; + objectVersion = 60; objects = { /* Begin PBXBuildFile section */ @@ -110,8 +110,9 @@ E03DEAB625671BA900ACCAFC /* Project object */ = { isa = PBXProject; attributes = { + BuildIndependentTargetsInParallel = YES; LastSwiftUpdateCheck = 1210; - LastUpgradeCheck = 1210; + LastUpgradeCheck = 1520; TargetAttributes = { E03DEABD25671BA900ACCAFC = { CreatedOnToolsVersion = 12.1; @@ -119,7 +120,7 @@ }; }; buildConfigurationList = E03DEAB925671BA900ACCAFC /* Build configuration list for PBXProject "PINCache-SPM-Integration" */; - compatibilityVersion = "Xcode 9.3"; + compatibilityVersion = "Xcode 15.0"; developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( @@ -200,6 +201,7 @@ DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -261,6 +263,7 @@ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; diff --git a/IntegrationTests/PINCache-SPM-Integration/PINCache-SPM-Integration.xcodeproj/xcshareddata/xcschemes/PINCache-SPM-Integration.xcscheme b/IntegrationTests/PINCache-SPM-Integration/PINCache-SPM-Integration.xcodeproj/xcshareddata/xcschemes/PINCache-SPM-Integration.xcscheme index b808f14b..24ba2e3d 100644 --- a/IntegrationTests/PINCache-SPM-Integration/PINCache-SPM-Integration.xcodeproj/xcshareddata/xcschemes/PINCache-SPM-Integration.xcscheme +++ b/IntegrationTests/PINCache-SPM-Integration/PINCache-SPM-Integration.xcodeproj/xcshareddata/xcschemes/PINCache-SPM-Integration.xcscheme @@ -1,6 +1,6 @@ 'garrett@pinterest.com', 'Justin Ouellette' => 'jstn@tumblr.com' } @@ -10,10 +10,12 @@ Pod::Spec.new do |s| s.frameworks = 'Foundation' s.ios.weak_frameworks = 'UIKit' s.osx.weak_frameworks = 'AppKit' - s.ios.deployment_target = '8.0' - s.osx.deployment_target = '10.8' - s.tvos.deployment_target = '9.0' - s.watchos.deployment_target = '2.0' + s.cocoapods_version = '>= 1.13.0' + s.ios.deployment_target = '12.0' + s.osx.deployment_target = '10.13' + s.tvos.deployment_target = '12.0' + s.visionos.deployment_target = '1.0' + s.watchos.deployment_target = '4.0' pch_PIN = <<-EOS #ifndef TARGET_OS_WATCH #define TARGET_OS_WATCH 0 @@ -22,11 +24,12 @@ EOS s.prefix_header_contents = pch_PIN s.subspec 'Core' do |sp| sp.source_files = 'Source/*.{h,m}' - sp.dependency 'PINOperation', '~> 1.2.1' + sp.dependency 'PINOperation', '~> 1.2.2' end s.subspec 'Arc-exception-safe' do |sp| sp.dependency 'PINCache/Core' sp.source_files = 'Source/PINDiskCache.m' sp.compiler_flags = '-fobjc-arc-exceptions' end + s.resource_bundles = { 'PINCache' => ['Source/PrivacyInfo.xcprivacy'] } end diff --git a/PINCache.xcodeproj/project.pbxproj b/PINCache.xcodeproj/project.pbxproj index 5b927448..98bcd4ed 100644 --- a/PINCache.xcodeproj/project.pbxproj +++ b/PINCache.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 46; + objectVersion = 60; objects = { /* Begin PBXBuildFile section */ @@ -16,19 +16,31 @@ 320117CB24444E3D004FD783 /* PINMemoryCache.h in Headers */ = {isa = PBXBuildFile; fileRef = CC01060A1E271A9000890935 /* PINMemoryCache.h */; settings = {ATTRIBUTES = (Public, ); }; }; 320117CC24444E3D004FD783 /* PINMemoryCache.m in Sources */ = {isa = PBXBuildFile; fileRef = CC01060B1E271A9000890935 /* PINMemoryCache.m */; }; 320117CD24444E3D004FD783 /* PINCacheMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 68A0FBFF1E4D3282000B552D /* PINCacheMacros.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 68133AE32BE01D15007627EC /* PINDiskCache+PINCacheTests.m in Sources */ = {isa = PBXBuildFile; fileRef = C38F01A920A32E0200F47F0E /* PINDiskCache+PINCacheTests.m */; }; + 68133AE42BE01D16007627EC /* PINDiskCache+PINCacheTests.m in Sources */ = {isa = PBXBuildFile; fileRef = C38F01A920A32E0200F47F0E /* PINDiskCache+PINCacheTests.m */; }; + 68133AE52BE020DA007627EC /* PINDiskCache+PINCacheTests.m in Sources */ = {isa = PBXBuildFile; fileRef = C38F01A920A32E0200F47F0E /* PINDiskCache+PINCacheTests.m */; }; + 68133AE72BE02E98007627EC /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 68133AE62BE02E97007627EC /* PrivacyInfo.xcprivacy */; }; + 68133AE82BE02E98007627EC /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 68133AE62BE02E97007627EC /* PrivacyInfo.xcprivacy */; }; + 68133AE92BE02E98007627EC /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 68133AE62BE02E97007627EC /* PrivacyInfo.xcprivacy */; }; + 68133AEA2BE02E98007627EC /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 68133AE62BE02E97007627EC /* PrivacyInfo.xcprivacy */; }; 6818C1491E55020400875DB7 /* PINCache.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CC0105CE1E271A4900890935 /* PINCache.framework */; }; 687BB0AA1E52706B005D70C6 /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = CC0106CA1E28248800890935 /* Default-568h@2x.png */; }; 68A0FC001E4D32C4000B552D /* PINCacheMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 68A0FBFF1E4D3282000B552D /* PINCacheMacros.h */; settings = {ATTRIBUTES = (Public, ); }; }; 68A0FC011E4D32C6000B552D /* PINCacheMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 68A0FBFF1E4D3282000B552D /* PINCacheMacros.h */; settings = {ATTRIBUTES = (Public, ); }; }; 68A0FC021E4D32C7000B552D /* PINCacheMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 68A0FBFF1E4D3282000B552D /* PINCacheMacros.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 68CEDBA32BE17B580045CBE7 /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 68CEDBA22BE17B580045CBE7 /* PINOperation.framework */; }; + 68CEDBA72BE17B750045CBE7 /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 68CEDBA62BE17B750045CBE7 /* PINOperation.framework */; }; + 68CEDBAA2BE17B8F0045CBE7 /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 68CEDBA92BE17B8F0045CBE7 /* PINOperation.framework */; }; + 68CEDBAE2BE17BB30045CBE7 /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 68CEDBAD2BE17BB30045CBE7 /* PINOperation.framework */; }; + 68CEDBB12BE17BC70045CBE7 /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 68CEDBB02BE17BC70045CBE7 /* PINOperation.framework */; }; + 68CEDBB52BE17BD50045CBE7 /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 68CEDBB42BE17BD50045CBE7 /* PINOperation.framework */; }; + 68CEDBB82BE17BE40045CBE7 /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 68CEDBB72BE17BE40045CBE7 /* PINOperation.framework */; }; 6928EED31E4160EE00B5D975 /* PINCaching.h in Headers */ = {isa = PBXBuildFile; fileRef = 6928EED21E4160EE00B5D975 /* PINCaching.h */; settings = {ATTRIBUTES = (Public, ); }; }; 6928EED41E4160FE00B5D975 /* PINCaching.h in Headers */ = {isa = PBXBuildFile; fileRef = 6928EED21E4160EE00B5D975 /* PINCaching.h */; settings = {ATTRIBUTES = (Public, ); }; }; 6928EED51E41610700B5D975 /* PINCaching.h in Headers */ = {isa = PBXBuildFile; fileRef = 6928EED21E4160EE00B5D975 /* PINCaching.h */; settings = {ATTRIBUTES = (Public, ); }; }; C30EE1F520373D1900D78CB9 /* NSDate+PINCacheTests.m in Sources */ = {isa = PBXBuildFile; fileRef = C30EE1EA203717DE00D78CB9 /* NSDate+PINCacheTests.m */; }; C30EE1F620373D1A00D78CB9 /* NSDate+PINCacheTests.m in Sources */ = {isa = PBXBuildFile; fileRef = C30EE1EA203717DE00D78CB9 /* NSDate+PINCacheTests.m */; }; C30EE1F720373D1B00D78CB9 /* NSDate+PINCacheTests.m in Sources */ = {isa = PBXBuildFile; fileRef = C30EE1EA203717DE00D78CB9 /* NSDate+PINCacheTests.m */; }; - C38F01AA20A32E0200F47F0E /* PINDiskCache+PINCacheTests.h in Headers */ = {isa = PBXBuildFile; fileRef = C38F01A820A32E0200F47F0E /* PINDiskCache+PINCacheTests.h */; }; - C38F01AB20A32E0200F47F0E /* PINDiskCache+PINCacheTests.m in Sources */ = {isa = PBXBuildFile; fileRef = C38F01A920A32E0200F47F0E /* PINDiskCache+PINCacheTests.m */; }; CC0105DF1E271A5C00890935 /* PINCache.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CC0105B11E271A1600890935 /* PINCache.framework */; }; CC0105EE1E271A6400890935 /* PINCache.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CC0105C11E271A4000890935 /* PINCache.framework */; }; CC01060E1E271A9500890935 /* PINCache.m in Sources */ = {isa = PBXBuildFile; fileRef = CC0106061E271A9000890935 /* PINCache.m */; }; @@ -57,13 +69,6 @@ CC0106C81E28226A00890935 /* PINCacheTests.m in Sources */ = {isa = PBXBuildFile; fileRef = CC01060D1E271A9000890935 /* PINCacheTests.m */; }; CC0106CD1E28249C00890935 /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = CC0106CA1E28248800890935 /* Default-568h@2x.png */; }; CC0106CE1E28249D00890935 /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = CC0106CA1E28248800890935 /* Default-568h@2x.png */; }; - DD275346250AF8BC003A77F9 /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DD275345250AF8BC003A77F9 /* PINOperation.framework */; }; - DD275348250AF8C9003A77F9 /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DD275347250AF8C9003A77F9 /* PINOperation.framework */; }; - DD27534A250AF8D0003A77F9 /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DD275349250AF8D0003A77F9 /* PINOperation.framework */; }; - DDF93F55252D585200C6A4DC /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DDF93F54252D585200C6A4DC /* PINOperation.framework */; }; - DDF93F59252D585C00C6A4DC /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DDF93F58252D585C00C6A4DC /* PINOperation.framework */; }; - DDF93F5D252D586100C6A4DC /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DDF93F5C252D586100C6A4DC /* PINOperation.framework */; }; - DDF93F61252D587100C6A4DC /* PINOperation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DDF93F60252D587100C6A4DC /* PINOperation.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -90,39 +95,17 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 687BB55C1E52818B005D70C6 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 687BB55E1E52819D005D70C6 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 687BB5601E52881A005D70C6 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 320117A124444DF7004FD783 /* PINCache.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = PINCache.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 68133AE62BE02E97007627EC /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = ""; }; 68A0FBFF1E4D3282000B552D /* PINCacheMacros.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PINCacheMacros.h; sourceTree = ""; }; + 68CEDBA22BE17B580045CBE7 /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 68CEDBA62BE17B750045CBE7 /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 68CEDBA92BE17B8F0045CBE7 /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 68CEDBAD2BE17BB30045CBE7 /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 68CEDBB02BE17BC70045CBE7 /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 68CEDBB42BE17BD50045CBE7 /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 68CEDBB72BE17BE40045CBE7 /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 6928EED21E4160EE00B5D975 /* PINCaching.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PINCaching.h; sourceTree = ""; }; C30EE1E9203717DE00D78CB9 /* NSDate+PINCacheTests.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "NSDate+PINCacheTests.h"; sourceTree = ""; }; C30EE1EA203717DE00D78CB9 /* NSDate+PINCacheTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSDate+PINCacheTests.m"; sourceTree = ""; }; @@ -146,15 +129,6 @@ CC0106C51E281D6900890935 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; CC0106C91E28228300890935 /* PINCacheTests.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PINCacheTests.h; sourceTree = ""; }; CC0106CA1E28248800890935 /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = ""; }; - DD275345250AF8BC003A77F9 /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DD275347250AF8C9003A77F9 /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DD275349250AF8D0003A77F9 /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DDF93F50252D582E00C6A4DC /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DDF93F52252D583B00C6A4DC /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DDF93F54252D585200C6A4DC /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DDF93F58252D585C00C6A4DC /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DDF93F5C252D586100C6A4DC /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DDF93F60252D587100C6A4DC /* PINOperation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PINOperation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -162,7 +136,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - DDF93F61252D587100C6A4DC /* PINOperation.framework in Frameworks */, + 68CEDBB82BE17BE40045CBE7 /* PINOperation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -170,7 +144,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - DDF93F55252D585200C6A4DC /* PINOperation.framework in Frameworks */, + 68CEDBA32BE17B580045CBE7 /* PINOperation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -178,7 +152,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - DDF93F59252D585C00C6A4DC /* PINOperation.framework in Frameworks */, + 68CEDBAA2BE17B8F0045CBE7 /* PINOperation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -186,7 +160,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - DDF93F5D252D586100C6A4DC /* PINOperation.framework in Frameworks */, + 68CEDBB12BE17BC70045CBE7 /* PINOperation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -194,7 +168,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - DD275346250AF8BC003A77F9 /* PINOperation.framework in Frameworks */, + 68CEDBA72BE17B750045CBE7 /* PINOperation.framework in Frameworks */, CC0105DF1E271A5C00890935 /* PINCache.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -203,7 +177,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - DD275348250AF8C9003A77F9 /* PINOperation.framework in Frameworks */, + 68CEDBAE2BE17BB30045CBE7 /* PINOperation.framework in Frameworks */, CC0105EE1E271A6400890935 /* PINCache.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -212,7 +186,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - DD27534A250AF8D0003A77F9 /* PINOperation.framework in Frameworks */, + 68CEDBB52BE17BD50045CBE7 /* PINOperation.framework in Frameworks */, 6818C1491E55020400875DB7 /* PINCache.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -223,15 +197,13 @@ 6818C2861E55217D00875DB7 /* Frameworks */ = { isa = PBXGroup; children = ( - DDF93F60252D587100C6A4DC /* PINOperation.framework */, - DDF93F5C252D586100C6A4DC /* PINOperation.framework */, - DDF93F58252D585C00C6A4DC /* PINOperation.framework */, - DDF93F54252D585200C6A4DC /* PINOperation.framework */, - DDF93F52252D583B00C6A4DC /* PINOperation.framework */, - DDF93F50252D582E00C6A4DC /* PINOperation.framework */, - DD275349250AF8D0003A77F9 /* PINOperation.framework */, - DD275347250AF8C9003A77F9 /* PINOperation.framework */, - DD275345250AF8BC003A77F9 /* PINOperation.framework */, + 68CEDBB72BE17BE40045CBE7 /* PINOperation.framework */, + 68CEDBB42BE17BD50045CBE7 /* PINOperation.framework */, + 68CEDBB02BE17BC70045CBE7 /* PINOperation.framework */, + 68CEDBAD2BE17BB30045CBE7 /* PINOperation.framework */, + 68CEDBA92BE17B8F0045CBE7 /* PINOperation.framework */, + 68CEDBA62BE17B750045CBE7 /* PINOperation.framework */, + 68CEDBA22BE17B580045CBE7 /* PINOperation.framework */, ); name = Frameworks; sourceTree = ""; @@ -264,6 +236,7 @@ isa = PBXGroup; children = ( CC0106441E281B0E00890935 /* Info.plist */, + 68133AE62BE02E97007627EC /* PrivacyInfo.xcprivacy */, 6928EED21E4160EE00B5D975 /* PINCaching.h */, CC0106051E271A9000890935 /* PINCache.h */, CC0106061E271A9000890935 /* PINCache.m */, @@ -325,7 +298,6 @@ 68A0FC001E4D32C4000B552D /* PINCacheMacros.h in Headers */, CC0106181E271AAF00890935 /* PINCacheObjectSubscripting.h in Headers */, CC01061A1E271AAF00890935 /* PINMemoryCache.h in Headers */, - C38F01AA20A32E0200F47F0E /* PINDiskCache+PINCacheTests.h in Headers */, CC0106191E271AAF00890935 /* PINDiskCache.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; @@ -438,7 +410,6 @@ CC0105D61E271A5C00890935 /* Sources */, CC0105D71E271A5C00890935 /* Frameworks */, CC0105D81E271A5C00890935 /* Resources */, - 687BB5601E52881A005D70C6 /* CopyFiles */, ); buildRules = ( ); @@ -457,7 +428,6 @@ CC0105E51E271A6400890935 /* Sources */, CC0105E61E271A6400890935 /* Frameworks */, CC0105E71E271A6400890935 /* Resources */, - 687BB55C1E52818B005D70C6 /* CopyFiles */, ); buildRules = ( ); @@ -476,7 +446,6 @@ CC0105F41E271A7300890935 /* Sources */, CC0105F51E271A7300890935 /* Frameworks */, CC0105F61E271A7300890935 /* Resources */, - 687BB55E1E52819D005D70C6 /* CopyFiles */, ); buildRules = ( ); @@ -494,7 +463,8 @@ CC0105A81E271A1600890935 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0930; + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1520; ORGANIZATIONNAME = Pinterest; TargetAttributes = { 320117A024444DF7004FD783 = { @@ -522,11 +492,12 @@ }; }; buildConfigurationList = CC0105AB1E271A1600890935 /* Build configuration list for PBXProject "PINCache" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + compatibilityVersion = "Xcode 15.0"; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( - English, + en, + Base, ); mainGroup = CC0105A71E271A1600890935; productRefGroup = CC0105B21E271A1600890935 /* Products */; @@ -549,6 +520,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 68133AEA2BE02E98007627EC /* PrivacyInfo.xcprivacy in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -556,6 +528,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 68133AE72BE02E98007627EC /* PrivacyInfo.xcprivacy in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -563,6 +536,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 68133AE82BE02E98007627EC /* PrivacyInfo.xcprivacy in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -570,6 +544,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 68133AE92BE02E98007627EC /* PrivacyInfo.xcprivacy in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -616,7 +591,6 @@ files = ( CC01060E1E271A9500890935 /* PINCache.m in Sources */, CC0106101E271A9500890935 /* PINMemoryCache.m in Sources */, - C38F01AB20A32E0200F47F0E /* PINDiskCache+PINCacheTests.m in Sources */, CC01060F1E271A9500890935 /* PINDiskCache.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -646,6 +620,7 @@ buildActionMask = 2147483647; files = ( CC0106C61E28226900890935 /* PINCacheTests.m in Sources */, + 68133AE52BE020DA007627EC /* PINDiskCache+PINCacheTests.m in Sources */, C30EE1F520373D1900D78CB9 /* NSDate+PINCacheTests.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -655,6 +630,7 @@ buildActionMask = 2147483647; files = ( CC0106C71E28226A00890935 /* PINCacheTests.m in Sources */, + 68133AE32BE01D15007627EC /* PINDiskCache+PINCacheTests.m in Sources */, C30EE1F620373D1A00D78CB9 /* NSDate+PINCacheTests.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -664,6 +640,7 @@ buildActionMask = 2147483647; files = ( CC0106C81E28226A00890935 /* PINCacheTests.m in Sources */, + 68133AE42BE01D16007627EC /* PINDiskCache+PINCacheTests.m in Sources */, C30EE1F720373D1B00D78CB9 /* NSDate+PINCacheTests.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -697,16 +674,24 @@ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CODE_SIGN_IDENTITY = ""; CODE_SIGN_STYLE = Automatic; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/Carthage/Build/watchOS"; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu11 gnu++14"; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINCache; @@ -714,7 +699,6 @@ SDKROOT = watchos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 2.0; }; name = Debug; }; @@ -726,23 +710,30 @@ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_ENABLE_OBJC_WEAK = YES; CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CODE_SIGN_IDENTITY = ""; CODE_SIGN_STYLE = Automatic; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/Carthage/Build/watchOS"; GCC_C_LANGUAGE_STANDARD = gnu11; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu11 gnu++14"; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINCache; PRODUCT_NAME = PINCache; SDKROOT = watchos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 2.0; }; name = Release; }; @@ -770,6 +761,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -781,6 +773,7 @@ DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -795,14 +788,16 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.7; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MACOSX_DEPLOYMENT_TARGET = 10.13; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; + TVOS_DEPLOYMENT_TARGET = 12.0; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; + WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Debug; }; @@ -830,6 +825,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -841,6 +837,7 @@ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -849,14 +846,16 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.7; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MACOSX_DEPLOYMENT_TARGET = 10.13; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; + TVOS_DEPLOYMENT_TARGET = 12.0; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; + WATCHOS_DEPLOYMENT_TARGET = 4.0; }; name = Release; }; @@ -864,18 +863,25 @@ isa = XCBuildConfiguration; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + CODE_SIGN_IDENTITY = ""; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/iOS", ); INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINCache; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -887,18 +893,25 @@ isa = XCBuildConfiguration; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + CODE_SIGN_IDENTITY = ""; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/iOS", ); INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINCache; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -910,24 +923,30 @@ isa = XCBuildConfiguration; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + CODE_SIGN_IDENTITY = ""; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/tvOS", ); INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINCache; PRODUCT_NAME = PINCache; SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; }; name = Debug; }; @@ -935,24 +954,30 @@ isa = XCBuildConfiguration; buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + CODE_SIGN_IDENTITY = ""; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/tvOS", ); INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINCache; PRODUCT_NAME = PINCache; SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; }; name = Release; }; @@ -962,10 +987,12 @@ APPLICATION_EXTENSION_API_ONLY = YES; CODE_SIGN_IDENTITY = "-"; COMBINE_HIDPI_IMAGES = YES; + DEAD_CODE_STRIPPING = YES; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/Mac", @@ -973,8 +1000,13 @@ FRAMEWORK_VERSION = A; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.8; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINCache; PRODUCT_NAME = PINCache; SDKROOT = macosx; @@ -988,10 +1020,12 @@ APPLICATION_EXTENSION_API_ONLY = YES; CODE_SIGN_IDENTITY = "-"; COMBINE_HIDPI_IMAGES = YES; + DEAD_CODE_STRIPPING = YES; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/Mac", @@ -999,8 +1033,13 @@ FRAMEWORK_VERSION = A; INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.8; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu99 gnu++11"; PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINCache; PRODUCT_NAME = PINCache; SDKROOT = macosx; @@ -1012,7 +1051,11 @@ isa = XCBuildConfiguration; buildSettings = { INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINCacheTests; PRODUCT_NAME = "$(TARGET_NAME)"; }; @@ -1022,7 +1065,11 @@ isa = XCBuildConfiguration; buildSettings = { INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = com.pinterest.PINCacheTests; PRODUCT_NAME = "$(TARGET_NAME)"; }; @@ -1032,11 +1079,14 @@ isa = XCBuildConfiguration; buildSettings = { INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = "com.pinterest.PINCache-tvOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = appletvos; - TVOS_DEPLOYMENT_TARGET = 9.2; }; name = Debug; }; @@ -1044,11 +1094,14 @@ isa = XCBuildConfiguration; buildSettings = { INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = "com.pinterest.PINCache-tvOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = appletvos; - TVOS_DEPLOYMENT_TARGET = 9.2; }; name = Release; }; @@ -1057,13 +1110,17 @@ buildSettings = { CODE_SIGN_IDENTITY = "-"; COMBINE_HIDPI_IMAGES = YES; + DEAD_CODE_STRIPPING = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Carthage/Checkouts/PINOperation/build/Debug", ); INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.11; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/../Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = "com.pinterest.PINCache-macOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; @@ -1075,13 +1132,17 @@ buildSettings = { CODE_SIGN_IDENTITY = "-"; COMBINE_HIDPI_IMAGES = YES; + DEAD_CODE_STRIPPING = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Carthage/Checkouts/PINOperation/build/Debug", ); INFOPLIST_FILE = Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks"; - MACOSX_DEPLOYMENT_TARGET = 10.11; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/../Frameworks", + ); PRODUCT_BUNDLE_IDENTIFIER = "com.pinterest.PINCache-macOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = macosx; diff --git a/PINCache.xcodeproj/xcshareddata/xcschemes/PINCache-macOS.xcscheme b/PINCache.xcodeproj/xcshareddata/xcschemes/PINCache-macOS.xcscheme index 4dfc852e..ee6943bd 100644 --- a/PINCache.xcodeproj/xcshareddata/xcschemes/PINCache-macOS.xcscheme +++ b/PINCache.xcodeproj/xcshareddata/xcschemes/PINCache-macOS.xcscheme @@ -1,6 +1,6 @@ + + + + @@ -39,17 +48,6 @@ - - - - - - - - + + + + @@ -39,17 +48,6 @@ - - - - - - - - + + + + @@ -39,17 +48,6 @@ - - - - - - - - -#import "PINCacheMacros.h" -#import "PINCaching.h" -#import "PINDiskCache.h" -#import "PINMemoryCache.h" +#import +#import +#import +#import NS_ASSUME_NONNULL_BEGIN diff --git a/Source/PINCache.m b/Source/PINCache.m index 38cd3e28..b3ff9fb3 100644 --- a/Source/PINCache.m +++ b/Source/PINCache.m @@ -1,4 +1,4 @@ -// PINCache is a modified version of PINCache +// PINCache is a modified version of TMCache // Modifications by Garrett Moon // Copyright (c) 2015 Pinterest. All rights reserved. diff --git a/Source/PINCaching.h b/Source/PINCaching.h index 326cd456..5e44886c 100644 --- a/Source/PINCaching.h +++ b/Source/PINCaching.h @@ -6,7 +6,6 @@ // Copyright © 2017 Pinterest. All rights reserved. // -#pragma once #import diff --git a/Source/PINDiskCache.h b/Source/PINDiskCache.h index 6cfa5079..ed986035 100644 --- a/Source/PINDiskCache.h +++ b/Source/PINDiskCache.h @@ -4,9 +4,9 @@ #import -#import "PINCacheMacros.h" -#import "PINCaching.h" -#import "PINCacheObjectSubscripting.h" +#import +#import +#import NS_ASSUME_NONNULL_BEGIN diff --git a/Source/PINDiskCache.m b/Source/PINDiskCache.m index c9cf3af9..e56a91d4 100644 --- a/Source/PINDiskCache.m +++ b/Source/PINDiskCache.m @@ -51,13 +51,7 @@ typedef NS_ENUM(NSUInteger, PINDiskCacheCondition) { const char * PINDiskCacheFileSystemRepresentation(NSURL *url) { -#ifdef __MAC_10_13 // Xcode >= 9 - // -fileSystemRepresentation is available on macOS >= 10.9 - if (@available(macOS 10.9, iOS 7.0, watchOS 2.0, tvOS 9.0, *)) { - return url.fileSystemRepresentation; - } -#endif - return [url.path cStringUsingEncoding:NSUTF8StringEncoding]; + return url.fileSystemRepresentation; } @interface PINDiskCacheMetadata : NSObject @@ -350,29 +344,21 @@ - (NSString *)decodedString:(NSString *)string - (PINDiskCacheSerializerBlock)defaultSerializer { return ^NSData*(id object, NSString *key){ - if (@available(iOS 11.0, macOS 10.13, tvOS 11.0, watchOS 4.0, *)) { - NSError *error = nil; - NSData *data = [NSKeyedArchiver archivedDataWithRootObject:object requiringSecureCoding:NO error:&error]; - PINDiskCacheError(error); - return data; - } else { - return [NSKeyedArchiver archivedDataWithRootObject:object]; - } + NSError *error = nil; + NSData *data = [NSKeyedArchiver archivedDataWithRootObject:object requiringSecureCoding:NO error:&error]; + PINDiskCacheError(error); + return data; }; } - (PINDiskCacheDeserializerBlock)defaultDeserializer { return ^id(NSData * data, NSString *key){ - if (@available(iOS 11.0, macOS 10.13, tvOS 11.0, watchOS 4.0, *)) { - NSError *error = nil; - NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingFromData:data error:&error]; - NSAssert(!error, @"unarchiver init failed with error"); - unarchiver.requiresSecureCoding = NO; - return [unarchiver decodeObjectForKey:NSKeyedArchiveRootObjectKey]; - } else { - return [NSKeyedUnarchiver unarchiveObjectWithData:data]; - } + NSError *error = nil; + NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingFromData:data error:&error]; + NSAssert(!error, @"unarchiver init failed with error"); + unarchiver.requiresSecureCoding = NO; + return [unarchiver decodeObjectForKey:NSKeyedArchiveRootObjectKey]; }; } @@ -383,22 +369,8 @@ - (PINDiskCacheKeyEncoderBlock)defaultKeyEncoder return @""; } - if (@available(macOS 10.9, iOS 7.0, tvOS 9.0, watchOS 2.0, *)) { - NSString *encodedString = [decodedKey stringByAddingPercentEncodingWithAllowedCharacters:[[NSCharacterSet characterSetWithCharactersInString:@".:/%"] invertedSet]]; - return encodedString; - } else { - CFStringRef static const charsToEscape = CFSTR(".:/%"); -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - CFStringRef escapedString = CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, - (__bridge CFStringRef)decodedKey, - NULL, - charsToEscape, - kCFStringEncodingUTF8); -#pragma clang diagnostic pop - - return (__bridge_transfer NSString *)escapedString; - } + NSString *encodedString = [decodedKey stringByAddingPercentEncodingWithAllowedCharacters:[[NSCharacterSet characterSetWithCharactersInString:@".:/%"] invertedSet]]; + return encodedString; }; } @@ -409,18 +381,7 @@ - (PINDiskCacheKeyEncoderBlock)defaultKeyDecoder return @""; } - if (@available(macOS 10.9, iOS 7.0, tvOS 9.0, watchOS 2.0, *)) { - return [encodedKey stringByRemovingPercentEncoding]; - } else { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - CFStringRef unescapedString = CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault, - (__bridge CFStringRef)encodedKey, - CFSTR(""), - kCFStringEncodingUTF8); -#pragma clang diagnostic pop - return (__bridge_transfer NSString *)unescapedString; - } + return [encodedKey stringByRemovingPercentEncoding]; }; } diff --git a/Source/PINMemoryCache.h b/Source/PINMemoryCache.h index 1cf9ff88..ef413ce4 100644 --- a/Source/PINMemoryCache.h +++ b/Source/PINMemoryCache.h @@ -4,9 +4,9 @@ #import -#import "PINCacheMacros.h" -#import "PINCaching.h" -#import "PINCacheObjectSubscripting.h" +#import +#import +#import NS_ASSUME_NONNULL_BEGIN diff --git a/PrivacyInfo.xcprivacy b/Source/PrivacyInfo.xcprivacy similarity index 100% rename from PrivacyInfo.xcprivacy rename to Source/PrivacyInfo.xcprivacy diff --git a/Source/include/PINCache/PINCache.h b/Source/include/PINCache/PINCache.h new file mode 120000 index 00000000..76a60a50 --- /dev/null +++ b/Source/include/PINCache/PINCache.h @@ -0,0 +1 @@ +../../PINCache.h \ No newline at end of file diff --git a/Source/include/PINCache/PINCacheMacros.h b/Source/include/PINCache/PINCacheMacros.h new file mode 120000 index 00000000..80168b7b --- /dev/null +++ b/Source/include/PINCache/PINCacheMacros.h @@ -0,0 +1 @@ +../../PINCacheMacros.h \ No newline at end of file diff --git a/Source/include/PINCache/PINCacheObjectSubscripting.h b/Source/include/PINCache/PINCacheObjectSubscripting.h new file mode 120000 index 00000000..ceeb3108 --- /dev/null +++ b/Source/include/PINCache/PINCacheObjectSubscripting.h @@ -0,0 +1 @@ +../../PINCacheObjectSubscripting.h \ No newline at end of file diff --git a/Source/include/PINCache/PINCaching.h b/Source/include/PINCache/PINCaching.h new file mode 120000 index 00000000..7bdfe5c4 --- /dev/null +++ b/Source/include/PINCache/PINCaching.h @@ -0,0 +1 @@ +../../PINCaching.h \ No newline at end of file diff --git a/Source/include/PINCache/PINDiskCache.h b/Source/include/PINCache/PINDiskCache.h new file mode 120000 index 00000000..323ef6a2 --- /dev/null +++ b/Source/include/PINCache/PINDiskCache.h @@ -0,0 +1 @@ +../../PINDiskCache.h \ No newline at end of file diff --git a/Source/include/PINCache/PINMemoryCache.h b/Source/include/PINCache/PINMemoryCache.h new file mode 120000 index 00000000..68e77631 --- /dev/null +++ b/Source/include/PINCache/PINMemoryCache.h @@ -0,0 +1 @@ +../../PINMemoryCache.h \ No newline at end of file diff --git a/Tests/PINDiskCache+PINCacheTests.h b/Tests/PINDiskCache+PINCacheTests.h index fc778cf4..ce487335 100644 --- a/Tests/PINDiskCache+PINCacheTests.h +++ b/Tests/PINDiskCache+PINCacheTests.h @@ -1,4 +1,4 @@ -#import "PINCache.h" +#import @interface PINDiskCache (PINCacheTests)