Что нового в Swift 6.1?
Swift 6.1 официально выпущен! В этой версии представлены новые возможности языка, улучшения диагностики, поддержка package traits, а также продолжается работа над удобством обеспечения потокобезопасности и сокращением времени компиляции. Ниже мы рассмотрим ключевые нововведения в языке, пакете и инструментах.
Улучшения языка и стандартной библиотеки
📌 Конкурентность (Concurrency)
Swift 6.1 расширяет использование nonisolated. Теперь это ключевое слово можно применять не только к отдельным свойствам и методам, но и ко всему типу или расширению. Это позволяет исключить автоматическую привязку к @MainActor и не дублировать nonisolated в каждом методе:
Также улучшена типизация в withTaskGroup, теперь Swift сам выводит тип результата, и его больше не нужно указывать явно:
🧩 Реализация Objective-C в Swift
Добавлен новый атрибут @implementation, который позволяет реализовать Objective-C классы или категории в Swift, сохраняя совместимость и упрощая миграцию:
💡 Повышение продуктивности
Swift 6.1 расширяет поддержку висячих запятых — теперь их можно использовать не только в массивах, но и в кортежах, списках параметров и замыканиях:
Это особенно полезно для авто-генерации кода плагинами и макросами.
📦 Улучшения Swift Package Manager
Swift 6.1 представляет package traits — механизм условной конфигурации пакетов в зависимости от окружения (например, Embedded Swift или WebAssembly):
Также включен фоновый индекс SourceKit-LSP, что ускоряет навигацию по коду даже без полной сборки проекта.
🧪 Swift Testing
Добавлена поддержка настраиваемых трейтов для тестов, позволяющая внедрять логику до и после выполнения тестов:
Также обновлены макросы #expect(throws:) и #require(throws:), теперь они возвращают перехваченные ошибки — это упростит отладку.
📚 Swift-DocC
В документации теперь проще ссылаться на перегруженные методы — можно использовать типы параметров и возвращаемого значения вместо нечитаемых хэшей:
Это упрощает написание и поддержку документации.
📥 Установка Swift 6.1
Swift 6.1 включён в Xcode 16.3, доступный в Mac App Store. Также вы можете установить его отдельно через менеджер версий swiftly, работающий на macOS и Linux. Подробнее — на странице Install Swift.