Breaking changes:
- iOS 7 support is dropped, use R.swift 0.13 if you still have to support it.
- Generated code now depends on the R.swift.Library, CocoaPods users don't need to do anything. Manual installation users need to include this library themselves, see the readme for instructions.
- In general; properties that created new stuff are now functions to represent better that they actually create a new instance.
R.image.settingsIcon
changed toR.image.settingsIcon()
R.file.someJson
changed toR.file.someJson()
R.storyboard.main.initialViewController
changed toR.storyboard.main.initialViewController()
R.storyboard.main.someViewController
changed toR.storyboard.main.someViewController()
- In general; Where you needed to use
.initialize()
to get the instance, a shorter function is available now:R.storyboard.main.initialize()
changed toR.storyboard.main()
R.nib.someView.initiate()
changed toR.nib.someView()
- Nib root view loading changed from
R.nib.someView.firstView(nil, options: nil)
toR.nib.someView.firstView(owner: nil)
- Typed segue syntax changed from
segue.typedInfoWithIdentifier(R.segue.someViewController.someSegue)
toR.segue.someViewController.someSegue(segue: segue)
- Runtime validation changed:
R.validate()
now throws errors it encountersR.assertValid()
asserts on errors and only performs action in a debug/non-optimized build- For regular use cases using
R.assertValid()
is recommended
Major features and fixes:
- Writing extensions for R.swift generated code is possible by using the types from the new R.swift.Library
- Improved
import
statements, R.swift will detect modules that you use and import them in the generated file. - Improved error reporting, on incorrect calls to the
rswift
binary as well as during project parsing UITraitCollection
can be specified when loading images- The
String
based path as well as theNSURL
of a file can now easily be accessed thanks to an overloaded function - Constructors are available for all types to provide more flexibility and late initialization (eg. passing a
ImageResource
around and only creating the image with the specialUIImage
constructor when you need it) - Information about resources is now accessible, a few examples:
R.image.settingsIcon.name
returns the name of the imageR.nib.myCell.identifier
returns the reuse identifier string of the cellR.storyboard.main.name
returns the name of the storyboard