This WWDC wishlist is focused around the frameworks and functionality that I’ve been working with over the last year or so. It is by no means comprehensive. I’ve also not included anything that I know to be around the corner, e.g. resources in Swift Package Manager.

Frameworks

BackgroundTasks :

  • The current implementation of BGAppRefreshTask gives developers the ability to schedule a task to start no earlier than than a specified time, e.g. 20 minutes in the future. However, iOS decides when to run that task which leads to wildly inconsistent refresh schedules on different devices based on usage patterns. I’d like to see BGAppRefreshTask improved with some form of guaranteed refresh schedule, e.g. three times a day. I spent a not inconsiderable amount of time trying to workaround the refresh schedules for NetNewsWire—including using Location Services—to no avail.

SwiftUI :

SwiftUI has rough edges and outright missing features. Below is what I’d like to see fixed or added:

  • A View should not completely reset when the TabBar selection is changed
  • Parity with UIKit classes:
    • List requires:
      • A UIRefreshControl equivalent
      • An inset-grouped style
      • Ability to style cells without resorting to UIAppearance
      • Ability to style separators
    • .contextMenu{ } functionality should match UIContextMenu
    • SwiftUI’s Color should have all of the system colours available to UIColor
    • Ability to style Toggle in the same ways UIToggle can be styled
    • A UICollectionView equivalent
    • A UISearchBar equivalent
    • A UIActivityIndicatorView equivalent
    • A UIPageControl equivalent

Operating Systems

macOS 10.16 — Anacapa (best guess)

  • Make SF Symbols available for Mac app development
  • Messages should have feature parity with its iOS counterpart, and improved search
  • FaceTime Group Calling needs an overhaul to match group calling features of competitors (at the very least, a static grid view)
  • My 16-inch MacBook Pro to not shut itself down when it’s put to sleep (workaround: disable Power Nap when on the charger) (Update [2020-06-05]: fixed in 10.15.5.)

iOS/iPad OS 14 :

  • FaceTime Group Calling needs an overhaul to match group calling features of competitors (at the very least, a static grid view)
  • Our own dynamic backgrounds
  • Better home screen management

Support Services

App Store Connect

  • Using CloudKit shouldn’t make it impossible to transfer an app
  • Standalone watchOS apps should not be classed as iOS apps