Xcode Simulator — Ускоряем прогон тестов на CI + Fastlane

Было время принимал участие в разработке iOS приложениий в небольших продуктовых командах. Всё стандартно для такого рода разработки: 2-5 iOS разработчиков Менеджер Дизайнер Тестировщик Как видите, в списке нет DevOps, поэтому наш CI был полностью в нашем распоряжении и мы могли настраивать как нам удобно. Когда я присоединился к командам, то на CI уже всё было настроено по классике: Mac Studio в подвале Запуск Unit тестов Запуск UI тестов Сборки различных версий приложения (Firebase, TestFlight) Всё работало как часы, я туда если честно не лазил (сначала), из разговора коллег, сама настройка CI им досталась от первых разработчиков проекта, которые больше уже не в команде и они там фундаментально после них ничего не меняли. Время шло, задачи закрывались, релизы выпускались, в свободное время от задач расчищали беклог - в общем скукота. Так как мне нравится ковырять в носу xcodebuild через терминал, то иногда я стал замечать, что, например, тесты на CI и локально работают по-разному в плане скорости, локально вроде всё очень быстро, но на CI реально иногда надолго всё залипало - 5, 10, иногда 20 минут, хотя локально из консоли до двух раз быстрее. После очередного закрытого спринта досрочно, осталось время на беклог, у меня закралась мысль, что что-то не так с нашим CI. Так как я знаю, что у нас на CI стоит Mac Studio, которая точно, хоть и немного, но шустрее моей машины, но по времени выполнения задач этого не скажешь. Решил в итоге открыть ящик пондоры Fastfile и посмотреть, что же там и как это работает.

https://habr.com/ru/articles/1030150/

#Xcode #fastlane #xcodebuild #ios

Xcode Simulator — Ускоряем прогон тестов на CI + Fastlane

Речь пойдет про наш любимый fastlane , если вы являетесь специалистом по Maraphon или Emcee , то, возможно, мои советы для вас окажутся больше вредными / нелепыми / и порой даже забывными - не...

Хабр

The Xcode build system has crashed, или Почему рекурсия — это плохо. Используем swift‑build со своими патчами

Представьте ситуацию: вы работаете в огромном проекте, где количество модулей давно перевалило за тысячу. Вы решаете обновиться до свежего Xcode 26.2, ожидая прироста производительности, но вместо заветного «Build Succeeded» получаете молчаливое падение: SWBBuildService quit unexpectedly. Всем привет, меня зовут Алексей Севко, я ведущий разработчик программного обеспечения из команды Delivery & Performance Яндекс Go. В этой статье я расскажу почти детективную историю о том, как: — Искать иголку в стоге сена: когда падает закрытый бинарник Xcode. — Стать контрибьютором swift-build: почему иногда проще переписать системный поиск макросов в swift-build, чем ждать фикса от Apple. — Использовать свою версию билд-системы: как мы внедрили инфраструктуру прозрачной подмены компонентов Xcode через XCBBUILDSERVICE_PATH, чтобы не ждать релиза Xcode со Swift 6.3 и работать стабильно уже сегодня. Если ваш проект тоже перерос стандартные инструменты Apple или вам просто интересно, как превратить рекурсию в итерацию и не сойти с ума от 45-минутных дебаг-сессий, — добро пожаловать под кат!

https://habr.com/ru/companies/yandex/articles/1024298/

#мобильная_разработка #swift #xcode #xcodebuild

The Xcode build system has crashed, или Почему рекурсия — это плохо. Используем swift‑build со своими патчами

Представьте ситуацию: вы работаете в огромном проекте, где количество модулей давно перевалило за тысячу. Вы решаете обновиться до свежего Xcode 26.2, ожидая прироста...

