Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitb41d364

Browse files
ci: add test, fmt, lint workflows (#13)
1 parentb338777 commitb41d364

31 files changed

+360
-264
lines changed

‎.github/workflows/ci.yml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name:ci
2+
3+
on:
4+
pull_request:
5+
paths-ignore:
6+
-"README.md"
7+
push:
8+
branches:
9+
-main
10+
paths-ignore:
11+
-"README.md"
12+
13+
14+
permissions:
15+
contents:read
16+
17+
jobs:
18+
test:
19+
name:test
20+
runs-on:${{ github.repository_owner == 'coder' && 'depot-macos-latest' || 'macos-latest'}}
21+
steps:
22+
-name:Checkout
23+
uses:actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683# v4.2.2
24+
with:
25+
fetch-depth:1
26+
-name:Switch XCode Version
27+
uses:maxim-lobanov/setup-xcode@v1
28+
with:
29+
xcode-version:'16.0.0'
30+
-run:|
31+
make test
32+
format:
33+
name:fmt
34+
runs-on:${{ github.repository_owner == 'coder' && 'depot-macos-latest' || 'macos-latest'}}
35+
steps:
36+
-name:Checkout
37+
uses:actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683# v4.2.2
38+
with:
39+
fetch-depth:1
40+
-run:|
41+
make fmt
42+
lint:
43+
name:lint
44+
runs-on:${{ github.repository_owner == 'coder' && 'depot-macos-latest' || 'macos-latest'}}
45+
steps:
46+
-name:Checkout
47+
uses:actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683# v4.2.2
48+
with:
49+
fetch-depth:1
50+
-name:Install Swiftlint
51+
run:|
52+
brew install swiftlint
53+
-run:|
54+
make lint

‎Coder Desktop/.swiftlint.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
disabled_rules:
22
-todo
33
-trailing_comma
4+
-blanket_disable_command# Used by Protobuf
5+
-opening_brace# Handled by SwiftFormat
46
type_name:
57
allowed_symbols:"_"
68
identifier_name:
79
allowed_symbols:"_"
10+
min_length:1

‎Coder Desktop/Coder Desktop.xcodeproj/project.pbxproj

Lines changed: 69 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,14 @@
99
/* Begin PBXBuildFile section */
1010
961679332CFF117300B2B6DF /* NetworkExtension.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 961679322CFF117300B2B6DF /* NetworkExtension.framework */; };
1111
9616793D2CFF117300B2B6DF /* com.coder.Coder-Desktop.VPN.systemextension in Embed System Extensions */ = {isa = PBXBuildFile; fileRef = 961679302CFF117300B2B6DF /* com.coder.Coder-Desktop.VPN.systemextension */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
12+
961679532CFF207900B2B6DF /* SwiftProtobuf in Frameworks */ = {isa = PBXBuildFile; productRef = 961679522CFF207900B2B6DF /* SwiftProtobuf */; };
13+
961679552CFF207900B2B6DF /* SwiftProtobufPluginLibrary in Frameworks */ = {isa = PBXBuildFile; productRef = 961679542CFF207900B2B6DF /* SwiftProtobufPluginLibrary */; };
14+
AA071D2C2D1041A7008D0B72 /* SwiftProtobuf in Frameworks */ = {isa = PBXBuildFile; productRef = 961679E22D03144900B2B6DF /* SwiftProtobuf */; };
15+
AA071D2D2D1041A7008D0B72 /* SwiftProtobufPluginLibrary in Frameworks */ = {isa = PBXBuildFile; productRef = 961679E42D03144C00B2B6DF /* SwiftProtobufPluginLibrary */; };
1216
AA8BC3392D0060A900E1ABAA /* ViewInspector in Frameworks */ = {isa = PBXBuildFile; productRef = AA8BC3382D0060A900E1ABAA /* ViewInspector */; };
1317
AA8BC33F2D0061F200E1ABAA /* FluidMenuBarExtra in Frameworks */ = {isa = PBXBuildFile; productRef = AA8BC33E2D0061F200E1ABAA /* FluidMenuBarExtra */; };
1418
AA8BC4CF2D00A4B700E1ABAA /* KeychainAccess in Frameworks */ = {isa = PBXBuildFile; productRef = AA8BC4CE2D00A4B700E1ABAA /* KeychainAccess */; };
1519
AAD720D02D0816B200F6304D /* Alamofire in Frameworks */ = {isa = PBXBuildFile; productRef = AAD720CF2D0816B200F6304D /* Alamofire */; };
16-
961679532CFF207900B2B6DF /* SwiftProtobuf in Frameworks */ = {isa = PBXBuildFile; productRef = 961679522CFF207900B2B6DF /* SwiftProtobuf */; };
17-
961679552CFF207900B2B6DF /* SwiftProtobufPluginLibrary in Frameworks */ = {isa = PBXBuildFile; productRef = 961679542CFF207900B2B6DF /* SwiftProtobufPluginLibrary */; };
1820
/* End PBXBuildFile section */
1921

2022
/* Begin PBXContainerItemProxy section */
@@ -86,6 +88,13 @@
8688
);
8789
target = 9616792F2CFF117300B2B6DF /* VPN */;
8890
};
91+
AA071D842D1041E9008D0B72 /* Exceptions for "Proto" folder in "Coder Desktop" target */ = {
92+
isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
93+
membershipExceptions = (
94+
vpn.proto,
95+
);
96+
target = 961678FB2CFF100D00B2B6DF /* Coder Desktop */;
97+
};
8998
/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */
9099

