-
Notifications
You must be signed in to change notification settings - Fork 31
Log of Changes #178
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
base: main
Are you sure you want to change the base?
Log of Changes #178
Changes from all commits
681a0b8
0cc2622
aa4165d
581b570
e3ff919
2cee25e
a151875
20a98e3
b39fb89
64c8692
307ab9f
301c512
5e11cd9
f1b60f4
fc58244
e5780c2
2e7f10b
a8ba932
6ae6d57
2402e3a
e0b9ea9
dd7782e
6a080ca
2c8c148
8be138d
afc8363
46998c6
eba5e04
67d7d83
833bdec
95fb859
ee157a1
c1a7110
54cf791
0ffe0bc
9c18e97
92c5fdc
f411514
2dd8cb8
e6479ec
8812232
a1e9844
ec4763c
30b33fc
3c2c2cb
0406d9f
bc2b28d
3f77429
60522fc
671b314
1aa16c1
6a84924
0302d7d
ed2a339
56da1e3
57fa124
a05cfb3
eb96b82
3087231
ec758e5
65cf195
9ebe73c
9b657e8
2cbf36b
b9cb25e
89956f5
2a2dc51
2669ee6
bbb36a7
deee2e0
ddb6dbb
8663dd8
6657215
dce7f1a
4ed29db
ac5acc4
550c098
b496bed
5d7958a
4996b3b
0b4e5fd
72bd15e
5f3723f
9eb6109
c578b24
850dd05
fb09e11
3a932ad
ed40c48
2d1feec
ad9793a
38a117a
b4fc4e7
9526c5b
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,26 +1,61 @@ | ||
| name: "build and submit to testflight" | ||
| on: | ||
| push: | ||
| branches: [ "main" ] | ||
| paths: | ||
| - 'apps/ios/**' | ||
| - '.github/workflows/build-for-testflight.yml' | ||
| workflow_run: | ||
| workflows: | ||
| - "ios-tests" | ||
| types: | ||
| - completed | ||
| branches: | ||
| - main | ||
| workflow_dispatch: | ||
| permissions: | ||
| contents: write | ||
| jobs: | ||
| build: | ||
| runs-on: macos-13 | ||
| build-and-upload: | ||
| if: ${{ github.event_name != 'workflow_run' || github.event.workflow_run.conclusion == 'success' }} | ||
| runs-on: macos-14 | ||
| environment: Production | ||
|
|
||
| steps: | ||
| - name: Checkout | ||
| uses: actions/checkout@v3 | ||
| - name: Setup ssh agent and deploy key(s) | ||
| uses: webfactory/ssh-agent@v0.8.0 | ||
| with: | ||
| ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }} | ||
| - name: Install gems | ||
| working-directory: apps/ios | ||
| run: bundle install | ||
| - name: setup and build with fastlane | ||
| working-directory: apps/ios | ||
| env: | ||
| MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }} | ||
| run: bundle exec fastlane beta | ||
| # Check out code with push permissions (needed for commit) | ||
| - uses: actions/checkout@v4 | ||
| with: | ||
| fetch-depth: 0 | ||
| persist-credentials: true | ||
|
|
||
| - name: Bump build number | ||
| run: | | ||
| cd apps/ios | ||
| agvtool bump | ||
|
|
||
| # Commit and push the version change (avoid loop with [skip ci]) | ||
| - name: Commit bump | ||
| env: | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| run: | | ||
| git config user.name "github-actions[bot]" | ||
| git config user.email "41898282+github-actions[bot]@users.noreply.github.com" | ||
| git add -A | ||
| git commit -m "chore(ci): bump build number [skip ci]" || echo "Nothing to commit" | ||
| git push | ||
|
|
||
| # 4 Select the latest stable Xcode version | ||
| - uses: maxim-lobanov/setup-xcode@v1 | ||
| with: | ||
| xcode-version: "latest-stable" | ||
|
|
||
| # install the developer certificate in the signing_temp keychain | ||
| - name: install certificate | ||
| id: install-certificates | ||
| uses: apple-actions/import-codesign-certs@v3 | ||
| with: | ||
| p12-file-base64: ${{ secrets.APPSTORE_CERTIFICATES_FILE_BASE64 }} | ||
| p12-password: ${{ secrets.APPSTORE_CERTIFICATES_PASSWORD }} | ||
|
|
||
| - name: build and upload to testflight | ||
| env: | ||
| APPSTORE_CONNECT_API_KEY: ${{ secrets.APP_STORE_P8_BASE64 }} | ||
| APPSTORE_CONNECT_ISSUER_ID: ${{ secrets.APP_STORE_ISSUER_ID }} | ||
| APPSTORE_CONNECT_KEY_ID: ${{ secrets.APP_STORE_KEY_ID }} | ||
| KEYCHAIN_PASSWORD: ${{ steps.install-certificates.outputs.keychain-password }} | ||
| run: "apps/ios/Scripts/ci/archive-upload.sh | xcpretty && exit ${PIPESTATUS[0]}" | ||
|
Comment on lines
+55
to
+61
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🌐 Web query:
💡 Result:
Sources: Citations: Install This workflow pipes to Code snippetAdd a step to install xcpretty (e.g., 🧰 Tools🪛 actionlint (1.7.11)[error] 61-61: shellcheck reported issue in this script: SC2086:info:1:58: Double quote to prevent globbing and word splitting (shellcheck) 🤖 Prompt for AI Agents |
||
| Original file line number | Diff line number | Diff line change | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -12,6 +12,9 @@ on: | |||||||||||||||||
| paths: | ||||||||||||||||||
| - 'apps/ios/**' | ||||||||||||||||||
| workflow_dispatch: | ||||||||||||||||||
| concurrency: | ||||||||||||||||||
| group: ${{ github.ref }} | ||||||||||||||||||
| cancel-in-progress: true | ||||||||||||||||||
| jobs: | ||||||||||||||||||
| unit-tests: | ||||||||||||||||||
| runs-on: macos-14 | ||||||||||||||||||
|
|
@@ -24,6 +27,10 @@ jobs: | |||||||||||||||||
| sudo xcode-select -s "${xcode_path}/Contents/Developer" | ||||||||||||||||||
| xcodebuild -version | ||||||||||||||||||
| gem install xcpretty | ||||||||||||||||||
| - name: Run LocalizationLinter | ||||||||||||||||||
| working-directory: apps/ios | ||||||||||||||||||
| run: | | ||||||||||||||||||
| swift Scripts/LocalizationLinter/main.swift | ||||||||||||||||||
|
Comment on lines
+30
to
+33
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The new CI gate never turns on the missing-translation check.
Suggested fix- swift Scripts/LocalizationLinter/main.swift
+ swift Scripts/LocalizationLinter/main.swift missing📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||||||||||
| - name: Build | ||||||||||||||||||
| run: > | ||||||||||||||||||
| xcodebuild build-for-testing -workspace apps/ios/GuideDogs.xcworkspace | ||||||||||||||||||
|
|
||||||||||||||||||
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -79,6 +79,7 @@ | |
| buildConfiguration = "Debug" | ||
| selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" | ||
| selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" | ||
| enableThreadSanitizer = "YES" | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: # Check if the file exists and examine its structure
if [ -f "apps/ios/GuideDogs.xcodeproj/xcshareddata/xcschemes/Soundscape.xcscheme" ]; then
echo "=== File exists ==="
# Get context around line 82
sed -n '75,90p' "apps/ios/GuideDogs.xcodeproj/xcshareddata/xcschemes/Soundscape.xcscheme"
echo -e "\n=== Full LaunchAction section ==="
# Try to find the LaunchAction context
sed -n '/<LaunchAction/,/<\/LaunchAction>/p' "apps/ios/GuideDogs.xcodeproj/xcshareddata/xcschemes/Soundscape.xcscheme" | head -40
else
echo "File not found"
fiRepository: soundscape-community/soundscape Length of output: 2240 🏁 Script executed: # Check if there are other schemes in the directory
ls -la "apps/ios/GuideDogs.xcodeproj/xcshareddata/xcschemes/" 2>/dev/null || echo "Directory not found"Repository: soundscape-community/soundscape Length of output: 593 🌐 Web query:
💡 Result: Apple introduced Thread Sanitizer (TSan) for Xcode/iOS at WWDC 2016, and explicitly noted that TSan is not supported on physical iOS devices—it’s intended for use in the iOS Simulator (and other supported simulated environments). [1], [2] Apple has expanded TSan’s simulator coverage over time (for example, Xcode 12 added TSan when debugging on simulated watchOS devices), but that does not change iOS on-device support. [3] Bottom line: No—TSan does not support running on an iPhone/iPad device; use the iOS Simulator. [1], [2] Sources: 🌐 Web query:
💡 Result:
Sources: Citations:
Move Thread Sanitizer to a debug-only scheme. This scheme is checked in under 🤖 Prompt for AI Agents |
||
| launchStyle = "0" | ||
| useCustomWorkingDirectory = "NO" | ||
| ignoresPersistentStateOnLaunch = "NO" | ||
|
|
@@ -102,6 +103,13 @@ | |
| isEnabled = "YES"> | ||
| </EnvironmentVariable> | ||
| </EnvironmentVariables> | ||
| <AdditionalOptions> | ||
| <AdditionalOption | ||
| key = "NSZombieEnabled" | ||
| value = "YES" | ||
| isEnabled = "YES"> | ||
| </AdditionalOption> | ||
| </AdditionalOptions> | ||
| <LocationScenarioReference | ||
| identifier = "com.apple.dt.IDEFoundation.CurrentLocationScenarioIdentifier" | ||
| referenceType = "1"> | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🌐 Web query:
For a GitHub Actions workflow triggered byworkflow_run, what ref/commit doesactions/checkout@v4use by default, and how do you explicitly check outgithub.event.workflow_run.head_sha?💡 Result:
By default,
actions/checkout@v4checks out the ref/SHA that triggered the current workflow run (i.e., effectivelygithub.ref/github.sha), otherwise it falls back to the repo’s default branch. [1]For workflows triggered by
workflow_run, that typically means you’ll end up on the default branch commit for theworkflow_run-triggered workflow, not the commit that the upstream workflow ran on (this is part of GitHub’s “run from default branch for certain events” behavior). [2]To explicitly check out the triggering workflow’s commit, use the
workflow_runpayload’shead_sha(the workflow-run object includeshead_sha). [3]Sources: [1] [2] [3]
🏁 Script executed:
cat -n .github/workflows/build-for-testflight.yml | head -30Repository: soundscape-community/soundscape
Length of output: 930
Checkout should be pinned to the triggering SHA.
For
workflow_run, this job builds the commit that passedios-tests. Without an explicitref, a later push tomainwill make this workflow archive and upload untested code instead.Suggested fix
- uses: actions/checkout@v4 with: + ref: ${{ github.event_name == 'workflow_run' && github.event.workflow_run.head_sha || github.sha }} fetch-depth: 0 persist-credentials: true🤖 Prompt for AI Agents