The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Fixes issue where `String.isEmail` could return `true`, for invalid email addresses with spaces.
iOS 9.0 is now supported again! @ktvtrifork figured out how we could solve the problem, that was introduced by Xcode 13.
The 1.5.1 workaround version is no longer needed for projects pre iOS 11.
Bumped deployment target to iOS 11, to avoid Known Issue in Xcode 13, where Combine fails to build when archiving for armv7.
From [Xcode 13 release notes](https://developer.apple.com/documentation/Xcode-Release-Notes/xcode-13-release-notes)
> Swift libraries depending on Combine may fail to build for targets including armv7 and i386 architectures. (82183186, 82189214)
>
> Workaround: Use an updated version of the library that isnβt impacted (if available) or remove armv7 and i386 support (for example, increase the deployment target of the library to iOS 11 or higher).
1.5.1 Xcode 13.0 Workaround
2 years ago
**β οΈ WARNING: THIS VERSION IS ONLY FOR APPS WITH DEPLOYMENT TARGETS BEFORE IOS 11. THE RECOMMENDED VERSION ABOVE IOS 11 IS [2.0.0](https://github.com/trifork/TriforkSwiftExtensions/releases/tag/2.0.0)**
Removed Combine code, which causes problems for targets before iOS 11. This is a work around for a known Issue in Xcode 13.0, where Combine fails to build when archiving for armv7.
From Xcode 13 release notes
> Swift libraries depending on Combine may fail to build for targets including armv7 and i386 architectures. (82183186, 82189214
>
> Workaround: Use an updated version of the library that isnβt impacted (if available) or remove armv7 and i386 support (for example, increase the deployment target of the library to iOS 11 or higher).
* Conditional `flatMap` and `zip` for `Publisher`.
- Combine extensions! π₯³
**This version contains breaking changes!**
- ποΈ Removed all deprecated functions (#69)
- ~`String.allMatches(withRegularExpression pattern: String) -> [String]`~ Replacement: `matches(regEx pattern: String) -> [String]`
- ~`String.matches(withRegularExpression regExp: String) -> Bool`~ Replacement: `isMatching(regEx regExp: String, options: NSRegularExpression.Options = []) -> Bool`
- ~`UIView.circle()`~ Replacement: `roundVerticalEdges()` and `roundHorizontalEdges()`
- βοΈ Renamed ~`UIView.roundForHorizontalEdges()`~ and ~`UIView.roundForVerticalEdges`~ to `roundHorizontalEdges()` and `roundVerticalEdges()`
- π Added new `convinience init` for `UIView` to set `translatesAutoresizingMaskIntoConstraints` on construction. (#67)
- β `addSubview(_ view: UIView, withEdgeInsets inset: UIEdgeInsets)` to setup edge constraints to receiver when adding. (#67)
- π¦ Package.swift now matches the iOS Deployment Version of the Xcode Project (iOS 9).
π Added support form SPM
π·ββοΈ Added convenience init for UIStackView
π©Ί Added `isNetworkError` on `Error` (@kdvtrifork)
0οΈβ£ `UITextView.setTextContainerInsetToZero `
β
`Result` extensions. Handle results directly on the object with the`Result.success` and `Result.failure` closures.
Example:
```
somethingThatProducesAResult()
.success {
handleSuccess()
}.failure {
handleFailure()
}
```
... and return an empty `Result` instance by using `.success()` (it will pass a `Void` instance).
π Fixed bug in `UIScrollView`'s `scroll(toPage:, animated:)` and added `currentPage` property.
π Added `updateHeaderViewHeight ` to update header and footer height for `UITableView`
β« Added `round(toNearest: )` on `FloatingPoint`
π€ Added `toAlpha()` on `Bool`