- Mark more initializers as non-optional.
<rdar://problem/18559511> Audit the list of UIKit symbols that marked as returning optional
<rdar://problem/18559660> Audit the list of AppKit symbols that marked as returning optional
<rdar://problem/18559676> Audit the list of Foundation symbols that marked as returning optional
<rdar://problem/18559730> Audit the list of Scenekit symbols that marked as returning optional
- NSMenu.popUpMenuPositioningItem (radar://18505688)
- Remove NSXMLParserDelegate audit since it leads to crashes (radar://18227344)
- UICollectionViewController collectionView should not be optional (radar://18508177)
Swift SVN r22570
- Make NSZone functions unavailable radar://16688847
- Distributed Objects subsystem should not be imported into Swift radar://16689104
- NSCalendarDate is available in Swift, but deprecated radar://16689207
- Do not import NSMethodSignature class and related methods radar://16689329
- NSInvocationOperation should be unavailble in Swift radar://17921785
Swift SVN r22090
This drop adds 3 new frameworks: Metal, SceneKit, and SpriteKit.
The other frameworks (Foundation, CoreData, ObjectiveC, UIKit) have been refined:
- conflicting items went to unknowns,
- bugs got fixed,
- more auditing has been performed.
Swift SVN r21443
Also, move the ObjectiveC overlay into its own directory, so that we can
use the directory name as an indicator of what overlays exist.
This is in preparation for DevPubs providing the contents of the apinotes/
directory. The downside here is that adding new apinotes files doesn't
automatically trigger a rebuild; I intend to mitigate that somewhat by at
least triggering one when the revision number of the DevPubs repo changes.
Swift SVN r21078
This requires a bit of special handling because we override the getter's type
in the importer, to make sure it's compatible with the setter, but other than
that we just use the information from the apinotes file.
<rdar://problem/17891179>
Swift SVN r21027
stringByAddingPercentEncodingWithAllowedCharacters() and
stringByAddingPercentEscapesUsingEncoding() to String?, and add API notes for
NSString to the same effect
Swift SVN r21007
The corrections are:
- Change the UIFont's API from '?' to '!'. These APIs are almost never get checked.
- Change the "options" array parameter to being optional.
Swift SVN r20723
This allows us to express required initializers in the API notes. Use
it to smooth over NSString differences in the various SDKs even more.
Swift SVN r20511
Move all of the information about API notes into the "apinotes"
subdirectory, which specifies the API notes that it provides. The
organization is such that "apinotes" can become its own separate
repository, and the compiler build will pick up those API notes that
are available and build them along with the overlays.
Swift SVN r20406
Introduce a new off-by-default CMake option, SWIFT_BUILD_API_NOTES,
which compiles the YAML sources for API notes into the binary form
installed alongside the overlays. This will be the default mode,
replacing KnownObjCMethods.def, shortly.
The new apinotes/ subdirectory contains the translated contents of
KnownObjCMethods.def, courtesy of Anna. It still requires some
revision.
Swift SVN r20370