Раньше отладчик LLDB искал Swift-модули по их базовому имени, что вызывало неточности и приводило к долгой перекомпиляции зависимостей на лету. Теперь в компиляторе появился новый флаг
-debug-module-path, сохраняющий точный путь к модулю напрямую в генерируемой отладочной инфе.Для нас это ознчает, что процесс отладки тяжёлых проектов станет значительно быстрее и стабильнее, так как LLDB больше не нужно тратить время на угадывание расположения файлов.
Это нововведение должно уменьшить размер финальных бинарников на Linux и Windows, а также бандлов dSYM на платформах Apple.
Помимо этого, устаревшие флаги
-modulewrap и -add_ast_path уходят в прошлое, так как тяжеловесные бинарные модули больше не нужно дублировать и встраивать в отладочные файлы.Тем, кто поддерживает кастомные системы сборки вроде Bazel или CMake, потребуется немного обновить свои скрипты, прописав новый флаг вместо старых.
И, как бонус, в релизе Swift 6.4 есть ускоренный импорт bridging headers.
📖 Целиком разбор можно посмотреть на сайте Apple.
😃 iOS Dev
