Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate to TCA 1.0 #379

Merged
merged 32 commits into from
Jul 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
3d8b320
Rename `EffectTask` with `Effect`
Jimmy-Prime Mar 15, 2024
88fac74
Rename `ReducerProtocol` with `Reducer`
Jimmy-Prime Mar 15, 2024
52fd6c8
Fix 'init(value:)' is deprecated
Jimmy-Prime Mar 15, 2024
0026c04
Fix 'fireAndForget' is deprecated
Jimmy-Prime Mar 15, 2024
90c262a
Fix 'init(initialState:reducer:prepareDependencies:)' is deprecated
Jimmy-Prime Mar 15, 2024
ebb2387
Fix 'init(_:)' is deprecated
Jimmy-Prime Mar 16, 2024
253056d
Fix 'binding(_:fileID:line:)'
Jimmy-Prime Mar 16, 2024
53c4574
Fix 'eraseToEffect()' is deprecated
Jimmy-Prime Mar 16, 2024
fdbbbc4
Fix 'cancel(ids:)' is deprecated
Jimmy-Prime Mar 16, 2024
6f04b56
Merge pull request #368 from Jimmy-Prime/jimmy/fix-tca-warnings
chihchy Apr 4, 2024
76abb24
Enforce code style
chihchy Apr 11, 2024
6842553
Update code level contributors
chihchy Apr 11, 2024
4aedf46
Fix most warnings
Jimmy-Prime Apr 19, 2024
6407b4a
pr fix: Update Task.sleep call
Jimmy-Prime May 25, 2024
4c4163b
pr fix: Remove CancelID.teardown
Jimmy-Prime May 25, 2024
69f316b
Merge pull request #372 from Jimmy-Prime/jimmy/fix-most-warnings
chihchy May 27, 2024
a1b0463
Add async response for Request
Jimmy-Prime May 25, 2024
4f34187
Fix deprecation
Jimmy-Prime May 25, 2024
438d56e
Remove deprecated symbol
Jimmy-Prime May 25, 2024
3e7f279
TCA 1.0
Jimmy-Prime May 28, 2024
015e787
Fix bug: nesting binding is not matched
Jimmy-Prime May 28, 2024
093504c
Fix deprecated symbol
Jimmy-Prime May 28, 2024
0f475cc
Merge pull request #376 from Jimmy-Prime/jimmy/fix-publisher-deprecated
chihchy May 30, 2024
fd7805a
Resolve warnings & enforce code style
chihchy May 30, 2024
557a1b7
Update CI
chihchy May 30, 2024
033d8bc
Stop ignoring generated files in git
chihchy May 30, 2024
0de6620
Merge pull request #377 from EhPanda-Team/issue/resolve-warnings-and-…
chihchy May 30, 2024
856c492
Add MainActor attribution to avoid crashes
chihchy Jul 10, 2024
895b6d4
Add folder shortcuts
chihchy Jul 10, 2024
ca18060
Update Package.resolved version
chihchy Jul 10, 2024
4463781
Bump version to 2.7.5
chihchy Jul 10, 2024
0358bd5
Enforce code style
chihchy Jul 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 4 additions & 6 deletions .github/workflows/dependencies.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,13 @@ name: Xcode Dependencies
on:
schedule:
- cron: '0 0 * * 1'
push:
branches:
- main
workflow_dispatch:
permissions:
contents: write
pull-requests: write
jobs:
dependencies:
runs-on: macos-13
if: ${{ contains(github.event.head_commit.message, '[update dependencies]') || github.event_name == 'schedule' }}
runs-on: macos-14
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -22,9 +19,10 @@ jobs:
with:
forceResolution: true
failWhenOutdated: false
xcodePath: '/Applications/Xcode_15.4.app'
- name: Create Pull Request
if: steps.resolution.outputs.dependenciesChanged == 'true'
uses: peter-evans/create-pull-request@v5
uses: peter-evans/create-pull-request@v6
with:
branch: 'update-dependencies'
delete-branch: true
Expand Down
26 changes: 18 additions & 8 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ on:
- main
types: [closed]
env:
DEVELOPER_DIR: /Applications/Xcode_15.0.1.app
APP_VERSION: '2.7.4'
DEVELOPER_DIR: /Applications/Xcode_15.4.app
APP_VERSION: '2.7.5'
SCHEME_NAME: 'EhPanda'
ALTSTORE_JSON_PATH: './AltStore.json'
BUILDS_PATH: '/tmp/action-builds'
Expand All @@ -19,7 +19,7 @@ env:

