Skip to content

Rolf Xcode 9 API review

Rolf Bjarne Kvinge edited this page Sep 14, 2017 · 2 revisions
  • Review tasks:
    • Review api definition & custom code for:

      • FIXMEs / TODOs
      • obsolete
      • stuff that looks weird
      • long objc-looking names
      • extraneous models
      • non-internal fields
      • async candidates
      • designated initializers
      • candidates for abstract types
      • method should have verbs
    • Review api diff for:

      • stuff that looks weird
      • long objc-looking names
      • obsolete
      • extraneous models
      • non-internal fields
      • async candidates

https://gist.github.com/spouliot/ed4d466d733dfe1ee4b21b4317e370a1

Global

  • Review api definition & custom code for:

    • FIXMEs / TODOs
    • [?] obsolete
    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

Template

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

Vision

✅ No changes needed.

CoreNFC

✅ No changes needed.

IdentityLookup

✅ No changes needed.

Messages

✅ No changes needed.

MetalPerformanceShaders

✅ No changes needed.

MultipeerConnectivity

✅ No changes needed.

NotificationCenter

✅ No changes needed.

OpenGLES

✅ No changes needed.

PushKit

✅ No changes needed.

QuickLook

✅ No changes needed.

TVMLKit

✅ No changes needed.

VideoSubscriberAccount

✅ No changes needed.

UserNotifications

✅ No changes needed.

WatchKit

✅ No changes needed.

MessageUI

✅ No changes needed.

MediaLibrary

✅ No changes needed.

iAd

✅ No changes needed.

GameController

✅ No changes needed.

FinderSync

✅ No changes needed.

WebKit

✅ No changes needed.

WKWebKit

✅ No changes needed.

UIKit

✅ No changes needed.

DeviceCheck

PR #2642

CoreTelephony

✅ No changes needed.

CoreNFC

pending

CoreMotion

✅ No changes needed.

CoreML

pending

CoreLocation

✅ No changes needed.

CoreImage

✅ No changes needed (but a bunch of TODOS for new filters).

CoreData

✅ No changes needed.

CoreAudioKit

✅ No changes needed.

CloudKit

✅ No changes needed.

ClockKit

✅ No changes needed.

CallKit

✅ No changes needed.

AVKit

✅ No changes needed.

AssetsLibrary

✅ No changes needed.

AddressbookUI

✅ No changes needed.

Accounts

✅ No changes needed.

Twitter

✅ No changes needed.

TVServices

✅ No changes needed.

StoreKit

✅ No changes needed.

SpriteKit

✅ No changes needed.

Social

✅ No changes needed.

Security

✅ No changes needed.

SceneKit

✅ No changes needed.

SafariServices

✅ No changes needed.

  • Review api definition & custom code for:

    • x] obsolete
    • x] stuff that looks weird
    • x] long objc-looking names
    • x] non-internal fields
    • x] async candidates
    • x] designated initializers
    • x] candidates for abstract types
    • x] method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

ReplayKit

PR #2639

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

PhotosUI

✅ No changes needed.

  • Review api definition & custom code for:

    • x] obsolete
    • x] stuff that looks weird
    • x] long objc-looking names
    • x] non-internal fields
    • x] async candidates
    • x] designated initializers
    • x] candidates for abstract types
    • x] method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

Photos

✅ No changes needed.

  • Review api definition & custom code for:

    • x] obsolete
    • x] stuff that looks weird
    • x] long objc-looking names
    • x] non-internal fields
    • x] async candidates
    • x] designated initializers
    • x] candidates for abstract types
    • x] method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

PdfKit

PR #2620

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

PassKit

✅ No changes needed.

  • Review api definition & custom code for:

    • x] obsolete
    • x] stuff that looks weird
    • x] long objc-looking names
    • x] non-internal fields
    • x] async candidates
    • x] designated initializers
    • x] candidates for abstract types
    • x] method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

ModelIO

PR Pending (matrix stuff)

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

NetworkExtension

✅ N/A: only obsolete/availability attributes changed

Metal

✅ N/A: only obsolete/availability attributes changed

MediaPlayer

✅ No changes needed.

  • Review api definition & custom code for:

    • x] obsolete
    • x] stuff that looks weird
    • x] long objc-looking names
    • x] non-internal fields
    • x] async candidates
    • x] designated initializers
    • x] candidates for abstract types
    • x] method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

MediaAccessibility

✅ N/A: only obsolete/availability attributes changed

MapKit

✅ No changes needed.

  • Review api definition & custom code for:

    • x] obsolete
    • x] stuff that looks weird
    • x] long objc-looking names
    • x] non-internal fields
    • x] async candidates
    • x] designated initializers
    • x] candidates for abstract types
    • x] method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

LocalAuthentication

✅ No changes needed.

  • Review api definition & custom code for:

    • x] obsolete
    • x] stuff that looks weird
    • x] long objc-looking names
    • x] non-internal fields
    • x] async candidates
    • x] designated initializers
    • x] candidates for abstract types
    • x] method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

IntentsUI

✅ No changes needed.

  • Review api definition & custom code for:

    • x] obsolete
    • x] stuff that looks weird
    • x] long objc-looking names
    • x] non-internal fields
    • x] async candidates
    • x] designated initializers
    • x] candidates for abstract types
    • x] method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

Intents

PR #2613

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • [x ] stuff that looks weird
    • [x ] long objc-looking names
    • [x ] extraneous models
    • [x ] non-internal fields
    • [x ] async candidates

ImageIO

PR #2609

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

HomeKit

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

HealthKit

N/A: only obsolete/availability attributes changed

GameKit

N/A: only obsolete/availability attributes changed

Foundation

PR #2606 PR #2614

  • [~] Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • [-] designated initializers
    • [-] candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

FileProviderUI

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

FileProvider

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

ExternalAccessory

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

EventKitUI

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

EventKit

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

CoreWlan

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

CoreVideo

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

CoreText

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

CoreSpotlight

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

CoreMedia

PR #2593

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

CoreML

PR #2592

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

CoreBluetooth

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

Contacts

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

CoreAnimation

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

ARKit

PR #2604

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • obsolete
    • extraneous models
    • non-internal fields
    • async candidates

AppKit

PR #2605

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

AudioToolbox

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

AudioUnit

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

AVFoundation

✅ No changes needed.

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

UIKit

  • Review api definition & custom code for:

    • obsolete
    • stuff that looks weird
    • long objc-looking names
    • non-internal fields
    • async candidates
    • designated initializers
    • candidates for abstract types
    • method should have verbs
  • Review api diff for:

    • stuff that looks weird
    • long objc-looking names
    • extraneous models
    • non-internal fields
    • async candidates

CoreData

* [ ] TODOS
     https://trello.com/c/y87bjnr9/69-32761925-nspersistenthistorytoken-supports-nssecurecoding-yet-supportssecurecoding-returns-false?menu=filter&filter=label:XM
Clone this wiki locally