91100
/* Begin PBXFileSystemSynchronizedRootGroup section */
@@ -115,6 +124,7 @@
115124
961679432CFF149000B2B6DF /* Proto */ = {
116125
isa = PBXFileSystemSynchronizedRootGroup;
117126
exceptions = (
127+
AA071D842D1041E9008D0B72 /* Exceptions for "Proto" folder in "Coder Desktop" target */,
118128
961679472CFF14EA00B2B6DF /* Exceptions for "Proto" folder in "VPN" target */,
119129
);
120130
path = Proto;
@@ -159,9 +169,9 @@
159169
isa = PBXFrameworksBuildPhase;
160170
buildActionMask = 2147483647;
161171
files = (
162-
961679E52D03144C00B2B6DF /* SwiftProtobufPluginLibrary in Frameworks */,
172+
AA071D2D2D1041A7008D0B72 /* SwiftProtobufPluginLibrary in Frameworks */,
173+
AA071D2C2D1041A7008D0B72 /* SwiftProtobuf in Frameworks */,
163174
961679332CFF117300B2B6DF /* NetworkExtension.framework in Frameworks */,
164-
961679E32D03144900B2B6DF /* SwiftProtobuf in Frameworks */,
165175
);
166176
runOnlyForDeploymentPostprocessing = 0;
167177
};
@@ -345,7 +355,7 @@
345355
attributes = {
346356
BuildIndependentTargetsInParallel = 1;
347357
LastSwiftUpdateCheck = 1610;
348-
LastUpgradeCheck =1610;
358+
LastUpgradeCheck =1620;
349359
TargetAttributes = {
350360
961678FB2CFF100D00B2B6DF = {
351361
CreatedOnToolsVersion = 16.1;
@@ -490,15 +500,15 @@
490500
target = 9616792F2CFF117300B2B6DF /* VPN */;
491501
targetProxy = 9616793B2CFF117300B2B6DF /* PBXContainerItemProxy */;
492502
};
493-
AA8BC33C2D0060E700E1ABAA /* PBXTargetDependency */ = {
494-
isa = PBXTargetDependency;
495-
productRef = AA8BC33B2D0060E700E1ABAA /* SwiftLintBuildToolPlugin */;
496-
};
497503
961679DE2D030E1D00B2B6DF /* PBXTargetDependency */ = {
498504
isa = PBXTargetDependency;
499505
target = 961678FB2CFF100D00B2B6DF /* Coder Desktop */;
500506
targetProxy = 961679DD2D030E1D00B2B6DF /* PBXContainerItemProxy */;
501507
};
508+
AA8BC33C2D0060E700E1ABAA /* PBXTargetDependency */ = {
509+
isa = PBXTargetDependency;
510+
productRef = AA8BC33B2D0060E700E1ABAA /* SwiftLintBuildToolPlugin */;
511+
};
502512
/* End PBXTargetDependency section */
503513

504514
/* Begin XCBuildConfiguration section */
@@ -536,6 +546,7 @@
536546
CLANG_WARN_UNREACHABLE_CODE = YES;
537547
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
538548
COPY_PHASE_STRIP = NO;
549+
DEAD_CODE_STRIPPING = YES;
539550
DEBUG_INFORMATION_FORMAT = dwarf;
540551
ENABLE_STRICT_OBJC_MSGSEND = YES;
541552
ENABLE_TESTABILITY = YES;
@@ -562,6 +573,7 @@
562573
SDKROOT = macosx;
563574
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)";
564575
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
576+
SWIFT_VERSION = 6.0;
565577
};
566578
name = Debug;
567579
};
@@ -599,6 +611,7 @@
599611
CLANG_WARN_UNREACHABLE_CODE = YES;
600612
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
601613
COPY_PHASE_STRIP = NO;
614+
DEAD_CODE_STRIPPING = YES;
602615
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
603616
ENABLE_NS_ASSERTIONS = NO;
604617
ENABLE_STRICT_OBJC_MSGSEND = YES;
@@ -617,6 +630,7 @@
617630
MTL_FAST_MATH = YES;
618631
SDKROOT = macosx;
619632
SWIFT_COMPILATION_MODE = wholemodule;
633+
SWIFT_VERSION = 6.0;
620634
};
621635
name = Release;
622636
};
@@ -629,6 +643,7 @@
629643
CODE_SIGN_STYLE = Automatic;
630644
COMBINE_HIDPI_IMAGES = YES;
631645
CURRENT_PROJECT_VERSION = 1;
646+
DEAD_CODE_STRIPPING = YES;
632647
DEVELOPMENT_ASSET_PATHS = "\"Coder Desktop/Preview Content\"";
633648
DEVELOPMENT_TEAM = 4399GN35BJ;
634649
ENABLE_HARDENED_RUNTIME = YES;
@@ -658,6 +673,7 @@
658673
CODE_SIGN_STYLE = Automatic;
659674
COMBINE_HIDPI_IMAGES = YES;
660675
CURRENT_PROJECT_VERSION = 1;
676+
DEAD_CODE_STRIPPING = YES;
661677
DEVELOPMENT_ASSET_PATHS = "\"Coder Desktop/Preview Content\"";
662678
DEVELOPMENT_TEAM = 4399GN35BJ;
663679
ENABLE_HARDENED_RUNTIME = YES;
@@ -684,14 +700,15 @@
684700
BUNDLE_LOADER = "$(TEST_HOST)";
685701
CODE_SIGN_STYLE = Automatic;
686702
CURRENT_PROJECT_VERSION = 1;
703+
DEAD_CODE_STRIPPING = YES;
687704
DEVELOPMENT_TEAM = 4399GN35BJ;
688705
GENERATE_INFOPLIST_FILE = YES;
689706
MACOSX_DEPLOYMENT_TARGET = 14.0;
690707
MARKETING_VERSION = 1.0;
691708
PRODUCT_BUNDLE_IDENTIFIER = "com.coder.Coder-DesktopTests";
692709
PRODUCT_NAME = "$(TARGET_NAME)";
693710
SWIFT_EMIT_LOC_STRINGS = NO;
694-
SWIFT_VERSION =5.0;
711+
SWIFT_VERSION =6.0;
695712
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Coder Desktop.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Coder Desktop";
696713
};
697714
name = Debug;
@@ -702,14 +719,15 @@
702719
BUNDLE_LOADER = "$(TEST_HOST)";
703720
CODE_SIGN_STYLE = Automatic;
704721
CURRENT_PROJECT_VERSION = 1;
722+
DEAD_CODE_STRIPPING = YES;
705723
DEVELOPMENT_TEAM = 4399GN35BJ;
706724
GENERATE_INFOPLIST_FILE = YES;
707725
MACOSX_DEPLOYMENT_TARGET = 14.0;
708726
MARKETING_VERSION = 1.0;
709727
PRODUCT_BUNDLE_IDENTIFIER = "com.coder.Coder-DesktopTests";
710728
PRODUCT_NAME = "$(TARGET_NAME)";
711729
SWIFT_EMIT_LOC_STRINGS = NO;
712-
SWIFT_VERSION =5.0;
730+
SWIFT_VERSION =6.0;
713731
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Coder Desktop.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Coder Desktop";
714732
};
715733
name = Release;
@@ -719,13 +737,15 @@
719737
buildSettings = {
720738
CODE_SIGN_STYLE = Automatic;
721739
CURRENT_PROJECT_VERSION = 1;
740+
DEAD_CODE_STRIPPING = YES;
722741
DEVELOPMENT_TEAM = 4399GN35BJ;
723742
GENERATE_INFOPLIST_FILE = YES;
743+
MACOSX_DEPLOYMENT_TARGET = 14.6;
724744
MARKETING_VERSION = 1.0;
725745
PRODUCT_BUNDLE_IDENTIFIER = "com.coder.Coder-DesktopUITests";
726746
PRODUCT_NAME = "$(TARGET_NAME)";
727747
SWIFT_EMIT_LOC_STRINGS = NO;
728-
SWIFT_VERSION =5.0;
748+
SWIFT_VERSION =6.0;
729749
TEST_TARGET_NAME = "Coder Desktop";
730750
};
731751
name = Debug;
@@ -735,13 +755,15 @@
735755
buildSettings = {
736756
CODE_SIGN_STYLE = Automatic;
737757
CURRENT_PROJECT_VERSION = 1;
758+
DEAD_CODE_STRIPPING = YES;
738759
DEVELOPMENT_TEAM = 4399GN35BJ;
739760
GENERATE_INFOPLIST_FILE = YES;
761+
MACOSX_DEPLOYMENT_TARGET = 14.6;
740762
MARKETING_VERSION = 1.0;
741763
PRODUCT_BUNDLE_IDENTIFIER = "com.coder.Coder-DesktopUITests";
742764
PRODUCT_NAME = "$(TARGET_NAME)";
743765
SWIFT_EMIT_LOC_STRINGS = NO;
744-
SWIFT_VERSION =5.0;
766+
SWIFT_VERSION =6.0;
745767
TEST_TARGET_NAME = "Coder Desktop";
746768
};
747769
name = Release;
@@ -752,6 +774,7 @@
752774
CODE_SIGN_ENTITLEMENTS = VPN/VPN.entitlements;
753775
CODE_SIGN_STYLE = Automatic;
754776
CURRENT_PROJECT_VERSION = 1;
777+
DEAD_CODE_STRIPPING = YES;
755778
DEVELOPMENT_TEAM = 4399GN35BJ;
756779
ENABLE_HARDENED_RUNTIME = YES;
757780
GENERATE_INFOPLIST_FILE = YES;
@@ -768,7 +791,7 @@
768791
PRODUCT_NAME = "$(inherited)";
769792
SKIP_INSTALL = YES;
770793
SWIFT_EMIT_LOC_STRINGS = YES;
771-
SWIFT_VERSION =5.0;
794+
SWIFT_VERSION =6.0;
772795
};
773796
name = Debug;
774797
};
@@ -778,6 +801,7 @@
778801
CODE_SIGN_ENTITLEMENTS = VPN/VPN.entitlements;
779802
CODE_SIGN_STYLE = Automatic;
780803
CURRENT_PROJECT_VERSION = 1;
804+
DEAD_CODE_STRIPPING = YES;
781805
DEVELOPMENT_TEAM = 4399GN35BJ;
782806
ENABLE_HARDENED_RUNTIME = YES;
783807
GENERATE_INFOPLIST_FILE = YES;
@@ -794,7 +818,7 @@
794818
PRODUCT_NAME = "$(inherited)";
795819
SKIP_INSTALL = YES;
796820
SWIFT_EMIT_LOC_STRINGS = YES;
797-
SWIFT_VERSION =5.0;
821+
SWIFT_VERSION =6.0;
798822
};
799823
name = Release;
800824
};
@@ -804,6 +828,7 @@
804828
BUNDLE_LOADER = "$(TEST_HOST)";
805829
CODE_SIGN_STYLE = Automatic;
806830
CURRENT_PROJECT_VERSION = 1;
831+
DEAD_CODE_STRIPPING = YES;
807832
DEVELOPMENT_TEAM = 4399GN35BJ;
808833
GENERATE_INFOPLIST_FILE = YES;
809834
MARKETING_VERSION = 1.0;
@@ -821,6 +846,7 @@
821846
BUNDLE_LOADER = "$(TEST_HOST)";
822847
CODE_SIGN_STYLE = Automatic;
823848
CURRENT_PROJECT_VERSION = 1;
849+
DEAD_CODE_STRIPPING = YES;
824850
DEVELOPMENT_TEAM = 4399GN35BJ;
825851
GENERATE_INFOPLIST_FILE = YES;
826852
MARKETING_VERSION = 1.0;
@@ -892,6 +918,14 @@
892918
/* End XCConfigurationList section */
893919

