Files
openclaw/scripts/format-swift.sh
Peter Steinberger 62bd760c0e chore(swift): enforce current formatting and lint rules (#103313)
* style: apply SwiftFormat 0.62.1 rules

Refs #103202

* ci: enforce deterministic Swift lint

Refs #103202

* refactor: keep gateway connect lint-clean

Refs #103202

* style: keep iOS typography checks warning-free

* ci: route MLX Swift changes through pre-push

* fix: preserve native i18n extraction after Swift cleanup

* refactor: keep rebased Swift surfaces lint-clean

* style: format latest Swift additions

* chore: refresh native i18n inventory

* style: keep generated Swift formatter-clean

* fix: preserve node route invalidation callbacks

* fix: keep native translation IDs stable

* fix: retain native translation identifiers

* fix: preserve translations across Swift source moves
2026-07-10 11:54:08 +01:00

36 lines
1.0 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
repo_root="$(cd "$(dirname "$0")/.." && pwd)"
cd "$repo_root"
scope="${1:-all}"
if [[ "$scope" != "all" && "$scope" != "ios" && "$scope" != "macos" ]]; then
echo "usage: $0 [ios|macos]" >&2
exit 2
fi
./scripts/check-swift-tools.sh swiftformat
if [[ "$scope" != "ios" ]]; then
swiftformat --lint apps/macos/Sources \
--config config/swiftformat \
--exclude '**/OpenClawProtocol'
swiftformat --lint apps/macos-mlx-tts/Sources apps/swabble/Sources \
--config config/swiftformat
fi
if [[ "$scope" == "macos" ]]; then
exit 0
fi
node scripts/ios-write-swift-filelist.mjs
(
cd apps/ios
swiftformat --lint \
--config ../../config/swiftformat \
--unexclude "$PWD/Sources,$PWD/ShareExtension,$PWD/ActivityWidget,$PWD/WatchApp,$PWD/../shared/OpenClawKit/Sources/OpenClawChatUI,$PWD/../shared/OpenClawKit/Sources/OpenClawKit,$PWD/../shared/OpenClawKit/Sources/OpenClawProtocol,$PWD/../swabble/Sources/SwabbleKit" \
--filelist SwiftSources.input.xcfilelist
)