Skip to content

chore: remove CircleCI, rely on Xcode Cloud for CI - #173

Merged
kcw-grunt merged 3 commits into
developfrom
chore/xcode-cloud-only
Aug 17, 2026
Merged

chore: remove CircleCI, rely on Xcode Cloud for CI#173
kcw-grunt merged 3 commits into
developfrom
chore/xcode-cloud-only

Conversation

@grunt-claude-bot

Copy link
Copy Markdown
Collaborator

📱 Description

CircleCI's macOS executor costs had gotten too high. Xcode Cloud (ci_scripts/) already runs the build/test pipeline, so this drops CircleCI entirely and makes Xcode Cloud the sole CI for this repo.

Platform

  • iOS

🎯 Type of Change

  • 🐛 Bug fix
  • ✨ New feature
  • 🔧 Refactoring
  • 📚 Documentation update
  • 🎨 UI/UX improvement
  • ⚡ Performance improvement
  • 🧪 Test addition or improvement
  • ⚙️ CI/CD change

📋 Changes

  • Delete .circleci/ (per-push unit tests, daily-develop maintenance job, UI-test/weekly-maintenance job — three separate macOS-executor pipelines)
  • Remove setup_circle_ci from fastlane/Fastfile's before_all
  • Move the Linux-only i18n translation-coverage check (scripts/test_i18n_coverage.py) to a new GitHub Actions workflow (.github/workflows/i18n-coverage.yml), since it has no Xcode Cloud equivalent
  • Drop the CircleCI status badge and the CircleCI-updated Gist tests-badge from README; Testing section now points at Xcode Cloud + the new i18n workflow
  • Clean up stale .circleci references in ci_scripts/ci_post_clone.sh and .github/workflows/pr-summary.yml

🧪 Tests Status

  • Ran python3 scripts/test_i18n_coverage.py locally — passes (exit 0, 100% coverage)
  • Xcode Cloud build/test will run on this PR

🔗 Related Issues

  • Addresses CircleCI cost overruns

📝 Manual follow-up (outside this repo)

  • Disable/uninstall the CircleCI project's GitHub App integration for gruntsoftware/ios so no scheduled pipelines or webhooks keep firing
  • Revoke GIST_TOKEN/CircleCI contexts (bw-ios-test, circleci-agents) if unused elsewhere

kcw-grunt and others added 3 commits August 17, 2026 12:10
CircleCI's macOS executor costs had gotten too high. Xcode Cloud
(ci_scripts/) already runs the build/test pipeline, so it's now the
sole CI for this repo.

- Delete .circleci/ (per-push unit tests, daily-develop maintenance
  job, and UI-test/weekly-maintenance job)
- Remove setup_circle_ci from fastlane/Fastfile's before_all
- Move the Linux-only i18n translation-coverage check
  (scripts/test_i18n_coverage.py) to a new GitHub Actions workflow
  (.github/workflows/i18n-coverage.yml) since it has no Xcode Cloud
  equivalent
- Drop the CircleCI status badge and the CircleCI-updated Gist
  tests-badge from README; update the Testing section to reference
  Xcode Cloud + the new i18n workflow
- Clean up stale .circleci references in ci_scripts/ci_post_clone.sh
  and .github/workflows/pr-summary.yml

Co-Authored-By: grunt-claude-bot <308083480+grunt-claude-bot@users.noreply.github.com>
Co-Authored-By: kcw-grunt <mrkerrywashington@icloud.com>
@kcw-grunt
kcw-grunt self-requested a review August 17, 2026 11:27
@kcw-grunt kcw-grunt added the ios label Aug 17, 2026
@kcw-grunt
kcw-grunt merged commit 56cacaa into develop Aug 17, 2026
3 checks passed
kcw-grunt added a commit that referenced this pull request Aug 19, 2026
Also backfills the v3.9.16 entry, which never made it into develop's
README - release/v3.9.16 added it (adb9dc8) but that branch was never
merged back, so this lineage's Release Notes section jumped straight
from the intro to v3.9.15.