jobs:
Deploy:
runs-on: macos-13
runs-on: macos-14
if: github.event.pull_request.merged == true && github.event.pull_request.user.login == 'chihchy'
steps:
- name: Checkout
Expand All @@ -28,21 +28,31 @@ jobs:
run: |
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
- name: Install dependencies
run: brew install swiftgen
- name: Show Xcode version
run: xcodebuild -version
- name: Run tests
run: xcodebuild clean test -scheme ${{ env.SCHEME_NAME }} -sdk iphonesimulator
run: xcodebuild clean test
-skipMacroValidation
-sdk iphonesimulator
-scheme ${{ env.SCHEME_NAME }}
-destination 'platform=iOS Simulator,name=iPhone 15 Pro'
- name: Bump version
id: bump-version
uses: yanamura/ios-bump-version@v1
with:
version: ${{ env.APP_VERSION }}
- name: Xcode archive
run: xcodebuild archive -destination 'generic/platform=iOS'
-scheme ${{ env.SCHEME_NAME }} -archivePath ${{ env.ARCHIVE_PATH }} CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO CODE_SIGN_IDENTITY= CODE_SIGN_ENTITLEMENTS= GCC_OPTIMIZATION_LEVEL=s SWIFT_OPTIMIZATION_LEVEL=-O
run: xcodebuild archive
-skipMacroValidation
-scheme ${{ env.SCHEME_NAME }}
-destination 'generic/platform=iOS'
-archivePath ${{ env.ARCHIVE_PATH }}
CODE_SIGN_IDENTITY=
CODE_SIGN_ENTITLEMENTS=
CODE_SIGNING_ALLOWED=NO
CODE_SIGNING_REQUIRED=NO
GCC_OPTIMIZATION_LEVEL=s
SWIFT_OPTIMIZATION_LEVEL=-O
- name: Export .ipa file
run: |
mkdir -p ${{ env.PAYLOAD_PATH }}
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
name: Test
on: [push]
on: [push, workflow_dispatch]
env:
SCHEME_NAME: 'EhPanda'
DEVELOPER_DIR: /Applications/Xcode_15.0.1.app
DEVELOPER_DIR: /Applications/Xcode_15.4.app
jobs:
Test:
runs-on: macos-13
runs-on: macos-14
if: ${{ !contains(github.event.head_commit.message, '[skip test]') }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install dependencies
run: brew install swiftgen
- name: Show Xcode version
run: xcodebuild -version
- name: Run tests
run: xcodebuild clean test
-scheme ${{ env.SCHEME_NAME }} -sdk iphonesimulator
-skipMacroValidation
-sdk iphonesimulator
-scheme ${{ env.SCHEME_NAME }}
-destination 'platform=iOS Simulator,name=iPhone 15 Pro'
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
.DS_Store
EhPanda/App/Generated
EhPanda.xcodeproj/xcuserdata
EhPanda.xcodeproj/project.xcworkspace/xcuserdata
1 change: 1 addition & 0 deletions .swiftlint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,4 @@ identifier_name:

excluded:
- EhPandaTests
- EhPanda/App/Generated
74 changes: 70 additions & 4 deletions EhPanda.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -269,6 +269,14 @@
ABF45AF725F3313D00ECB568 /* SettingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABF45ADD25F3313D00ECB568 /* SettingView.swift */; };
ABF75F3F25A19CD200544D29 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABF75F3E25A19CD200544D29 /* User.swift */; };
ABF9720A26DE6E1300118887 /* GalleryDetailWithGreeting.html in Resources */ = {isa = PBXBuildFile; fileRef = ABF9720926DE6E1300118887 /* GalleryDetailWithGreeting.html */; };
EA0C92452C3EB42300D211F6 /* ISSUE_TEMPLATE in Resources */ = {isa = PBXBuildFile; fileRef = EA0C92432C3EB42300D211F6 /* ISSUE_TEMPLATE */; };
EA0C92462C3EB42300D211F6 /* workflows in Resources */ = {isa = PBXBuildFile; fileRef = EA0C92442C3EB42300D211F6 /* workflows */; };
EA0C92592C3EB49500D211F6 /* README.cht.md in Resources */ = {isa = PBXBuildFile; fileRef = EA0C92532C3EB49500D211F6 /* README.cht.md */; };
EA0C925A2C3EB49500D211F6 /* README.ko.md in Resources */ = {isa = PBXBuildFile; fileRef = EA0C92542C3EB49500D211F6 /* README.ko.md */; };
EA0C925B2C3EB49500D211F6 /* README.md in Resources */ = {isa = PBXBuildFile; fileRef = EA0C92552C3EB49500D211F6 /* README.md */; };
EA0C925C2C3EB49500D211F6 /* README.de.md in Resources */ = {isa = PBXBuildFile; fileRef = EA0C92562C3EB49500D211F6 /* README.de.md */; };
EA0C925D2C3EB49500D211F6 /* README.chs.md in Resources */ = {isa = PBXBuildFile; fileRef = EA0C92572C3EB49500D211F6 /* README.chs.md */; };
EA0C925E2C3EB49500D211F6 /* README.jpn.md in Resources */ = {isa = PBXBuildFile; fileRef = EA0C92582C3EB49500D211F6 /* README.jpn.md */; };
EA2E2E7F2A1F7E500038A261 /* SettingReducer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA2E2E7E2A1F7E500038A261 /* SettingReducer.swift */; };
EA2E2E822A1FA1060038A261 /* SearchReducer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA2E2E812A1FA1050038A261 /* SearchReducer.swift */; };
EAE63E2129E2A6330048C601 /* SwiftyBeaver in Frameworks */ = {isa = PBXBuildFile; productRef = EAE63E2029E2A6330048C601 /* SwiftyBeaver */; };
Expand Down Expand Up @@ -579,6 +587,19 @@
ABF53F4725A306D200AB5918 /* EhPanda.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = EhPanda.entitlements; sourceTree = "<group>"; };
ABF75F3E25A19CD200544D29 /* User.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = "<group>"; };
ABF9720926DE6E1300118887 /* GalleryDetailWithGreeting.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = GalleryDetailWithGreeting.html; sourceTree = "<group>"; };
EA0C92432C3EB42300D211F6 /* ISSUE_TEMPLATE */ = {isa = PBXFileReference; lastKnownFileType = folder; name = ISSUE_TEMPLATE; path = .github/ISSUE_TEMPLATE; sourceTree = "<group>"; };
EA0C92442C3EB42300D211F6 /* workflows */ = {isa = PBXFileReference; lastKnownFileType = folder; name = workflows; path = .github/workflows; sourceTree = "<group>"; };
EA0C92482C3EB45E00D211F6 /* AltStore.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = AltStore.json; sourceTree = "<group>"; };
EA0C92492C3EB45E00D211F6 /* swiftgen.yml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.yaml; path = swiftgen.yml; sourceTree = "<group>"; };
EA0C924A2C3EB45E00D211F6 /* .gitattributes */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = .gitattributes; sourceTree = "<group>"; };
EA0C924B2C3EB45E00D211F6 /* .swiftlint.yml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.yaml; path = .swiftlint.yml; sourceTree = "<group>"; };
EA0C924C2C3EB45E00D211F6 /* .gitignore */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = .gitignore; sourceTree = "<group>"; };
EA0C92532C3EB49500D211F6 /* README.cht.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; name = README.cht.md; path = READMEs/README.cht.md; sourceTree = "<group>"; };
EA0C92542C3EB49500D211F6 /* README.ko.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; name = README.ko.md; path = READMEs/README.ko.md; sourceTree = "<group>"; };
EA0C92552C3EB49500D211F6 /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; };
EA0C92562C3EB49500D211F6 /* README.de.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; name = README.de.md; path = READMEs/README.de.md; sourceTree = "<group>"; };
EA0C92572C3EB49500D211F6 /* README.chs.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; name = README.chs.md; path = READMEs/README.chs.md; sourceTree = "<group>"; };
EA0C92582C3EB49500D211F6 /* README.jpn.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; name = README.jpn.md; path = READMEs/README.jpn.md; sourceTree = "<group>"; };
EA2E2E7E2A1F7E500038A261 /* SettingReducer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SettingReducer.swift; sourceTree = "<group>"; };
EA2E2E812A1FA1050038A261 /* SearchReducer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SearchReducer.swift; sourceTree = "<group>"; };
/* End PBXFileReference section */
Expand Down Expand Up @@ -1087,6 +1108,9 @@
ABC3C7562593696C00E0C11B /* EhPanda */,
AB5BE67726B95FDD007D4A55 /* ShareExtension */,
AB3E9E6126D210B1008FE518 /* EhPandaTests */,
EA0C92472C3EB44300D211F6 /* Config */,
EA0C92422C3EB40100D211F6 /* GitHub */,
EA0C92522C3EB47F00D211F6 /* READMEs */,
ABC3C7552593696C00E0C11B /* Products */,
AB82819926B1C39B00A80CFA /* Frameworks */,
);
Expand Down Expand Up @@ -1305,6 +1329,40 @@
path = Setting;
sourceTree = "<group>";
};
EA0C92422C3EB40100D211F6 /* GitHub */ = {
isa = PBXGroup;
children = (
EA0C92432C3EB42300D211F6 /* ISSUE_TEMPLATE */,
EA0C92442C3EB42300D211F6 /* workflows */,
);
name = GitHub;
sourceTree = "<group>";
};
EA0C92472C3EB44300D211F6 /* Config */ = {
isa = PBXGroup;
children = (
EA0C924A2C3EB45E00D211F6 /* .gitattributes */,
EA0C924C2C3EB45E00D211F6 /* .gitignore */,
EA0C924B2C3EB45E00D211F6 /* .swiftlint.yml */,
EA0C92482C3EB45E00D211F6 /* AltStore.json */,
EA0C92492C3EB45E00D211F6 /* swiftgen.yml */,
);
name = Config;
sourceTree = "<group>";
};
EA0C92522C3EB47F00D211F6 /* READMEs */ = {
isa = PBXGroup;
children = (
EA0C92572C3EB49500D211F6 /* README.chs.md */,
EA0C92532C3EB49500D211F6 /* README.cht.md */,
EA0C92562C3EB49500D211F6 /* README.de.md */,
EA0C92582C3EB49500D211F6 /* README.jpn.md */,
EA0C92542C3EB49500D211F6 /* README.ko.md */,
EA0C92552C3EB49500D211F6 /* README.md */,
);
name = READMEs;
sourceTree = "<group>";
};
EA2B9B042A0A89C900E7BA07 /* AccountSetting */ = {
isa = PBXGroup;
children = (
Expand Down Expand Up @@ -1630,28 +1688,36 @@
AB90276E291F548700697256 /* AppIcon_NotMyPresident_iPad.png in Resources */,
AB90276D291F548700697256 /* [email protected] in Resources */,
AB0CFB7A27BAB9D0004BD372 /* [email protected] in Resources */,
EA0C92592C3EB49500D211F6 /* README.cht.md in Resources */,
AB0CFB7527BAB9D0004BD372 /* [email protected] in Resources */,
AB0CFB9227BBD323004BD372 /* [email protected] in Resources */,
ABC3C7852593699B00E0C11B /* Assets.xcassets in Resources */,
AB0CFB7B27BAB9D0004BD372 /* AppIcon_Default_iPad.png in Resources */,
AB90276C291F548700697256 /* [email protected] in Resources */,
EA0C925D2C3EB49500D211F6 /* README.chs.md in Resources */,
AB0CFB9527BBD323004BD372 /* AppIcon_Ukiyoe_iPad.png in Resources */,
EA0C925C2C3EB49500D211F6 /* README.de.md in Resources */,
ABE9012427F722D100F3651D /* [email protected] in Resources */,
AB90276B291F548700697256 /* [email protected] in Resources */,
EA0C92452C3EB42300D211F6 /* ISSUE_TEMPLATE in Resources */,
AB0CFB8827BBD2D7004BD372 /* [email protected] in Resources */,
ABE9012227F722D100F3651D /* [email protected] in Resources */,
EA0C925B2C3EB49500D211F6 /* README.md in Resources */,
AB0CFB7427BAB9D0004BD372 /* [email protected] in Resources */,
AB7E6B3025D24FE00035CC68 /* InfoPlist.strings in Resources */,
ABA9A6BC28EC786100EE28DE /* swiftgen.yml in Resources */,
AB0CFB9327BBD323004BD372 /* [email protected] in Resources */,
AB0CFB8927BBD2D7004BD372 /* [email protected] in Resources */,
ABEE0AFA2595C6F800C997AE /* Localizable.strings in Resources */,
AB90276F291F548700697256 /* [email protected] in Resources */,
EA0C92462C3EB42300D211F6 /* workflows in Resources */,
EA0C925A2C3EB49500D211F6 /* README.ko.md in Resources */,
ABD5FDD4263D05110021A4C6 /* .swiftlint.yml in Resources */,
ABE9012527F722D100F3651D /* [email protected] in Resources */,
ABE9012327F722D100F3651D /* AppIcon_StandWithUkraine2022_iPad.png in Resources */,
AB0CFB7827BAB9D0004BD372 /* [email protected] in Resources */,
AB0CFB8B27BBD2D7004BD372 /* [email protected] in Resources */,
EA0C925E2C3EB49500D211F6 /* README.jpn.md in Resources */,
AB0CFB8A27BBD2D7004BD372 /* AppIcon_Developer_iPad.png in Resources */,
ABE9012627F722D100F3651D /* [email protected] in Resources */,
AB0CFB9427BBD323004BD372 /* [email protected] in Resources */,
Expand Down Expand Up @@ -2408,8 +2474,8 @@
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/pointfreeco/swift-composable-architecture.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 0.0.0;
kind = exactVersion;
version = 1.0.0;
};
};
ABAC82FC26BC4866009F5026 /* XCRemoteSwiftPackageReference "SwiftyOpenCC" */ = {
Expand All @@ -2424,8 +2490,8 @@
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/pointfreeco/swiftui-navigation.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 0.0.0;
kind = exactVersion;
version = 1.0.0;
};
};
ABC4A0772751B40E00968A4F /* XCRemoteSwiftPackageReference "Kingfisher" */ = {
Expand Down
Loading
Loading