home.social

#iosdev — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #iosdev, aggregated by home.social.

  1. Oh this is useful, swift-argument-parser has an `AsyncParsableCommand` which is basically a drop-in replacement for `ParsableCommand` with async support!

    Too bad it doesn't support `CommandConfiguration` 🥲

    Today I've also learned you can rename your main.swift to something else and use the `@main` attribute on the struct conforming to `ParsableCommand`, instead of calling its `main` function.

    apple.github.io/swift-argument

  2. Oh this is useful, swift-argument-parser has an `AsyncParsableCommand` which is basically a drop-in replacement for `ParsableCommand` with async support!

    Too bad it doesn't support `CommandConfiguration` 🥲

    Today I've also learned you can rename your main.swift to something else and use the `@main` attribute on the struct conforming to `ParsableCommand`, instead of calling its `main` function.

    apple.github.io/swift-argument

    #iOSDev #SwiftLang

  3. Oh this is useful, swift-argument-parser has an `AsyncParsableCommand` which is basically a drop-in replacement for `ParsableCommand` with async support!

    Too bad it doesn't support `CommandConfiguration` 🥲

    Today I've also learned you can rename your main.swift to something else and use the `@main` attribute on the struct conforming to `ParsableCommand`, instead of calling its `main` function.

    apple.github.io/swift-argument

    #iOSDev #SwiftLang

  4. Oh this is useful, swift-argument-parser has an `AsyncParsableCommand` which is basically a drop-in replacement for `ParsableCommand` with async support!

    Too bad it doesn't support `CommandConfiguration` 🥲

    Today I've also learned you can rename your main.swift to something else and use the `@main` attribute on the struct conforming to `ParsableCommand`, instead of calling its `main` function.

    apple.github.io/swift-argument

    #iOSDev #SwiftLang

  5. Oh this is useful, swift-argument-parser has an `AsyncParsableCommand` which is basically a drop-in replacement for `ParsableCommand` with async support!

    Too bad it doesn't support `CommandConfiguration` 🥲

    Today I've also learned you can rename your main.swift to something else and use the `@main` attribute on the struct conforming to `ParsableCommand`, instead of calling its `main` function.

    apple.github.io/swift-argument

    #iOSDev #SwiftLang

  6. Parameterized test output in SwiftTesting can be opaque. Conforming to 𝐶𝑢𝑠𝑡𝑜𝑚𝑇𝑒𝑠𝑡𝑆𝑡𝑟𝑖𝑛𝑔𝐶𝑜𝑛𝑣𝑒𝑟𝑡𝑖𝑏𝑙𝑒 produces clear descriptions of exactly which parameters caused a failure.

    🔗: craftingswift.dev/articles/imp by Felipe Espinoza

    #SwiftTesting #Testing #iOSDev

  7. Parameterized test output in SwiftTesting can be opaque. Conforming to 𝐶𝑢𝑠𝑡𝑜𝑚𝑇𝑒𝑠𝑡𝑆𝑡𝑟𝑖𝑛𝑔𝐶𝑜𝑛𝑣𝑒𝑟𝑡𝑖𝑏𝑙𝑒 produces clear descriptions of exactly which parameters caused a failure.

    🔗: craftingswift.dev/articles/imp by Felipe Espinoza

    #SwiftTesting #Testing #iOSDev

  8. Parameterized test output in SwiftTesting can be opaque. Conforming to 𝐶𝑢𝑠𝑡𝑜𝑚𝑇𝑒𝑠𝑡𝑆𝑡𝑟𝑖𝑛𝑔𝐶𝑜𝑛𝑣𝑒𝑟𝑡𝑖𝑏𝑙𝑒 produces clear descriptions of exactly which parameters caused a failure.

    🔗: craftingswift.dev/articles/imp by Felipe Espinoza

    #SwiftTesting #Testing #iOSDev

  9. Parameterized test output in SwiftTesting can be opaque. Conforming to 𝐶𝑢𝑠𝑡𝑜𝑚𝑇𝑒𝑠𝑡𝑆𝑡𝑟𝑖𝑛𝑔𝐶𝑜𝑛𝑣𝑒𝑟𝑡𝑖𝑏𝑙𝑒 produces clear descriptions of exactly which parameters caused a failure.

    🔗: craftingswift.dev/articles/imp by Felipe Espinoza

    #SwiftTesting #Testing #iOSDev

  10. #buildInPublic #iosDev #coreData #swiftTesting

    Since I’m eventually going to have to take a populated database and convert it from the old model to the new model, I’m going to tag the current repo so I can come back to it and build my test data. I should build a test database now that covers all the cases, but I am pretty sure that I’ll think of more as I go along.

    Nevertheless, first order of business is to build some infrastructure to populate the test database.

    2/n

  11. #buildInPublic #iosDev #coreData #swiftTesting

    Since I’m eventually going to have to take a populated database and convert it from the old model to the new model, I’m going to tag the current repo so I can come back to it and build my test data. I should build a test database now that covers all the cases, but I am pretty sure that I’ll think of more as I go along.

    Nevertheless, first order of business is to build some infrastructure to populate the test database.

    2/n

  12. #buildInPublic #iosDev #coreData #swiftTesting

    Since I’m eventually going to have to take a populated database and convert it from the old model to the new model, I’m going to tag the current repo so I can come back to it and build my test data. I should build a test database now that covers all the cases, but I am pretty sure that I’ll think of more as I go along.

    Nevertheless, first order of business is to build some infrastructure to populate the test database.

    2/n

  13. #buildInPublic #iosDev #coreData #swiftTesting

    Since I’m eventually going to have to take a populated database and convert it from the old model to the new model, I’m going to tag the current repo so I can come back to it and build my test data. I should build a test database now that covers all the cases, but I am pretty sure that I’ll think of more as I go along.

    Nevertheless, first order of business is to build some infrastructure to populate the test database.

    2/n

  14. #buildInPublic #iosDev
    Back to this after a hiatus of several weeks. Starting a new thread

    previous thread is here mastodon.social/@Tom_frog/1156

    I'm going to need to develop the alternate #coreData model described in the previous thread, then develop a data migration. Finally, I’ll need to sync and deduplicate. I will use the the #swiftTesting functions I added in the first phase to test the migration.

    staying well away from AI since I want to actually understand what I’m doing at the end.

    1/n

  15. #buildInPublic #iosDev
    Back to this after a hiatus of several weeks. Starting a new thread

    previous thread is here mastodon.social/@Tom_frog/1156

    I'm going to need to develop the alternate #coreData model described in the previous thread, then develop a data migration. Finally, I’ll need to sync and deduplicate. I will use the the #swiftTesting functions I added in the first phase to test the migration.

    staying well away from AI since I want to actually understand what I’m doing at the end.

    1/n

  16. #buildInPublic #iosDev
    Back to this after a hiatus of several weeks. Starting a new thread

    previous thread is here mastodon.social/@Tom_frog/1156

    I'm going to need to develop the alternate #coreData model described in the previous thread, then develop a data migration. Finally, I’ll need to sync and deduplicate. I will use the the #swiftTesting functions I added in the first phase to test the migration.

    staying well away from AI since I want to actually understand what I’m doing at the end.

    1/n

  17. #buildInPublic #iosDev
    Back to this after a hiatus of several weeks. Starting a new thread

    previous thread is here mastodon.social/@Tom_frog/1156

    I'm going to need to develop the alternate #coreData model described in the previous thread, then develop a data migration. Finally, I’ll need to sync and deduplicate. I will use the the #swiftTesting functions I added in the first phase to test the migration.

    staying well away from AI since I want to actually understand what I’m doing at the end.

    1/n

  18. My agents barely need Xcode's UI — they need its services.

    A menu-bar daemon: every UI-only operation as MCP (preview targets, adding targets, settings), plus build queueing and nightly sim cleanup.

    One of my top wishes for #WWDC26:
    fline.dev/blog/my-top-5-ai-wis

    #iOSDev #macOS #WWDC #Xcode #MCP

  19. My agents barely need Xcode's UI — they need its services.

    A menu-bar daemon: every UI-only operation as MCP (preview targets, adding targets, settings), plus build queueing and nightly sim cleanup.

    One of my top wishes for #WWDC26:
    fline.dev/blog/my-top-5-ai-wis

    #iOSDev #macOS #WWDC #Xcode #MCP

  20. My agents barely need Xcode's UI — they need its services.

    A menu-bar daemon: every UI-only operation as MCP (preview targets, adding targets, settings), plus build queueing and nightly sim cleanup.

    One of my top wishes for #WWDC26:
    fline.dev/blog/my-top-5-ai-wis

    #iOSDev #macOS #WWDC #Xcode #MCP

  21. My agents barely need Xcode's UI — they need its services.

    A menu-bar daemon: every UI-only operation as MCP (preview targets, adding targets, settings), plus build queueing and nightly sim cleanup.

    One of my top wishes for #WWDC26:
    fline.dev/blog/my-top-5-ai-wis

    #iOSDev #macOS #WWDC #Xcode #MCP

  22. My agents barely need Xcode's UI — they need its services.

    A menu-bar daemon: every UI-only operation as MCP (preview targets, adding targets, settings), plus build queueing and nightly sim cleanup.

    One of my top wishes for #WWDC26:
    fline.dev/blog/my-top-5-ai-wis

    #iOSDev #macOS #WWDC #Xcode #MCP

  23. Want your app's data to stay fresh even when it's in the background? This guide covers everything from registering task identifiers and scheduling 𝐵𝐺𝐴𝑝𝑝𝑅𝑒𝑓𝑟𝑒𝑠ℎ𝑇𝑎𝑠𝑘𝑅𝑒𝑞𝑢𝑒𝑠𝑡 to handling tasks with the .𝑏𝑎𝑐𝑘𝑔𝑟𝑜𝑢𝑛𝑑𝑇𝑎𝑠𝑘 modifier and testing via Xcode debugger.

    🔗: nilcoalescing.com/blog/Schedul by Natalia Panferova (@natpanferova)

    #SwiftUI #BackgroundTasks #iOSDev

  24. Proxygen 5.2 is available with lots of tooling updates.

    ⤴️ Rewrites can now override target address so you can map requests to any destination.

    🔍 Transparent proxying is finally available. It lets you inspect non-proxy-aware clients.

    🗝️ TLS key logging allows decrypting captured traffic in Wireshark.

    Download at
    proxygen.app

    #swiftlang #macdev #iosdev

  25. Proxygen 5.2 is available with lots of tooling updates.

    ⤴️ Rewrites can now override target address so you can map requests to any destination.

    🔍 Transparent proxying is finally available. It lets you inspect non-proxy-aware clients.

    🗝️ TLS key logging allows decrypting captured traffic in Wireshark.

    Download at
    proxygen.app

    #swiftlang #macdev #iosdev

  26. Proxygen 5.2 is available with lots of tooling updates.

    ⤴️ Rewrites can now override target address so you can map requests to any destination.

    🔍 Transparent proxying is finally available. It lets you inspect non-proxy-aware clients.

    🗝️ TLS key logging allows decrypting captured traffic in Wireshark.

    Download at
    proxygen.app

    #swiftlang #macdev #iosdev

  27. Proxygen 5.2 is available with lots of tooling updates.

    ⤴️ Rewrites can now override target address so you can map requests to any destination.

    🔍 Transparent proxying is finally available. It lets you inspect non-proxy-aware clients.

    🗝️ TLS key logging allows decrypting captured traffic in Wireshark.

    Download at
    proxygen.app

    #swiftlang #macdev #iosdev

  28. Proxygen 5.2 is available with lots of tooling updates.

    ⤴️ Rewrites can now override target address so you can map requests to any destination.

    🔍 Transparent proxying is finally available. It lets you inspect non-proxy-aware clients.

    🗝️ TLS key logging allows decrypting captured traffic in Wireshark.

    Download at
    proxygen.app

    #swiftlang #macdev #iosdev

  29. Local LLMs are powerful now. Problem: each app bundles its own, and installing them is too hard for users.

    Make it system-level: one place to install models, apps declare requirements, the system picks per device.

    One of my top wishes for #WWDC26:
    fline.dev/blog/my-top-5-ai-wis

    #iOSDev #macOS #visionOS #WWDC

  30. Local LLMs are powerful now. Problem: each app bundles its own, and installing them is too hard for users.

    Make it system-level: one place to install models, apps declare requirements, the system picks per device.

    One of my top wishes for #WWDC26:
    fline.dev/blog/my-top-5-ai-wis

    #iOSDev #macOS #visionOS #WWDC

  31. Local LLMs are powerful now. Problem: each app bundles its own, and installing them is too hard for users.

    Make it system-level: one place to install models, apps declare requirements, the system picks per device.

    One of my top wishes for #WWDC26:
    fline.dev/blog/my-top-5-ai-wis

    #iOSDev #macOS #visionOS #WWDC

  32. Local LLMs are powerful now. Problem: each app bundles its own, and installing them is too hard for users.

    Make it system-level: one place to install models, apps declare requirements, the system picks per device.

    One of my top wishes for #WWDC26:
    fline.dev/blog/my-top-5-ai-wis

    #iOSDev #macOS #visionOS #WWDC

  33. Local LLMs are powerful now. Problem: each app bundles its own, and installing them is too hard for users.

    Make it system-level: one place to install models, apps declare requirements, the system picks per device.

    One of my top wishes for #WWDC26:
    fline.dev/blog/my-top-5-ai-wis

    #iOSDev #macOS #visionOS #WWDC

  34. 📢 𝗜𝘀𝘀𝘂𝗲 𝟵𝟭 𝗶𝘀 𝗼𝘂𝘁!

    On the agenda:
    ⚡ 𝑇𝑎𝑠𝑘 𝑠𝑢𝑠𝑝𝑒𝑛𝑠𝑖𝑜𝑛 𝑝𝑜𝑖𝑛𝑡𝑠
    🔒 𝐴𝑐𝑡𝑜𝑟𝑠 𝑣𝑠 𝑄𝑢𝑒𝑢𝑒𝑠 𝑣𝑠 𝐿𝑜𝑐𝑘𝑠
    ♿ 𝐴𝑢𝑑𝑖𝑜 𝐷𝑒𝑠𝑐𝑟𝑖𝑝𝑡𝑖𝑜𝑛𝑠
    🔄 𝐵𝑎𝑐𝑘𝑔𝑟𝑜𝑢𝑛𝑑 𝑎𝑝𝑝 𝑟𝑒𝑓𝑟𝑒𝑠ℎ
    📱 𝐴𝑐𝑐𝑒𝑙𝑒𝑟𝑜𝑚𝑒𝑡𝑒𝑟-𝑑𝑟𝑖𝑣𝑒𝑛 𝑣𝑖𝑒𝑤𝑠
    💡 𝐺𝑒𝑛𝑒𝑟𝑎𝑏𝑙𝑒 + 𝐼𝑑𝑒𝑛𝑡𝑖𝑓𝑖𝑎𝑏𝑙𝑒 𝑡𝑖𝑝
    🖥️ 𝑀𝑎𝑐𝐹𝑎𝑛𝑠𝐶𝑜𝑛𝑡𝑟𝑜𝑙
    🌐 𝑊𝑒𝑏𝐾𝑖𝑡 𝑓𝑜𝑟 𝑆𝑤𝑖𝑓𝑡𝑈𝐼

    🔗: ios-newsletter.snappmobile.io/ by @snappmobile

    #iOSDev #SwiftLang #SwiftUI