💡Якщо використовуєте SwiftUI, то, мабуть, знаєте про ScenePhase, які з’явилися ще в iOS 14. Це все про життєвий цикл додатка і роботу з ним. Для тих же цілей (приблизно) був і UIApplicationDelegateAdaptor. Ось стаття про всі ці взаємодії та про баги, які там є.
У статті розглядаються не лише iOS, а й macOS та баги, пов’язані з ними також.
👉 https://www.jessesquires.com/blog/2024/06/29/swiftui-scene-phase/
🇺🇦 iOSDevUA
У статті розглядаються не лише iOS, а й macOS та баги, пов’язані з ними також.
👉 https://www.jessesquires.com/blog/2024/06/29/swiftui-scene-phase/
🇺🇦 iOSDevUA
Jesse Squires
SwiftUI app lifecycle: issues with ScenePhase and using AppDelegate adaptors
SwiftUI introduced the ScenePhase API in iOS 14 and macOS 11. This was SwiftUI’s answer to handling application lifecycle events. At the same time, SwiftUI i...
❤1
💡Виявлення flaky тестів у Tuist
Tuist тепер вміє визначати тести, які дають неконсистентні результати, хоча ні сам тест, ні тестований код не змінювалися.
🇺🇦 iOSDevUA
Tuist тепер вміє визначати тести, які дають неконсистентні результати, хоча ні сам тест, ні тестований код не змінювалися.
🇺🇦 iOSDevUA
💡Issue Reporting – бібліотека для відображення попереджень у Xcode
Issue Reporting – нова бібліотека від Pointfree, яка допомагає швидко показувати попередження та асерти прямо з коду. Окрім відображення тултіпа, можна ще й автоматично активувати брейкпойнт у момент показу сповіщення.
🇺🇦 iOSDevUA
Issue Reporting – нова бібліотека від Pointfree, яка допомагає швидко показувати попередження та асерти прямо з коду. Окрім відображення тултіпа, можна ще й автоматично активувати брейкпойнт у момент показу сповіщення.
🇺🇦 iOSDevUA
Знаєте, що це за макрос
Якщо ні, то ось стаття з деталями про це!
👉 https://digitalbunker.dev/debug-description-macro-xcode-16/
🇺🇦 iOSDevUA
@DebugDescription у Xcode 16?Якщо ні, то ось стаття з деталями про це!
👉 https://digitalbunker.dev/debug-description-macro-xcode-16/
🇺🇦 iOSDevUA
Digital Bunker
Using @DebugDescription in Xcode 16
Learn how the CustomDebugStringConvertible protocol and @DebugDescription macro in Xcode 16 enhance debugging by providing clear, custom debug outputs.
😍1
💡Swift Navigation: інструменти навігації від PointFree
PointFree випустили у відкритий доступ бібліотеку Swift Navigation — набір потужних інструментів для всіх платформ Swift (як натхнення використовувалися принципи SwiftUI).
За допомогою бібліотеки можна керувати навігацією в SwiftUI, UIKit та AppKit. Більш того, її можна використовувати і для платформ, відмінних від Apple, таких як Windows, Linux, Wasm тощо.
🛠 Інструментарій вже доступний на GitHub (1 900 ⭐️)
Приклади роботи доступні тут:
📖 Case Studies — колекція прикладів SwiftUI та UIKit, що демонструють API цієї бібліотеки.
📖 Inventory — багатосторінковий додаток зі списками, спливаючими вікнами та сповіщеннями.
🇺🇦 iOSDevUA
PointFree випустили у відкритий доступ бібліотеку Swift Navigation — набір потужних інструментів для всіх платформ Swift (як натхнення використовувалися принципи SwiftUI).
За допомогою бібліотеки можна керувати навігацією в SwiftUI, UIKit та AppKit. Більш того, її можна використовувати і для платформ, відмінних від Apple, таких як Windows, Linux, Wasm тощо.
🛠 Інструментарій вже доступний на GitHub (1 900 ⭐️)
Приклади роботи доступні тут:
📖 Case Studies — колекція прикладів SwiftUI та UIKit, що демонструють API цієї бібліотеки.
📖 Inventory — багатосторінковий додаток зі списками, спливаючими вікнами та сповіщеннями.
🇺🇦 iOSDevUA
❤1
💡Swift Foundation доступний у Swift 6 Nightly
Пам’ятаєте план Apple переписати Foundation на Swift? Так от, частково переписаний Swift Foundation вже доступний у нічних збірках Swift 6, причому підтримує навіть Linux та Windows.
🇺🇦 iOSDevUA
Пам’ятаєте план Apple переписати Foundation на Swift? Так от, частково переписаний Swift Foundation вже доступний у нічних збірках Swift 6, причому підтримує навіть Linux та Windows.
🇺🇦 iOSDevUA
👍2
💡Як вирішити проблему з констрейнтами або як бути з помилками типу «will attempt to recover by breaking constraint»?
Багато хто вже використовує SwiftUI у продакшн або пет-проєктах. Незважаючи на це, UIKit нікуди не зникає, а проблеми з автолейаутом зустрічаються досить часто.
Хотів би нагадати про трюк, а точніше, мастхев-навичку при пошуку подібних проблемних в’ю за допомогою стандартних інструментів Xcode.
Якщо ви зустрінете таку помилку (або її варіації):
Запустіть View Debugger і вставте айдішник проблемної в’ю у поле пошуку зліва внизу. Xcode автоматично підсвітить її, і вже після цього ви зможете спокійно усунути цю проблему.
⭐️ А ще є надзвичайно корисний сайт, який часто може допомогти в таких ситуаціях.
🇺🇦 iOSDevUA
Багато хто вже використовує SwiftUI у продакшн або пет-проєктах. Незважаючи на це, UIKit нікуди не зникає, а проблеми з автолейаутом зустрічаються досить часто.
Хотів би нагадати про трюк, а точніше, мастхев-навичку при пошуку подібних проблемних в’ю за допомогою стандартних інструментів Xcode.
Якщо ви зустрінете таку помилку (або її варіації):
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0xb82d450 H:[UIButton:0xb82ad50]-(NSSpace(20))-| (Names: ‘|’:UIView:0xb82f360 )>
Запустіть View Debugger і вставте айдішник проблемної в’ю у поле пошуку зліва внизу. Xcode автоматично підсвітить її, і вже після цього ви зможете спокійно усунути цю проблему.
⭐️ А ще є надзвичайно корисний сайт, який часто може допомогти в таких ситуаціях.
🇺🇦 iOSDevUA
💡Конвертація XCTest у swift-testing
swift-testing-revolutionary – інструмент, який автоматично конвертує всі ваші XCTest у новий формат swift-testing. Працює як плагін для Xcode, так і як самостійний CLI тул. Поки що не підтримується ряд анотацій, але більшість тестів вже можуть бути сконвертовані.
🇺🇦 iOSDevUA
swift-testing-revolutionary – інструмент, який автоматично конвертує всі ваші XCTest у новий формат swift-testing. Працює як плагін для Xcode, так і як самостійний CLI тул. Поки що не підтримується ряд анотацій, але більшість тестів вже можуть бути сконвертовані.
🇺🇦 iOSDevUA
Hello iOS developers! New digest is here!
Hello everyone! New iOS weekly digest is here!
App design: 5 benefits of using system components
Building custom elements and ignoring the sometimes boring system components during app design can be appealing. However, these boring elements have many benefits you might not be aware of.
If you’ve read many of my technical articles, you might be surprised to hear that I’ve actually done a bachelor’s degree in Communication and Multimedia Design (CMD), also known as Interactive Media, in Amsterdam. I’ve had to teach myself coding on the side, resulting in a great mix of design and coding knowledge. In today’s article, I’ll share a few reasons why system components should not be overlooked:
https://www.avanderlee.com/optimization/app-design-5-benefits-of-using-system-components
Pickup in 3 minutes: Uber’s implementation of Live Activity on iOS
The 2022 WWDC keynote brought an unexpected surprise when Apple™ unveiled the new Live Activities feature, using Uber’s Rider app as a prominent example. This announcement generated excitement for the feature to come and set the stage for an exhilarating journey for our team.
What follows is the story of how we started designing for surfaces outside the app, the engineering problems we had to solve along the way, and ultimately how we measurably improved the experience of riders and drivers:
https://www.uber.com/en-LB/blog/live-activity-on-ios/?uclick_id=a322da25-5f8e-483c-ab44-fc54cb783c3c
Scrolling pickers in SwiftUI
Today we’ll be exploring the features that ScrollView carrying around since iOS 17 by building a value picker.
Breath some inspiration from this post and let’s get started:
https://uvolchyk.medium.com/scrolling-pickers-in-swiftui-de4a9c653fb6
Displaying Data with Table (Part I)
One of the most traditional ways of displaying data is through a table. Think about having to create one in a document, working with a spreadsheet, or (for the experienced dev) a database. That’s why the Table component is a powerful tool in the SwiftUI framework. It doesn’t take much code to get data beautifully laid out in our app.
A little more here and there and we can quickly add on features and styles to enhance the UX. We’ll explore that in Part II:
https://captainswiftui.substack.com/p/displaying-data-with-table-part-i
Olympic Logo in SwiftUI
https://medium.com/@alessandromanilii/olympic-logo-in-swiftui-dee37cbd53f1
How often do you use lazy keyword in your code? Maybe you need to refresh your knowledge about it? Here is the article for you
Lazy var in Swift explained with code examples
A lazy var is a property whose initial value is not calculated until the first time it’s called. It’s part of a family of properties in which we have constant properties, computed properties, and mutable properties.
A lazy property might be lesser known to beginners in Swift but are actually super valuable once you know when and how to use them. There are a few important things to learn so you know when to use which type of property:
https://www.avanderlee.com/swift/lazy-var-property
#Books
If you ever wondered about macOS development here is a book for you:
https://troz.net/books/macos_tutorials/
Hello everyone! New iOS weekly digest is here!
App design: 5 benefits of using system components
Building custom elements and ignoring the sometimes boring system components during app design can be appealing. However, these boring elements have many benefits you might not be aware of.
If you’ve read many of my technical articles, you might be surprised to hear that I’ve actually done a bachelor’s degree in Communication and Multimedia Design (CMD), also known as Interactive Media, in Amsterdam. I’ve had to teach myself coding on the side, resulting in a great mix of design and coding knowledge. In today’s article, I’ll share a few reasons why system components should not be overlooked:
https://www.avanderlee.com/optimization/app-design-5-benefits-of-using-system-components
Pickup in 3 minutes: Uber’s implementation of Live Activity on iOS
The 2022 WWDC keynote brought an unexpected surprise when Apple™ unveiled the new Live Activities feature, using Uber’s Rider app as a prominent example. This announcement generated excitement for the feature to come and set the stage for an exhilarating journey for our team.
What follows is the story of how we started designing for surfaces outside the app, the engineering problems we had to solve along the way, and ultimately how we measurably improved the experience of riders and drivers:
https://www.uber.com/en-LB/blog/live-activity-on-ios/?uclick_id=a322da25-5f8e-483c-ab44-fc54cb783c3c
Scrolling pickers in SwiftUI
Today we’ll be exploring the features that ScrollView carrying around since iOS 17 by building a value picker.
Breath some inspiration from this post and let’s get started:
https://uvolchyk.medium.com/scrolling-pickers-in-swiftui-de4a9c653fb6
Displaying Data with Table (Part I)
One of the most traditional ways of displaying data is through a table. Think about having to create one in a document, working with a spreadsheet, or (for the experienced dev) a database. That’s why the Table component is a powerful tool in the SwiftUI framework. It doesn’t take much code to get data beautifully laid out in our app.
A little more here and there and we can quickly add on features and styles to enhance the UX. We’ll explore that in Part II:
https://captainswiftui.substack.com/p/displaying-data-with-table-part-i
Olympic Logo in SwiftUI
https://medium.com/@alessandromanilii/olympic-logo-in-swiftui-dee37cbd53f1
How often do you use lazy keyword in your code? Maybe you need to refresh your knowledge about it? Here is the article for you
Lazy var in Swift explained with code examples
A lazy var is a property whose initial value is not calculated until the first time it’s called. It’s part of a family of properties in which we have constant properties, computed properties, and mutable properties.
A lazy property might be lesser known to beginners in Swift but are actually super valuable once you know when and how to use them. There are a few important things to learn so you know when to use which type of property:
https://www.avanderlee.com/swift/lazy-var-property
#Books
If you ever wondered about macOS development here is a book for you:
https://troz.net/books/macos_tutorials/
SwiftLee
App design: 5 benefits of using system components
Discover the crucial role of system components in app design for enhanced accessibility and user experience.
This media is not supported in your browser
VIEW IN TELEGRAM
💡Як автоматично виявляти memory leaks за допомогою UI-тестів
📖 Пол Піелла написав чудову розгорнуту статтю про те, як можна використовувати функціональність, доступну нам ще з Xcode 13 (тоді з’явилася опція xcodebuild, яка генерує memory graph кожного разу, коли тест XCTMemoryMetrics не проходить).
Ця функція залишилася непоміченою багатьма, хоча при правильному використанні це потужний інструмент для виявлення витоків пам’яті в додатках.
Саму статтю можна розбити на кілька важливих частин:
1️⃣ Написання самого тесту, що перевіряє використання пам’яті.
2️⃣ Генерація memory graph.
3️⃣ Аналіз результатів і розбір графа.
Тут стане в нагоді ще один матеріал про розбір вмісту XCResult.
🇺🇦 iOSDevUA
📖 Пол Піелла написав чудову розгорнуту статтю про те, як можна використовувати функціональність, доступну нам ще з Xcode 13 (тоді з’явилася опція xcodebuild, яка генерує memory graph кожного разу, коли тест XCTMemoryMetrics не проходить).
Ця функція залишилася непоміченою багатьма, хоча при правильному використанні це потужний інструмент для виявлення витоків пам’яті в додатках.
Саму статтю можна розбити на кілька важливих частин:
1️⃣ Написання самого тесту, що перевіряє використання пам’яті.
2️⃣ Генерація memory graph.
3️⃣ Аналіз результатів і розбір графа.
Тут стане в нагоді ще один матеріал про розбір вмісту XCResult.
🇺🇦 iOSDevUA
This media is not supported in your browser
VIEW IN TELEGRAM
💡Scrolling picker на SwiftUI
Гайд про те, як зробити компонент-рулетку на SwiftUI, яка буде скролитися завжди строго по сітці.
🇺🇦 iOSDevUA
Гайд про те, як зробити компонент-рулетку на SwiftUI, яка буде скролитися завжди строго по сітці.
🇺🇦 iOSDevUA
This media is not supported in your browser
VIEW IN TELEGRAM
💡Ще одне приємне нововведення в Xcode 16
🚀 Тепер в асетах можна знайти всі місця в проєкті, де використовується картинка, за кілька секунд.
Використання: тап правою кнопкою миші + Find References to Item.
Легко можна знайти зайві ресурси + уникнути потенційних помилок (та ще й трохи заощадити час).
🇺🇦 iOSDevUA
🚀 Тепер в асетах можна знайти всі місця в проєкті, де використовується картинка, за кілька секунд.
Використання: тап правою кнопкою миші + Find References to Item.
Легко можна знайти зайві ресурси + уникнути потенційних помилок (та ще й трохи заощадити час).
🇺🇦 iOSDevUA
👍2
💡Про
👉 https://www.massicotte.org/non-sendable
🇺🇦 iOSDevUA
non-sendable у Swift. Коли і чому це може бути корисно!👉 https://www.massicotte.org/non-sendable
🇺🇦 iOSDevUA
massicotte.org
Non-Sendable types are cool too you know
🚀 Ask WWDC – AI-пошук по всіх сесіях WWDC
Подивіться, який класний сервіс. Задаєш питання про будь-який API, отримуєш у відповідь витримку того, що про нього розповідали на WWDC, і посилання на всі релевантні сесії.
🇺🇦 iOSDevUA
Подивіться, який класний сервіс. Задаєш питання про будь-який API, отримуєш у відповідь витримку того, що про нього розповідали на WWDC, і посилання на всі релевантні сесії.
🇺🇦 iOSDevUA
Ask WWDC
Catching up on WWDC? Ask a question and we'll give you a concise summary and recommend the most relevant sessions to watch!
Hello iOS developers! New digest is here!
Hello everyone! New iOS weekly digest is here!
We all know about Swift for iOS, MacOS, watchOS development and even for backend development. But what about embedded? Here it is
Embedded Swift Tutorial - Getting Started (Everything you need to know)
Apple announced Embedded Swift development at WWDC 2024. This new development target allows you to start coding for non-Apple hardware using Swift:
https://blog.supereasyapps.com/embedded-swift-tutorial-getting-started-everything-you-need-to-know
Navigation Patterns in SwiftUI
Navigation has often been a challenge in SwiftUI applications. Initially, SwiftUI introduced NavigationView, which was later replaced by NavigationStack in iOS 16.
NavigationStack enhanced navigation by enabling dynamic and programmatic routing, and it also offered ways to centralize routes for the entire application. In this article, I’ll explore common navigation patterns that can be employed when building SwiftUI applications:
https://azamsharp.com/2024/07/29/navigation-patterns-in-swiftui.html
Entry Macro for Custom SwiftUI Environment Values
The Entry macro reduces the boilerplate when customizing the SwiftUI environment:
https://useyourloaf.com/blog/entry-macro-for-custom-swiftui-environment-values
How to upload assets using the App Store Connect API
When you create a new version of your app in App Store Connect, you might also need to upload new assets like screenshots or previews for the App Store. You can do this manually on the App Store Connect website, but if you have a lot of localizations to support and your assets change often across versions, this can be a tedious, error-prone, and time-consuming process:
https://www.runway.team/blog/how-to-upload-assets-using-the-app-store-connect-api
Truncating Text In SwiftUI
Text is the most common kind of content that apps contain. We deal with all sorts of text length everyday, but when it comes to long text we often need to cut it off and display just a part of it. Along with that, users usually get an option to expand and view the long text, or collapse and keep it truncated.
In this post we are going to demonstrate two ways that will let you achieve truncation easily, and an additional approach where you can simulate (fake) truncation by fetching and presenting a substring of the original string. As a bonus chapter, I’ll also show you how to expand and collapse truncated text, mostly because truncation and text expansion go together as features into an app:
https://serialcoder.dev/text-tutorials/swiftui/truncating-text-in-swiftui
Exploring SwiftUI: Using onScrollPhaseChange for Scroll Changes in iOS 18
https://www.rudrank.com/exploring-swiftui-using-onscrollphasechange
Hello everyone! New iOS weekly digest is here!
We all know about Swift for iOS, MacOS, watchOS development and even for backend development. But what about embedded? Here it is
Embedded Swift Tutorial - Getting Started (Everything you need to know)
Apple announced Embedded Swift development at WWDC 2024. This new development target allows you to start coding for non-Apple hardware using Swift:
https://blog.supereasyapps.com/embedded-swift-tutorial-getting-started-everything-you-need-to-know
Navigation Patterns in SwiftUI
Navigation has often been a challenge in SwiftUI applications. Initially, SwiftUI introduced NavigationView, which was later replaced by NavigationStack in iOS 16.
NavigationStack enhanced navigation by enabling dynamic and programmatic routing, and it also offered ways to centralize routes for the entire application. In this article, I’ll explore common navigation patterns that can be employed when building SwiftUI applications:
https://azamsharp.com/2024/07/29/navigation-patterns-in-swiftui.html
Entry Macro for Custom SwiftUI Environment Values
The Entry macro reduces the boilerplate when customizing the SwiftUI environment:
https://useyourloaf.com/blog/entry-macro-for-custom-swiftui-environment-values
How to upload assets using the App Store Connect API
When you create a new version of your app in App Store Connect, you might also need to upload new assets like screenshots or previews for the App Store. You can do this manually on the App Store Connect website, but if you have a lot of localizations to support and your assets change often across versions, this can be a tedious, error-prone, and time-consuming process:
https://www.runway.team/blog/how-to-upload-assets-using-the-app-store-connect-api
Truncating Text In SwiftUI
Text is the most common kind of content that apps contain. We deal with all sorts of text length everyday, but when it comes to long text we often need to cut it off and display just a part of it. Along with that, users usually get an option to expand and view the long text, or collapse and keep it truncated.
In this post we are going to demonstrate two ways that will let you achieve truncation easily, and an additional approach where you can simulate (fake) truncation by fetching and presenting a substring of the original string. As a bonus chapter, I’ll also show you how to expand and collapse truncated text, mostly because truncation and text expansion go together as features into an app:
https://serialcoder.dev/text-tutorials/swiftui/truncating-text-in-swiftui
Exploring SwiftUI: Using onScrollPhaseChange for Scroll Changes in iOS 18
https://www.rudrank.com/exploring-swiftui-using-onscrollphasechange
Super Easy Apps
Embedded Swift Tutorial - Getting Started (Everything you need to know)
Apple announced Embedded Swift development at WWDC 2024. This new development target allows you to start coding for non-Apple hardware using Swift.
I took a deep dive into Embedded Swift this week and shared two videos to kickstart any Embedded Swift project…
I took a deep dive into Embedded Swift this week and shared two videos to kickstart any Embedded Swift project…
💡Tuist Previews – швидкий спосіб поділитися білдом
Tuist випустили класну функцію. У консолі викликаєте команду
🇺🇦 iOSDevUA
Tuist випустили класну функцію. У консолі викликаєте команду
tuist share MyApp, вона завантажує ваш білд у хмару і видає URL. Цей URL можна поділитися з ким завгодно в команді, вставити в консоль, і додаток відразу ж запуститься на вашому симуляторі. Виглядає супер-зручно!🇺🇦 iOSDevUA
tuist.dev
Introducing Tuist Previews. A URL-centric approach to collaboration
Tuist Previews make it easy to share apps with anyone. Learn more about this new feature and what's coming next.
❤2
💡Підбірка доповідей з конференції Swift Craft
Swift Craft — конференція у Великобританії, яка пройшла в травні, а зараз на каналі з’явилися відео, з якими можна ознайомитися.
📺 Управління станами для iOS-додатків
Аракс Авоян розповідає про функціональне управління станами в додатках для iOS. У доповіді приділено увагу основам функціонального програмування (і наведені практичні приклади).
📺 Назад у майбутнє - Swift 6 Edition!
Пол Піелла Абадія підготував цю доповідь, у якій пояснює всі майбутні зміни, а також використовує кілька прикладів коду, щоб краще підготуватися до Swift 6 вже зараз.
📺 Математик розмірковує про макроси, @Models і ML
Деніел Стейнберг ділиться своїми роздумами, зокрема про те, як ми вирішуємо, чому вчитися і як вивчати нові речі, анонсовані кожного року на WWDC.
📺 Дата і час у Swift — обробка дати у програмуванні на Swift (буде доступно 21 серпня).
У цій доповіді буде розказано про взаємодію Date з датами, календарями, форматами, компонентами DateComponents, TimeZones та іншими корисними речами.
📖 Усі доповіді конференції доступні в цьому плейлисті.
🇺🇦 iOSDevUA
Swift Craft — конференція у Великобританії, яка пройшла в травні, а зараз на каналі з’явилися відео, з якими можна ознайомитися.
📺 Управління станами для iOS-додатків
Аракс Авоян розповідає про функціональне управління станами в додатках для iOS. У доповіді приділено увагу основам функціонального програмування (і наведені практичні приклади).
📺 Назад у майбутнє - Swift 6 Edition!
Пол Піелла Абадія підготував цю доповідь, у якій пояснює всі майбутні зміни, а також використовує кілька прикладів коду, щоб краще підготуватися до Swift 6 вже зараз.
📺 Математик розмірковує про макроси, @Models і ML
Деніел Стейнберг ділиться своїми роздумами, зокрема про те, як ми вирішуємо, чому вчитися і як вивчати нові речі, анонсовані кожного року на WWDC.
📺 Дата і час у Swift — обробка дати у програмуванні на Swift (буде доступно 21 серпня).
У цій доповіді буде розказано про взаємодію Date з датами, календарями, форматами, компонентами DateComponents, TimeZones та іншими корисними речами.
📖 Усі доповіді конференції доступні в цьому плейлисті.
🇺🇦 iOSDevUA
👍1
Минуло вже 9 років з моменту анонсу SPM (саме тоді почало сповільнюватися зростання CocoaPods). Незважаючи на це, CocoaPods продовжували залишатися надзвичайно популярними та затребуваними серед розробників.
ℹ️ Orta Therox написав велику публікацію, зокрема, торкаючись проблем із безпекою, а також зробив важливий анонс, у якому повідомив про майбутні плани з підтримки та обслуговування.
Тепер буде як мінімум два релізи на рік для підтримки змін у Xcode, будуть закривати всі можливі проблеми з безпекою та приділяти увагу тим PR, які орієнтовані на майбутнє.
Разом з цим більше не буде активного реагування на проблеми індивідуальних користувачів, і буде згорнуто активний розвиток проєкту. Крім того, вони не можуть гарантувати, що будуть розглянуті пулреквести, спрямовані лише на нові функції.
🇺🇦 iOSDevUA
Please open Telegram to view this post
VIEW IN TELEGRAM
blog.cocoapods.org
The Dependency Manager for iOS & Mac projects.
Назва статті говорить сама за себе.
Детально, з прикладами, а головне, дуже корисно для будь-якого проєкту. Залишилося тільки почати писати тести 😉
👉 https://www.polpiella.dev/automatically-detect-memory-leaks-using-ui-tests
🇺🇦 iOSDevUA
Детально, з прикладами, а головне, дуже корисно для будь-якого проєкту. Залишилося тільки почати писати тести 😉
👉 https://www.polpiella.dev/automatically-detect-memory-leaks-using-ui-tests
🇺🇦 iOSDevUA
www.polpiella.dev
How to automatically detect memory leaks on CI/CD using UI tests
Learn how to automatically detect memory leaks in your Apple apps using UI tests and Xcode's XCTest framework.
💡Браузер Ladybird перепишуть на Swift
Swift починають обирати на заміну C++ як альтернативу Rust у реальних проєктах. Цього разу про свій вибір розповідають розробники незалежного браузера Ladybird, ядро якого вони планують поступово переписати з C++ на Swift.
🇺🇦 iOSDevUA
Swift починають обирати на заміну C++ як альтернативу Rust у реальних проєктах. Цього разу про свій вибір розповідають розробники незалежного браузера Ladybird, ядро якого вони планують поступово переписати з C++ на Swift.
🇺🇦 iOSDevUA
X (formerly Twitter)
Andreas Kling (@awesomekling) on X
We've been evaluating a number of C++ successor languages for @ladybirdbrowser, and the one best suited to our needs appears to be @SwiftLang 🪶
Over the last few months, I've asked a bunch of folks to pick some little part of our project and try rewriting…
Over the last few months, I've asked a bunch of folks to pick some little part of our project and try rewriting…
❤1