Хабр
Speed up your Xcode test runs! This Tuist video shows how to run tests selectively with xcodebuild and Tuist, ensuring consistent results across environments. Short, practical, and perfect for iOS devs who want faster CI and local feedback. Level up your workflow! #Xcode #iOSDev #Testing #Tuist #xcodebuild #CI #Swift #English
https://videos.tuist.dev/videos/watch/07066c4c-4e58-4058-9c2d-c65b1dc5c574
Run tests selectively in your Xcode projects

PeerTube

Anyone else getting this? Seems to be a bug?

#xcode26 #xcodebuild #iOSDev

Ha ha ha ha! OK Xcode, lovely joke.

- Faster builds? Sure…

- Faster previews? Mmmkay…

- Code assistance? Uhuh… yeah.

Swift 6: 💯👌🏾, probably the only thing to look forward to.

But, let’s give it a try and find out!

#Xcode #SwiftLang #iOSDev #Xcodebuild

MacStadium: Cloud-MacMinis jetzt mit M4 und M4 Pro verfügbar
Der Cloud-Computing-Anbieter MacStadium erweitert sein Angebot um die neuesten Mac mini Modelle mit M4 und M4 Pro. Entwickler:innen und Unternehmen, die auf die Rechenleistung und Effizienz der neuen Apple Silicon Chips setzen, k
https://www.apfeltalk.de/magazin/news/macstadium-cloud-macminis-jetzt-mit-m4-und-m4-pro-verfuegbar/
#Mac #News #AppleSilicon #CloudComputing #M4Pro #MacMiniM4 #macOSEntwicklung #MacStadium #XcodeBuild
MacStadium: Cloud-MacMinis jetzt mit M4 und M4 Pro verfügbar

Der Cloud-Computing-Anbieter MacStadium erweitert sein Angebot um die neuesten Mac mini Modelle mit M4 und M4 Pro. Entwickler:innen und Unternehmen, die auf die Rechenleistung und Effizienz der neuen Apple Silicon Chips setzen, können diese Geräte jetzt mieten.

Apfeltalk Magazin

I had forgotten about apple's weird thing about developer tools. I was working in nvim and I kept getting warnings about #xcodebuild. When I exited, I found that git wasn't working and I needed to log in as root and use `sudo xcodebuild -license` to get back my #git.

I did that and then found that my commits couldn't be signed by my #gpg key and I had to temporarily move my `~/.gnupg/gpg-agent.conf`, run `gpgconf --kill gpgagent`, run `gpg --clearsign <<< "hello"` and re-enter my passphrase.

#xcodebuild taunts me with this warning. they are identical. Identical! I hoped fastlane scan or xcbeautify would parse this out, but the raw xcodebuild command is still throwing it, so, that'd be a band-aid at best.

```
--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:iOS Simulator, id:[…], OS:17.5, name:iPhone 15 Pro }
{ platform:iOS Simulator, id:[…], OS:17.5, name:iPhone 15 Pro }
```

Как я делаю build больших Android/iOS проектов со 128 GB памяти на старом Mac

Наверняка вы не раз сталкивались с проблемой нехватки памяти на вашем ПК при билде проектов? Недавно мне стало не хватать основной памяти на диске, где установлена система MacOS. Решением проблемы послужило приобретение внешнего SSD диска. Как же настроить работу билдов Android и iOS на внешнем диске и перенести все проекты и приложения? Об этом и пойдет речь в этой статье. Приятного чтения!

https://habr.com/ru/articles/816417/

#внешний_диск #gradle #кэш #kmp #xcodebuild #android_studio

Как я делаю build больших Android/iOS проектов со 128 GB памяти на старом Mac

Как я делаю build больших Android/iOS проектов со 128 GB памяти на старом Mac ✦ Introduction Всем привет! Наверняка вы не раз сталкивались с проблемой нехватки памяти на вашем ПК при билде проектов?...

Хабр
I think Apple should include a section called "Newly Introduced Issues & Crashes" in Xcode’s release notes. This is getting ridiculous.
As of version 15.4, xcodebuild now crashes systematically with a segfault when exporting a previously built archive from the command line. FB13797668 🤬 #apple #xcode #macos #development #xcodebuild