v3.9.17 covers: the BuyReceiveView Android-parity relayout (#177),
the remaining deprecation/dead-code/warnings cleanup (#174, #175),
dropping CircleCI in favor of Xcode Cloud (#173), bw-gdlib v1.6.9
and Modules/core bumps (#171, #176), and the Localizable.xcstrings
dead-key removal + missing-translation additions.

Co-Authored-By: grunt-claude-bot <308083480+grunt-claude-bot@users.noreply.github.com>
Co-Authored-By: kcw-grunt <mrkerrywashington@icloud.com>
kcw-grunt added a commit that referenced this pull request Aug 22, 2026
## Highlights since v3.9.16

- Reworked the Buy/Receive sheet (BuyReceiveView) to match the Android
  app's layout (#177)
- Cleared remaining deprecated Security/Foundation API usage and a real
  infinite-recursion bug (#175)
- Reduced the Swift compiler warnings list (#174)
- Removed CircleCI — Xcode Cloud is now the sole CI (#173)
- Updated Private/bw-gdlib to v1.6.9 (#171) and Modules/core (#176)
- Restored the missing translations for COPY NEW ADDRESS, and added
  translations for BUY / RECEIVE and POWERED BY MOONPAY (21 locales
  each) — these existed in an earlier release attempt but were never
  merged back into develop (#184)
- Removed 2 dead Localizable.xcstrings keys with no remaining source
  references: GET LTC, Set amount: (#179)
- Fixed the auto-translate script writing Localizable.xcstrings with
  JSON formatting that didn't match Xcode's String Catalog serializer,
  which was rewriting every line of the file on every run and
  producing unreviewable, unmergeable translation PRs (#186)
- Fixed the auto-translate workflow re-triggering on every push to any
  open PR (not just merges to main/develop), which was spawning
  duplicate translation PRs against long-lived branches (#190)
- Picked up 42 additional previously-missing translations across 21
  locales, generated cleanly after the above two fixes (#189)
- Bumped MARKETING_VERSION to 3.9.17

## Build
CURRENT_PROJECT_VERSION bumped 2602309 -> 2602311.

Co-Authored-By: grunt-claude-bot <noreply@grunt.ltd>
Co-Authored-By: kcw-grunt <kerry@grunt.ltd>
kcw-grunt added a commit that referenced this pull request Aug 22, 2026
## Highlights since v3.9.16

- Reworked the Buy/Receive sheet (BuyReceiveView) to match the Android
  app's layout (#177)
- Cleared remaining deprecated Security/Foundation API usage and a real
  infinite-recursion bug (#175)
- Reduced the Swift compiler warnings list (#174)
- Removed CircleCI — Xcode Cloud is now the sole CI (#173)
- Updated Private/bw-gdlib to v1.6.9 (#171) and Modules/core (#176)
- Restored the missing translations for COPY NEW ADDRESS, and added
  translations for BUY / RECEIVE and POWERED BY MOONPAY (21 locales
  each) — these existed in an earlier release attempt but were never
  merged back into develop (#184)
- Removed 2 dead Localizable.xcstrings keys with no remaining source
  references: GET LTC, Set amount: (#179)
- Fixed the auto-translate script writing Localizable.xcstrings with
  JSON formatting that didn't match Xcode's String Catalog serializer,
  which was rewriting every line of the file on every run and
  producing unreviewable, unmergeable translation PRs (#186)
- Fixed the auto-translate workflow re-triggering on every push to any
  open PR (not just merges to main/develop), which was spawning
  duplicate translation PRs against long-lived branches (#190)
- Picked up 42 additional previously-missing translations across 21
  locales, generated cleanly after the above two fixes (#189)
- Bumped MARKETING_VERSION to 3.9.17

## Build
CURRENT_PROJECT_VERSION bumped 2602309 -> 2602311.

Co-Authored-By: grunt-claude-bot <noreply@grunt.ltd>
Co-Authored-By: kcw-grunt <kerry@grunt.ltd>
This was referenced Aug 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants