Skip to content

Commit

Permalink
Updates for Xcode 15 and macOS 14 (#1544)
Browse files Browse the repository at this point in the history
* Fix build issue in Xcode 15 beta

* Remove RxSwiftExt and fix reference to SkyLight

* Generalize framework search paths
  • Loading branch information
ianyh authored Aug 29, 2023
1 parent d051ffb commit b2149ff
Show file tree
Hide file tree
Showing 7 changed files with 37 additions and 44 deletions.
54 changes: 26 additions & 28 deletions Amethyst.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,6 @@
40AE15E32A92E9AF00E14536 /* SwiftyBeaver in Frameworks */ = {isa = PBXBuildFile; productRef = 40AE15E22A92E9AF00E14536 /* SwiftyBeaver */; };
40AE15E62A92EA7500E14536 /* RxCocoa in Frameworks */ = {isa = PBXBuildFile; productRef = 40AE15E52A92EA7500E14536 /* RxCocoa */; };
40AE15E82A92EA7500E14536 /* RxSwift in Frameworks */ = {isa = PBXBuildFile; productRef = 40AE15E72A92EA7500E14536 /* RxSwift */; };
40AE15EB2A92EAC400E14536 /* RxSwiftExt in Frameworks */ = {isa = PBXBuildFile; productRef = 40AE15EA2A92EAC400E14536 /* RxSwiftExt */; };
40AE15EE2A92EBD800E14536 /* Quick in Frameworks */ = {isa = PBXBuildFile; productRef = 40AE15ED2A92EBD800E14536 /* Quick */; };
40AE15F12A92EC5300E14536 /* Nimble in Frameworks */ = {isa = PBXBuildFile; productRef = 40AE15F02A92EC5300E14536 /* Nimble */; };
40AE15F52A92EE8000E14536 /* MASShortcut in Frameworks */ = {isa = PBXBuildFile; productRef = 40AE15F42A92EE8000E14536 /* MASShortcut */; };
Expand Down Expand Up @@ -273,7 +272,6 @@
400D48F72A92AF9B0082750F /* LoginServiceKit in Frameworks */,
402DB6E21742E41A00D1C936 /* Cocoa.framework in Frameworks */,
400D48F42A92AF1E0082750F /* Cartography in Frameworks */,
40AE15EB2A92EAC400E14536 /* RxSwiftExt in Frameworks */,
40C3F91E1BD1B22E00F58660 /* Security.framework in Frameworks */,
40CF37C029B440A100CDB07A /* ArgumentParser in Frameworks */,
400D48FA2A92B0130082750F /* Sparkle in Frameworks */,
Expand Down Expand Up @@ -619,7 +617,6 @@
40AE15E22A92E9AF00E14536 /* SwiftyBeaver */,
40AE15E52A92EA7500E14536 /* RxCocoa */,
40AE15E72A92EA7500E14536 /* RxSwift */,
40AE15EA2A92EAC400E14536 /* RxSwiftExt */,
40AE15F42A92EE8000E14536 /* MASShortcut */,
403D9EE62A94494700F278F2 /* Silica */,
);
Expand Down Expand Up @@ -655,10 +652,11 @@
402DB6D61742E41A00D1C936 /* Project object */ = {
isa = PBXProject;
attributes = {
BuildIndependentTargetsInParallel = YES;
CLASSPREFIX = AM;
LastSwiftUpdateCheck = 0730;
LastTestingUpgradeCheck = 0700;
LastUpgradeCheck = 1220;
LastUpgradeCheck = 1500;
ORGANIZATIONNAME = "Ian Ynda-Hummel";
TargetAttributes = {
402DB6DD1742E41A00D1C936 = {
Expand Down Expand Up @@ -691,7 +689,6 @@
400D48FE2A92B0A00082750F /* XCRemoteSwiftPackageReference "Yams" */,
40AE15E12A92E9AF00E14536 /* XCRemoteSwiftPackageReference "SwiftyBeaver" */,
40AE15E42A92EA7400E14536 /* XCRemoteSwiftPackageReference "RxSwift" */,
40AE15E92A92EAC400E14536 /* XCRemoteSwiftPackageReference "RxSwiftExt" */,
40AE15EC2A92EBD800E14536 /* XCRemoteSwiftPackageReference "Quick" */,
40AE15EF2A92EC5300E14536 /* XCRemoteSwiftPackageReference "Nimble" */,
40AE15F32A92EE8000E14536 /* XCRemoteSwiftPackageReference "MASShortcut" */,
Expand Down Expand Up @@ -918,10 +915,13 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEFINES_MODULE = YES;
ENABLE_MODULE_VERIFIER = YES;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_NO_COMMON_BLOCKS = YES;
Expand All @@ -938,6 +938,8 @@
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.15;
MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++14";
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
SWIFT_VERSION = 5.0;
Expand Down Expand Up @@ -971,9 +973,12 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = YES;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEFINES_MODULE = YES;
ENABLE_MODULE_VERIFIER = YES;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_NO_COMMON_BLOCKS = YES;
GCC_PREPROCESSOR_DEFINITIONS = "RELEASE=1";
Expand All @@ -984,6 +989,8 @@
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.15;
MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++14";
SDKROOT = macosx;
SWIFT_COMPILATION_MODE = wholemodule;
SWIFT_OPTIMIZATION_LEVEL = "-O";
Expand All @@ -1001,13 +1008,16 @@
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 108;
DEAD_CODE_STRIPPING = YES;
DEFINES_MODULE = YES;
DEVELOPMENT_TEAM = "";
ENABLE_HARDENED_RUNTIME = YES;
ENABLE_MODULE_VERIFIER = YES;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(USER_LIBRARY_DIR)/Developer/Xcode/DerivedData/Amethyst-hayuzxrdmhaqmverzffhmryaexfi/Build/Products/Debug",
"$(PROJECT_DIR)",
"$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks",
);
GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_PREFIX_HEADER = "";
Expand All @@ -1018,16 +1028,14 @@
);
MACOSX_DEPLOYMENT_TARGET = 10.15;
MARKETING_VERSION = 0.20.0;
MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++14";
OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"DEBUG\"";
PRODUCT_BUNDLE_IDENTIFIER = "com.amethyst.${PRODUCT_NAME:rfc1034identifier}";
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
SWIFT_OBJC_BRIDGING_HEADER = "Amethyst/Amethyst-Bridging-Header.h";
SWIFT_OBJC_BRIDGING_HEADER = "";
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SYSTEM_FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks",
);
WRAPPER_EXTENSION = app;
};
name = Debug;
Expand All @@ -1042,13 +1050,16 @@
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 108;
DEAD_CODE_STRIPPING = YES;
DEFINES_MODULE = YES;
DEVELOPMENT_TEAM = 82P2XLB4UH;
ENABLE_HARDENED_RUNTIME = YES;
ENABLE_MODULE_VERIFIER = YES;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(USER_LIBRARY_DIR)/Developer/Xcode/DerivedData/Amethyst-hayuzxrdmhaqmverzffhmryaexfi/Build/Products/Debug",
"$(PROJECT_DIR)",
"$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks",
);
GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_PREFIX_HEADER = "";
Expand All @@ -1059,16 +1070,14 @@
);
MACOSX_DEPLOYMENT_TARGET = 10.15;
MARKETING_VERSION = 0.20.0;
MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++14";
ONLY_ACTIVE_ARCH = NO;
OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"RELEASE\"";
PRODUCT_BUNDLE_IDENTIFIER = "com.amethyst.${PRODUCT_NAME:rfc1034identifier}";
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
SWIFT_OBJC_BRIDGING_HEADER = "Amethyst/Amethyst-Bridging-Header.h";
SYSTEM_FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks",
);
SWIFT_OBJC_BRIDGING_HEADER = "";
WRAPPER_EXTENSION = app;
};
name = Release;
Expand All @@ -1084,6 +1093,7 @@
CLANG_WARN_UNREACHABLE_CODE = YES;
CODE_SIGN_IDENTITY = "-";
COMBINE_HIDPI_IMAGES = YES;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = "";
ENABLE_STRICT_OBJC_MSGSEND = YES;
Expand Down Expand Up @@ -1116,6 +1126,7 @@
CODE_SIGN_IDENTITY = "-";
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = NO;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = "";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
Expand Down Expand Up @@ -1232,14 +1243,6 @@
minimumVersion = 6.0.0;
};
};
40AE15E92A92EAC400E14536 /* XCRemoteSwiftPackageReference "RxSwiftExt" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/RxSwiftCommunity/RxSwiftExt";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 6.0.0;
};
};
40AE15EC2A92EBD800E14536 /* XCRemoteSwiftPackageReference "Quick" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/Quick/Quick";
Expand Down Expand Up @@ -1320,11 +1323,6 @@
package = 40AE15E42A92EA7400E14536 /* XCRemoteSwiftPackageReference "RxSwift" */;
productName = RxSwift;
};
40AE15EA2A92EAC400E14536 /* RxSwiftExt */ = {
isa = XCSwiftPackageProductDependency;
package = 40AE15E92A92EAC400E14536 /* XCRemoteSwiftPackageReference "RxSwiftExt" */;
productName = RxSwiftExt;
};
40AE15ED2A92EBD800E14536 /* Quick */ = {
isa = XCSwiftPackageProductDependency;
package = 40AE15EC2A92EBD800E14536 /* XCRemoteSwiftPackageReference "Quick" */;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1220"
LastUpgradeVersion = "1500"
version = "2.0">
<BuildAction
parallelizeBuildables = "YES"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1220"
LastUpgradeVersion = "1500"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
Expand Down
9 changes: 0 additions & 9 deletions Amethyst.xcworkspace/xcshareddata/swiftpm/Package.resolved
Original file line number Diff line number Diff line change
Expand Up @@ -72,15 +72,6 @@
"version" : "6.6.0"
}
},
{
"identity" : "rxswiftext",
"kind" : "remoteSourceControl",
"location" : "https://github.com/RxSwiftCommunity/RxSwiftExt",
"state" : {
"revision" : "a42af9caeab63f2dbde318f1f3dc424f05871a37",
"version" : "6.1.0"
}
},
{
"identity" : "silica",
"kind" : "remoteSourceControl",
Expand Down
1 change: 0 additions & 1 deletion Amethyst/Managers/WindowManager.swift
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ import AppKit
import Carbon
import Foundation
import RxSwift
import RxSwiftExt
import Silica
import SwiftyJSON

Expand Down
10 changes: 9 additions & 1 deletion Amethyst/Model/ApplicationObservation.swift
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,15 @@ struct ApplicationObservation<Delegate: ApplicationObservationDelegate> {
An observable that attemps to subscribe to events on the application. The observable completes when subscriptions have been put in place, and errors otherwise.
*/
func addObservers() -> Observable<Void> {
return _addObservers().retry(.exponentialDelayed(maxCount: 4, initial: 0.1, multiplier: 2))
return _addObservers().retry { errorTrigger in
errorTrigger.enumerated().flatMap { count, error -> Observable<Int> in
guard count < 4 else {
return .error(error)
}

return .timer(.milliseconds((count ^ 2 * 100)), scheduler: MainScheduler.instance)
}
}
}

private func _addObservers() -> Observable<Void> {
Expand Down
3 changes: 0 additions & 3 deletions AmethystTests/AmethystTests-Bridging-Header.h
Original file line number Diff line number Diff line change
@@ -1,4 +1 @@
//
// Use this file to import your target's headers that you would like to expose to Swift.
//

0 comments on commit b2149ff

Please sign in to comment.