894920
/* Begin XCRemoteSwiftPackageReference section */
921+
961679512CFF207900B2B6DF /* XCRemoteSwiftPackageReference "swift-protobuf" */ = {
922+
isa = XCRemoteSwiftPackageReference;
923+
repositoryURL = "https://github.com/apple/swift-protobuf.git";
924+
requirement = {
925+
kind = exactVersion;
926+
version = 1.28.2;
927+
};
928+
};
895929
AA8BC3372D00609700E1ABAA /* XCRemoteSwiftPackageReference "ViewInspector" */ = {
896930
isa = XCRemoteSwiftPackageReference;
897931
repositoryURL = "https://github.com/nalexn/ViewInspector";
@@ -932,17 +966,29 @@
932966
minimumVersion = 5.10.2;
933967
};
934968
};
935-
961679512CFF207900B2B6DF /* XCRemoteSwiftPackageReference "swift-protobuf" */ = {
936-
isa = XCRemoteSwiftPackageReference;
937-
repositoryURL = "https://github.com/apple/swift-protobuf.git";
938-
requirement = {
939-
kind = exactVersion;
940-
version = 1.28.2;
941-
};
942-
};
943969
/* End XCRemoteSwiftPackageReference section */
944970

945971
/* Begin XCSwiftPackageProductDependency section */
972+
961679522CFF207900B2B6DF /* SwiftProtobuf */ = {
973+
isa = XCSwiftPackageProductDependency;
974+
package = 961679512CFF207900B2B6DF /* XCRemoteSwiftPackageReference "swift-protobuf" */;
975+
productName = SwiftProtobuf;
976+
};
977+
961679542CFF207900B2B6DF /* SwiftProtobufPluginLibrary */ = {
978+
isa = XCSwiftPackageProductDependency;
979+
package = 961679512CFF207900B2B6DF /* XCRemoteSwiftPackageReference "swift-protobuf" */;
980+
productName = SwiftProtobufPluginLibrary;
981+
};
982+
961679E22D03144900B2B6DF /* SwiftProtobuf */ = {
983+
isa = XCSwiftPackageProductDependency;
984+
package = 961679512CFF207900B2B6DF /* XCRemoteSwiftPackageReference "swift-protobuf" */;
985+
productName = SwiftProtobuf;
986+
};
987+
961679E42D03144C00B2B6DF /* SwiftProtobufPluginLibrary */ = {
988+
isa = XCSwiftPackageProductDependency;
989+
package = 961679512CFF207900B2B6DF /* XCRemoteSwiftPackageReference "swift-protobuf" */;
990+
productName = SwiftProtobufPluginLibrary;
991+
};
946992
AA8BC3382D0060A900E1ABAA /* ViewInspector */ = {
947993
isa = XCSwiftPackageProductDependency;
948994
package = AA8BC3372D00609700E1ABAA /* XCRemoteSwiftPackageReference "ViewInspector" */;
@@ -968,26 +1014,6 @@
9681014
package = AAD720CE2D0816B200F6304D /* XCRemoteSwiftPackageReference "Alamofire" */;
9691015
productName = Alamofire;
9701016
};
971-
961679522CFF207900B2B6DF /* SwiftProtobuf */ = {
972-
isa = XCSwiftPackageProductDependency;
973-
package = 961679512CFF207900B2B6DF /* XCRemoteSwiftPackageReference "swift-protobuf" */;
974-
productName = SwiftProtobuf;
975-
};
976-
961679542CFF207900B2B6DF /* SwiftProtobufPluginLibrary */ = {
977-
isa = XCSwiftPackageProductDependency;
978-
package = 961679512CFF207900B2B6DF /* XCRemoteSwiftPackageReference "swift-protobuf" */;
979-
productName = SwiftProtobufPluginLibrary;
980-
};
981-
961679E22D03144900B2B6DF /* SwiftProtobuf */ = {
982-
isa = XCSwiftPackageProductDependency;
983-
package = 961679512CFF207900B2B6DF /* XCRemoteSwiftPackageReference "swift-protobuf" */;
984-
productName = SwiftProtobuf;
985-
};
986-
961679E42D03144C00B2B6DF /* SwiftProtobufPluginLibrary */ = {
987-
isa = XCSwiftPackageProductDependency;
988-
package = 961679512CFF207900B2B6DF /* XCRemoteSwiftPackageReference "swift-protobuf" */;
989-
productName = SwiftProtobufPluginLibrary;
990-
};
9911017
/* End XCSwiftPackageProductDependency section */
9921018
};
9931019
rootObject = 961678F42CFF100D00B2B6DF /* Project object */;

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp