Как деплоить в TestFlight напрямую из Codex Web
С появлением такой штуки, как асинхронные агенты, разрабатывать стало возможно вообще не трогая макбук. В статье разбирается, как с помощью Codex Web сделать PR, собрать его в Xcode Cloud, и сразу же залить для тестирования в TestFlight.
С появлением такой штуки, как асинхронные агенты, разрабатывать стало возможно вообще не трогая макбук. В статье разбирается, как с помощью Codex Web сделать PR, собрать его в Xcode Cloud, и сразу же залить для тестирования в TestFlight.
Medium
How to deploy TestFlight app from Codex Web automatically
Using Xcode Cloud workflow
👎24❤5
Dependency mirroring со SwiftPM
Swift Package Manager дает возможность подменять удаленные зависимости их локальными копиями прямо через CLI с помощью команды
👉Все делается через терминал, не нужно открывать Xcode и вручную перетаскивать папки
👉Не трогаем Package.swift, так как конфигурация зеркал хранится отдельно
👉Настройка зеркал работает сразу для всех проектов с этими зависимостями
Swift Package Manager дает возможность подменять удаленные зависимости их локальными копиями прямо через CLI с помощью команды
swift package config set-mirror. В чем плюсы:👉Все делается через терминал, не нужно открывать Xcode и вручную перетаскивать папки
👉Не трогаем Package.swift, так как конфигурация зеркал хранится отдельно
👉Настройка зеркал работает сразу для всех проектов с этими зависимостями
kunat.dev
Swift Package Manager Mirrors for Local Development
A dependency mirror refers to an alternate source location which exactly replicates the contents of the original source. [1]
I often end up in the same situation: I need to tweak an internal package that a project depends on. The usual options are:
Drag…
I often end up in the same situation: I need to tweak an internal package that a project depends on. The usual options are:
Drag…
1🔥18👍3❤1
Гайд по промптингу локальных моделей
Apple выпустили документацию по тому, как правильно составлять промпты для моделей, доступных через Foundation Models Framework – в том числе как делать так, чтобы модель лучше следовала инструкциям, и как выносить условную логику в код.
Apple выпустили документацию по тому, как правильно составлять промпты для моделей, доступных через Foundation Models Framework – в том числе как делать так, чтобы модель лучше следовала инструкциям, и как выносить условную логику в код.
Apple Developer Documentation
Prompting an on-device foundation model | Apple Developer Documentation
Tailor your prompts to get effective results from an on-device model.
👍22💅5👎2
Swift Language Reference в виде книги
Документацию по Swift красиво сверстали по всем типографским правилам и выложили в PDF, так что, если всегда хотели иметь ее как настольную книгу, возможность теперь есть!
Документацию по Swift красиво сверстали по всем типографским правилам и выложили в PDF, так что, если всегда хотели иметь ее как настольную книгу, возможность теперь есть!
GitHub
GitHub - peterfriese/swift-book: The Swift Programming Language book as a PDF!
The Swift Programming Language book as a PDF! Contribute to peterfriese/swift-book development by creating an account on GitHub.
1👍20💅1
Cupertino – MCP сервер для документации Apple
Cupertino вытаскивает информацию с кучи ресурсов, включая официальные доки, метаданные всех Swift Packages и HIG, индексирует их локально, и через MCP отдает как контекст AI агентам.
Cupertino вытаскивает информацию с кучи ресурсов, включая официальные доки, метаданные всех Swift Packages и HIG, индексирует их локально, и через MCP отдает как контекст AI агентам.
GitHub
GitHub - mihaelamj/cupertino: A local Apple Documentation crawler and MCP server. Written in Swift.
A local Apple Documentation crawler and MCP server. Written in Swift. - mihaelamj/cupertino
🔥41💅5👍3
Apple тестирует новое отображение рекламы в App Store
Apple начали тестировать новый вид отображения рекламных позиций в списке приложений, которые теперь полностью повторяют обычную карточку, за исключением маленькой иконки "Ad" в углу. Больше темных паттернов богу темных паттернов!
Apple начали тестировать новый вид отображения рекламных позиций в списке приложений, которые теперь полностью повторяют обычную карточку, за исключением маленькой иконки "Ad" в углу. Больше темных паттернов богу темных паттернов!
💅7👍1
Проблемы Tab Bar в iOS 26
В iOS 26 в таббаре появился новый специальный вид таба – поиск, который визуально отделен от остальной панели и в целом похож на кнопку. В том и кроется проблема – из-за этой похожести в кастомных реализациях таббара туда начинают добавлять другие действия – например, создание нового элемента, что будет путать пользователей еще сильнее.
В iOS 26 в таббаре появился новый специальный вид таба – поиск, который визуально отделен от остальной панели и в целом похож на кнопку. В том и кроется проблема – из-за этой похожести в кастомных реализациях таббара туда начинают добавлять другие действия – например, создание нового элемента, что будет путать пользователей еще сильнее.
👍12💅4👎2
Skip теперь бесплатный
Про Skip, набор инструментов для транспилирования Swift в Kotlin, мы на канале говорили довольно часто. Большого адопшна у ребят так и не случилось, но главное, чего они добились – добавили Android в список официальных таргетов Swift и запустили полноценную рабочую группу вокруг проекта.
Так вот, раньше большая часть Skip была закрытой и платной, а с этой недели бизнес-модель меняется, и все выкладывается в опенсорс. Основная причина – никто не хочет платить за инструменты для разработки. Выживет ли проект дальше, пока не очень понятно, будем следить.
Про Skip, набор инструментов для транспилирования Swift в Kotlin, мы на канале говорили довольно часто. Большого адопшна у ребят так и не случилось, но главное, чего они добились – добавили Android в список официальных таргетов Swift и запустили полноценную рабочую группу вокруг проекта.
Так вот, раньше большая часть Skip была закрытой и платной, а с этой недели бизнес-модель меняется, и все выкладывается в опенсорс. Основная причина – никто не хочет платить за инструменты для разработки. Выживет ли проект дальше, пока не очень понятно, будем следить.
❤17💅4
Кастомное поведение строковой интерполяции
Помимо простой подстановки значения, со строковой интерполяцией можно делать и более интересные вещи – например, прямо на ходу исполнять какую-то логику – форматировать значение правильным образом в зависимости от его типа, валидировать его, или применять условную логику.
Помимо простой подстановки значения, со строковой интерполяцией можно делать и более интересные вещи – например, прямо на ходу исполнять какую-то логику – форматировать значение правильным образом в зависимости от его типа, валидировать его, или применять условную логику.
Nil Coalescing
Defining custom string interpolation behavior in Swift
Extend Swift’s string interpolation to define custom behavior, such as value formatting, directly inside string literals.
👍7❤3
Советы про Universal Links
👉Обязательно валидируйте ваш AASA файл против JSON схемы на CI
👉Apple легко может закешировать некорректную версию файла на своих CDN, перепроверяйте
👉Существующие тулы плохо справляются с парсингом wildcard синтаксиса Apple, так что придется писать свой парсер
👉Тестируйте на реальном staging домене с https
👉Следите за кодировкой и не используйте percent encoding
👉Обязательно валидируйте ваш AASA файл против JSON схемы на CI
👉Apple легко может закешировать некорректную версию файла на своих CDN, перепроверяйте
👉Существующие тулы плохо справляются с парсингом wildcard синтаксиса Apple, так что придется писать свой парсер
👉Тестируйте на реальном staging домене с https
👉Следите за кодировкой и не используйте percent encoding
Alberto De Bortoli
Universal Links At Scale: The Challenges Nobody Talks About
A deep dive into the practical challenges of implementing, testing, and maintaining Universal Links at scale
❤17
Держите идею по борьбе с мошенниками для банковских приложений! Когда во время звонка кому-то вы открываете Revolut, то сверху появляется небольшой красный баннер, предупреждающий, что на звонке не техническая поддержка.
🔥83👍9❤2💅1
Как исправить баг в компиляторе Swift
Небольшая история про то, как даже тривиальный source-compatible багфикс в компилятор требует многих дней обсуждений и длинных циклов проверки на CI. Если где-то на дне вашего бэклога лежит план законтрибьютить в любимый язык – обязательно почитайте.
Небольшая история про то, как даже тривиальный source-compatible багфикс в компилятор требует многих дней обсуждений и длинных циклов проверки на CI. Если где-то на дне вашего бэклога лежит план законтрибьютить в любимый язык – обязательно почитайте.
massicotte.org
Swift Compiler Changes the Easy Way
The secret is to do as little of work yourself as possible.
🔥9❤4
Улучшаем интероп с С
Если вы пробовали работать с С библиотеками напрямую из Swift кода, то результат вам скорее всего не очень нравился. В посте разбирают, как различные Swift фичи помогают обернуть библиотеку на чистом С во вполне идиоматичный Swift API.
Если вы пробовали работать с С библиотеками напрямую из Swift кода, то результат вам скорее всего не очень нравился. В посте разбирают, как различные Swift фичи помогают обернуть библиотеку на чистом С во вполне идиоматичный Swift API.
Swift.org
Improving the usability of C libraries in Swift
There are many interesting, useful, and fun C libraries in the software ecosystem. While one could go and rewrite these libraries in Swift, usually there is no need, because Swift provides direct interoperability with C. With a little setup, you can directly…
👍8
Новых приложений в App Store стало намного больше
Впервые за много лет количество новых приложений, появившихся за месяц в App Store, существенно выросло. Все связывают это с тем, что с помощью агентов делать приложения стало намного проще.
Впервые за много лет количество новых приложений, появившихся за месяц в App Store, существенно выросло. Все связывают это с тем, что с помощью агентов делать приложения стало намного проще.
2💅19👎3❤2
Как работает генерация UUID в Swift
Разбираемся с тремя подходами к генерации UUID – на основе таймстемпа, рандомизации, и смеси этих подходов.
Разбираемся с тремя подходами к генерации UUID – на основе таймстемпа, рандомизации, и смеси этих подходов.
👍25
FlowDeck – CLI инструменты для iOS разработки
Все больше и больше кода пишется не в IDE, а прямо внутри терминала с помощью Claude Code, Codex и других агентов. iOS разработка, как водится, страдает больше других стеков, так как для многих задач нужен Xcode.
FlowDeck – набор инструментов, которые позволяют выполнять все основные сценарии вокруг iOS разработки, не выходя из консоли – билдить, тестировать и запускать приложение, управлять симуляторами, программно управлять UI, стримить логи и кучу чего еще. Все адаптировано под использование не только людьми, но и агентами.
Пока платно, но можно попробовать бесплатно и понять, нужно ли вам.
Все больше и больше кода пишется не в IDE, а прямо внутри терминала с помощью Claude Code, Codex и других агентов. iOS разработка, как водится, страдает больше других стеков, так как для многих задач нужен Xcode.
FlowDeck – набор инструментов, которые позволяют выполнять все основные сценарии вокруг iOS разработки, не выходя из консоли – билдить, тестировать и запускать приложение, управлять симуляторами, программно управлять UI, стримить логи и кучу чего еще. Все адаптировано под использование не только людьми, но и агентами.
Пока платно, но можно попробовать бесплатно и понять, нужно ли вам.
FlowDeck
FlowDeck — The Apple Development CLI. Finally.
Builds. Tests. Simulators. Devices. Logs. Same commands in terminal, CI, or your favorite editor.
👎27❤6💅2
🤖 AI в практике разработчиков: новый сезон Podlodka AI Crew
«Мы поигрались с промптом, но пока не внедряли» — часто разговоры про AI в разработке заканчиваются именно так.
Инструментов всё больше, а вот времени на то, чтобы разобраться и сделать так, чтобы магия заработала, порой не хватает.
С 16 по 20 февраля у Podlodka AI Crew пройдёт сезон «AI-агенты в разработке»: проверенные рабочие сценарии от практиков индустрии.
👀 В программе:
• единый AI-workflow для разработчика
• автоматизация стендапов и работы с документацией
• Claude Code, субагенты для кодинга
• практические кейсы внедрения AI в SRE
• подходы к созданию промптов с насыщенным контекстом
Формат — классический для Podlodka Crew: 5 дней, 10+ спикеров, 10 сессий и закрытое комьюнити в Telegram.
Отдельный плюс — цена: заметно ниже привычных конференций, при этом контента много, и он ориентирован на практику.
👉🏻Если тема AI в разработке вам интересна и хочется меньше хайпа, больше дела — держите ссылку.
До 10 февраля можно забрать билет по early-bird цене!🎁
«Мы поигрались с промптом, но пока не внедряли» — часто разговоры про AI в разработке заканчиваются именно так.
Инструментов всё больше, а вот времени на то, чтобы разобраться и сделать так, чтобы магия заработала, порой не хватает.
С 16 по 20 февраля у Podlodka AI Crew пройдёт сезон «AI-агенты в разработке»: проверенные рабочие сценарии от практиков индустрии.
👀 В программе:
• единый AI-workflow для разработчика
• автоматизация стендапов и работы с документацией
• Claude Code, субагенты для кодинга
• практические кейсы внедрения AI в SRE
• подходы к созданию промптов с насыщенным контекстом
Формат — классический для Podlodka Crew: 5 дней, 10+ спикеров, 10 сессий и закрытое комьюнити в Telegram.
Отдельный плюс — цена: заметно ниже привычных конференций, при этом контента много, и он ориентирован на практику.
👉🏻Если тема AI в разработке вам интересна и хочется меньше хайпа, больше дела — держите ссылку.
До 10 февраля можно забрать билет по early-bird цене!🎁
👎17💅5❤2
В Xcode появились агенты
На неделе неожиданно вышло крупное обновление Xcode, и в нем наконец-то добавили, кажется, нормальную интеграцию с агентами вроде Codex и Claude Code. У агентов есть доступ ко многим фичам вроде поиска файлов, сборки проекта и работы с превью (полный спимок на скрине).
А если вы хотите работать с агентами из какого-то другого интерфейса, то можете использовать все это через MCP.
На неделе неожиданно вышло крупное обновление Xcode, и в нем наконец-то добавили, кажется, нормальную интеграцию с агентами вроде Codex и Claude Code. У агентов есть доступ ко многим фичам вроде поиска файлов, сборки проекта и работы с превью (полный спимок на скрине).
А если вы хотите работать с агентами из какого-то другого интерфейса, то можете использовать все это через MCP.
🔥37👎10👍6❤3
FabBar – правильный Liquid Glass TabBar
Помните недавнюю статью про то, что не так с таббаром в Liquid Glass? Ее автор не стал сидеть, сложа руки, и опубликовал FabBar – кастомный компонент, в котором решена проблема больающейся сбоку кнопки действия.
Помните недавнюю статью про то, что не так с таббаром в Liquid Glass? Ее автор не стал сидеть, сложа руки, и опубликовал FabBar – кастомный компонент, в котором решена проблема больающейся сбоку кнопки действия.
👎42💅9🔥2👍1