«Что нового в Swift» — кураторский дайджест релизов, видео и обсуждений в проекте и сообществе Swift.
Для начала мы остановимся на некоторых локальных группах встреч, которые делятся контентом о Swift:
«По всему миру локальные группы встреч и конференции объединяют разработчиков Swift, и некоторые из них появились даже раньше самого Swift! У многих есть каналы на YouTube, где они публикуют видео со своих мероприятий, так что вы можете подключаться удалённо. Давайте выделим несколько.
В мае на встрече SF Swift прошёл доклад Дэна Федермана «Agentify Your Swift Repo», в котором рассказывается о создании агента для CI и обратной связи при ревью кода. Swift Barcelona имеет своё представительство на YouTube, а некоторые группы, например новое сообщество MLX India, публикуют плейлисты мероприятий, включая недавний доклад об использовании MLX Swift в iOS-приложениях, который стоит посмотреть. Существует даже организованный сообществом YouTube-канал Swift Community Meetups, который проводит онлайн-встречи и содержит серию кросс-платформенных докладов о Swift.
Эти группы поддерживают разработчиков несколькими важными способами:
-
Локальное сообщество: они налаживают связи между разработчиками Swift и организациями на местах.
-
Пространство для экспериментов: благодаря менее формальному формату и иногда незавершённым проектам встречи создают пространство для обмена идеями, получения обратной связи и обучения друг у друга.
Я призываю больше людей участвовать в жизни местных Swift-сообществ. Если ваша группа начнёт публиковать контент и видео, пожалуйста, поделитесь этим на форумах Swift в категории Community Showcase.«
— Дэйв Лестер
А теперь к другим новостям о Swift:
Видео к просмотру
-
Интересуетесь использованием Swift для серверной разработки? Мохаммад Азам опубликовал запись прямого эфира «Введение в Hummingbird» — обзор веб-фреймворка, охватывающий установку и основы разработки.
-
«Знакомство с Temporal Swift SDK» с конференции Replay 2026 представляет SDK, который добавляет в Swift долговечные рабочие процессы Temporal (долго выполняющиеся процессы, которые переживают сбои, повторы и перезапуски без потери состояния). SDK недавно достиг версии 1.0.0.
-
Себастьен Стормак делится отличным введением в возможности AWS Lambda и Swift в докладе «Swift, серверная разработка и serverless» на YouTube-канале DevStandup.
Яркие моменты из сообщества
-
Swift и WebAssembly остаётся захватывающей частью проекта: регулярная активность публикуется на форумах Swift, включая последние обновления «Swift for Wasm за май 2026 года». А если вы пропустили, посмотрите новую статью в блоге Goodnotes о том, как они перенесли Goodnotes в веб с помощью Swift и WebAssembly.
-
Объявлена программа наставничества Swift 2026. У вас есть время до 15 июня 2026 года, чтобы заполнить опросник для участия в роли подопечного. Работа над контрибьюциями — это полезный способ обучения. И кстати, три проекта Swift были приняты в GSoC 2026.
-
«Обучение LLM на Swift, Часть 1» — Мэтт Галлахер улучшает ручное перемножение матриц для Swift-порта llm.c с 2,8 Gflop/s до 1,1 Tflop/s, ускорение в 382 раза, используя MutableSpan и InlineArray из Swift 6.2, Relaxed.multiplyAdd из Swift Numerics, DispatchQueue.concurrentPerform и, наконец, AMX и Metal. Подробный обзор оптимизации производительности в современном Swift.
-
Участники сообщества, использующие и развивающие VS Code Swift Extension, встретились в мае на Community Office Hours расширения, где были продемонстрированы использование Kiro и многое другое.
Новые выпуски пакетов
-
Хотите создать ИИ-агента на Swift? Swift Bedrock Library предоставляет библиотеку Swift для фундаментальных моделей Amazon Bedrock.
-
SwiftOSC — это набор инструментов для Open Sound Control (OSC), написанный на Swift, который недавно стал кросс-платформенным, теперь поддерживая Apple-платформы, Linux и Android. Это музыка для наших ушей! Стеффан Эндрюс, разработавший SwiftOSC, также выпустил другие музыкальные пакеты Swift, включая SwiftMIDI и SwiftTimecode.
-
Ordo One выпустила версию 1.33.0 пакета Benchmark для создания сложных тестов производительности Swift для широкого спектра метрик.
Эволюция Swift
Проект Swift добавляет новые языковые возможности через процесс Swift Evolution. Вот некоторые предложения, находящиеся на стадии рассмотрения или недавно принятые для будущего выпуска Swift.
На стадии активного рассмотрения:
-
SE-0532 Улучшения и обобщения для некопируемых опционалов — Опционал Swift может оборачивать некопируемые типы, но развертывание с помощью
if letпотребляет опционал, делая его непригодным для дальнейшего использования. Это предложение добавляет методыborrow()иmutate()в Optional, возвращающиеRef<Wrapped>?иMutableRef<Wrapped>?для проверки или изменения значения без его потребления, а также обобщаетmap,flatMapиunsafelyUnwrappedдля поддержки некопируемых обёрнутых типов.
Недавно принятые:
-
SE-0528 Безопасные и производительные асинхронные продолжения — При связывании API на основе колбэков со структурированной конкурентностью Swift разработчики сегодня должны выбирать между
UnsafeContinuation(где неправильное использование приводит к неопределённому поведению) иCheckedContinuation(который ловит ошибки ценой выделения памяти и атомарных операций). Это предложение добавляет типContinuation<Success, Failure>, который является~Copyable, делает двойной возобнов ошибкой компиляции, а пропущенный возобнов — ловушкой времени выполнения, без накладных расходов на быстром пути. -
SE-0519 Типы Ref и MutableRef для безопасных ссылок первого класса — Хранение ссылки на часть структуры данных в Swift сегодня требует либо класса (что добавляет накладные расходы на выделение в куче и подсчёт ссылок), либо
UnsafePointer(что небезопасно и требует предельной осторожности). Это предложение добавляет в стандартную библиотеку типыRef<T>иMutableRef<T>: безопасные типы, которые хранят разделяемые и исключительные ссылки на значение, пригодные для использования как локальные переменные, члены структур и параметры обобщённых типов. -
ST-0024 Повторение тестов — Swift Testing может повторять тесты заданное количество итераций или до достижения определённого условия успеха/неудачи, что полезно для поиска нестабильных падений. В настоящее время, если один тест вызывает условие, перезапускаются все тесты в цели, даже успешные. Это предложение изменяет повторение так, чтобы оно применялось для каждого теста, и добавляет флаги
--maximum-repetitionsи--repeat-untilв командуswift test.
ссылка на оригинал статьи https://habr.com/ru/articles/1043414/