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.
5.0: Swift Compatibility
3 years ago
Yes I did get tired of my lazy naming scheme.
5.0 adds explicit support for Swift 5 across all dependency management solutions. There are no other user-facing changes.
4.2: four point two
3 years ago
This release (which never hit master, weirdly enough) adds support for the Swift 4.2 and 5.0 toolchains.
4.1.2: The Iteration Generation
7 years ago
- [**FIXED**]: Now using `Iterator` instead of `Generator` in our definition of `decode` for `Collection`s. This was renamed in Swift 3.0, and honestly I'm not positive how this was compiling the way it was.
4.1.1: An Actual Useable Library
7 years ago
- [**FIXED**]: Fixed compilation when building via Swift Package Manager
4.1: Optional Packages
7 years ago
- [**NEW**]: Swift Package Manager Support ([Gordon Fontenot](https://github.com/thoughtbot/Argo/pull/424))
- [**NEW**]: Re-introduced `Decoded.optional` with better, simplified behavior ([Tony DiPasquale](https://github.com/thoughtbot/Argo/pull/420))
- [**FIXED**]: Use `NSNumber` transformation properties instead of casting to decode number values. This now prevents a crash that could occur with Swift 3.0.1 ([Gordon Fontenot](https://github.com/thoughtbot/Argo/pull/425))
4.0.0: Swift 3 and Multi-Error Debugging
7 years ago
Official Swift 3.0 release!
- **[NEW]**: Now you can see all the decoding failures at once! Thanks @klaaspieter
- **[Bug Fix]**: Optional decoding now behaves as expected. Thanks @pteasima for finding this.
Thanks @gfontenot, @alexwlchan, @mbrandonw, @gcox, and @klaaspieter for all the changes that went into this release!
3.1: unsigned unmastered.
7 years ago
3.1 adds support for decoding `UInt` and `UInt64` types. `UInt` can only be decoded `JSON.Number` instances, and `UInt64` can be decoded from `JSON.Number` as well as `JSON.String`. This follows the patterns already set up by `Int` and `Int64`.
Thanks to @gcox [for this addition!](https://github.com/thoughtbot/Argo/pull/396)
3.0.3: Now With Different XML
7 years ago
3.0.3 adds improved support for Xcode 8 by slightly modifying the xml in ways that it suggests (Thanks @ikesyo!)
3.0.2: Xcode optimizations
7 years ago
This release is a back-port of our support for enabling whole module optimization (currently supported on master, but unreleased), as well as support for Xcode 8 using Swift 2.3.
3.0.1: NumberWang
8 years ago
Argo 3.0 changed the way Booleans were decoded and in doing so, accidentally broke JSON parsing for APIs that didn't _quite_ follow the JSON spec. Specifically, @jshier noted that [it's moderately common for APIs to return `1` or `0` instead of `true` or `false`.](https://github.com/thoughtbot/Argo/issues/358).
To address this, we've [re-added the capability of Argo to recognize `Bool` values represented in the JSON as numbers.](https://github.com/thoughtbot/Argo/pull/359)
[![](https://img.youtube.com/vi/qjOZtWZ56lc/0.jpg)](https://www.youtube.com/watch?v=qjOZtWZ56lc)