Skip to content

Releases: thoughtbot/Argo

3.0: Less is more

06 Apr 17:09
f494b05
Compare
Choose a tag to compare

The goal for Argo 3.0 was to work on simplifying some of the complexity by removing extraneous API and improving consistency between Argo and other libraries (including the Swift standard lib). In addition, we've added support for Swift 2.2.

Breaking Changes

New

Non-Breaking Changes

  • Update errors for RawRepresentable types. - Paul Young
  • Remove CustomStringConvertible constraint on typeMismatch function - Dapeng Gao
  • Use an autoclosure for the rhs of <|> - Gordon Fontenot
  • Generalize the type for sequence taking a dict - Gordon Fontenot

Misc

  • (hopefully) the entire public API now has inline documentation!

Huge thank you to everyone that submitted PRs, opened issues, and reviewed code for this release!

2.3.0: An _Even_ Faster Boat

11 Mar 16:40
9d839be
Compare
Choose a tag to compare

After some really fantastic work by @jshier and @RuiAAPeres, we were able to track down some serious performance issues related to our (internal) use of reduce. @jshier was able to remove all instances of reduce in favor of using for in loops, and ended up with a 2600% improvement in performance. This release is to get that into users hands while we work on moving towards version 3.0, which should introduce even more performance increases as well as reducing the complexity of the library.

  • [FIXED]: Aforementioned performance improvement (Jon Shier and Rui Peres)
  • [NEW]: We've audited the codebase to use @noescape where appropriate (Sid Raval)
  • [NEW]: DecodeError is now Hashable (Matt Diephouse)

2.2.0: Look Ma, I'm on TV!

27 Oct 02:16
Compare
Choose a tag to compare

Argo 2.2.0 is out!

[NEW]: Add materialize function for creating Decoded from try, thanks @paulyoung
[NEW]: Add tvOS scheme, thanks @nickygerritsen

[IMPROVEMENT]: Improve documentation that Curry is a separate framework, thanks @gilesvangruisen
[IMPROVEMENT]: Remove workaround for memory bug in older versions of Swift, thanks @paulyoung

[BUG FIX]: Fix signing errors with simulator builds, thanks @gfontenot

Yay! 🎉

2.1.0: A Little Bit of This and A Little Bitcode of That

03 Oct 00:30
Compare
Choose a tag to compare

Argo 2.1.0 coming at you!

[NEW]: decodeWithRootKey convenience function for easy root key decoding
[NEW]: Custom error case Decoded.Custom(String)
[NEW]: Failure Coalescing Operator for Decoded, thanks @gfontenot
[NEW]: catDecoded for Decoded, thanks @gfontenot
[NEW]: DecodeError convenience accessor in Decoded, thanks @jshier
[NEW]: Default Decodable implementations for String and Int RawRepresentable enums, thanks @swizzlr

[IMPROVEMENT]: Documentation!!!!, thanks @jnutting & @gfontenot
[IMPROVEMENT]: Extend CollectionType instead of Array, thanks @gfontenot & @gilesvangruisen
[IMPROVEMENT]: Extend DictionaryLiteralConvertable instead of Dictionary, thanks @gilesvangruisen

[BUG FIX]: Fix bitcode error when submitting app, thanks @dmcrodrigues

Big win!

2.0.0: All For One and Argo 2 for All!

18 Sep 21:02
Compare
Choose a tag to compare

Argo 2.0.0 is out!!

  • [NEW]: Swift 2.0 support
  • [NEW]: watchOS targets, thanks @JaviSoto
  • [NEW]: Alternative operator <|> for providing defaults or alternatives, thanks @terhechte
  • [NEW]: Add DecodeError enum for easier conversion to Result, thanks @gfontenot
  • [NEW]: dematerialize function to throw when Decoded is a DecodeError, thanks @paulyoung
  • [NEW]: Default Decodable implementations for String and Int RawRepresentable enums, thanks @swizzlr
  • [IMPROVEMENT]: Remove Box & Runes dependency, thanks @sync & @gfontenot
  • [IMPROVEMENT]: Exposed flatReduce & decodeJSON functions, thanks @edwardaux
  • [IMPROVEMENT]: Performance and Memory impact, thanks @paulyoung
  • [IMPROVEMENT]: Argo operators are overloaded to return Optional as well as Decoded

And thank you to all those not mentioned above for you commits to help Argo 2.0.0 become reality!
@sidraval, @nickygerritsen, @lowell, and @jdhealy

ford_dance

1.0.5: Argo 1.0.4 & Runes 2.0

21 Sep 17:56
Compare
Choose a tag to compare

This release changed the Runes dependency to keep it in Runes 2.0. This prevents Carthage from pulling Runes 3 when using Argo 1.0.4.

1.0.4 - Public Sequence Number One

15 Jul 17:31
Compare
Choose a tag to compare

Make sequence public for use with complex decoding.

1.0.3: A Faster Boat

26 May 17:58
Compare
Choose a tag to compare

Added performance enhancements to make decoding faster.

1.0.2: Better Descriptions for a Better Tomorrow

20 May 21:43
Compare
Choose a tag to compare

This adds Printable conformance to Decoded for easier debugging using println.

1.0.1: If You Gaze Into .Null, .Null Gazes Also Into You

01 May 19:06
Compare
Choose a tag to compare

Always decode JSON.Null into Decoded.MissingKey(keyName).