Releases: jlandon/Alexandria
Swift Package Manager
Added support for Swift Package Manager using Xcode 11. For integration instructions, checkout out Adding Package Dependencies to Your App
Swift 5
Swift 4.1
Added
- Swift 4.1 support!
- +/- operators for UILayoutPriority
- Constraint methods for UILayoutGuide and safe-area layout guide
- Improved String subscripting (now supports CountablePartialRangeFrom, PartialRangeThrough, and PartialRangeUpTo)
Updated
- Project to support app extensions
Fixed
- Issue on UIControl where multiple target actions could not be added to the same instance
Swift 3.1
Insert witty title here
New functionality:
- adding string literal initializers to
CharacterSet
andURL
- handy extensions to facilitate working with
UIAlertController
Swift 3
Hooray! Swift 3 support! 🎉
The primary focus of the v2.0.0 release is to bring Swift 3 support to the mainline of development of the project. We've worked to make the code not just build with Swift 3, but adopt Swift 3 conventions. As a result, this is a breaking update. But just like Swift 3 is a breaking update (from Swift 2.x), we feel this is acceptable (and thus why version 2.0.0, per semver conventions).
If you still need Swift 2.x support, there are branches you can use. Our intention is to keep those branches around, with light support and maintenance, but they will not be developed further. All future work will be on master going forward with Swift 3. Any pull requests should take this into consideration.
Future Prep
Changes since v1.2.0:
- Made the
UIButton
action closure support more generalized toUIControl
- Syntactic sugar for auto-layout
pin
supports. - Housekeeping
This is scheduled to be the last release supporting Swift 2.2. There will be a swift2.2
branch, in case you need 2.2 support and/or we have to do any 2.2-specific fixes. But generally speaking we expect Swift 2.2-code to go into maintenance mode.
We will also have a swift2.3
branch, based off the swift2.2
branch/code, for Swift 2.3 support, but we also don't expect this branch to fully move forward (it'll be swift2.2
with whatever adjustments are needed to work with Swift 2.3). It may get fixes, it may have new contributions, but we generally wish to move forward with Swift 3.
After this point (and of course, after Swift 3 actually goes final and live), we expect master
and general development of Alexandria to move forward with Swift 3.
The Improvening
Changes since v1.1.0
- Improvements to Swift 2.2 syntax, and overall things are more Swifty (including looking forward to Swift 3).
- Array
- mapWithIndex()
- rotate() / rotateInPlace()
- before() & after()
- CGFloat
- rounded()
- Int
- toAbbreviatedString
- NSMutableAttributedString
- addFont()
- addAlignment()
- addForegroundColor()
- addUnderline()
- Custom % operator
- String
- isNumeric
- rangeFromNSRange() / NSRangeFromRange()
- UIColor extended to make it much easier to work with colors.
- UIView
- auto-layout use strives to use leading/trailing instead of left/right.
- add many conveniences, especially for working with layout constraints.
- view snapshotting
- Moar unit tests.
- Build/Tests against Xcode 7.3.