Skip to content

Releases: thoughtbot/Runes

3.2: Mo' Monads Mo' Solutions

15 Jan 17:57
4c7e4e5
Compare
Choose a tag to compare
  • [NEW]: Monadic function composition! You can now use <-< and >-> to compose functions of the type T -> [U] or T -> U?. (Adam Sharp)
  • [Improved]: <^> for Arrays is now marked as @noescape (Kenneth Ackerson)

3.1.0: Legends of the Hidden Temple

30 Oct 22:09
17ff8dc
Compare
Choose a tag to compare

3.0: The Applickening

18 Sep 13:40
cded739
Compare
Choose a tag to compare
  • [NEW]: Swift 2.0 support
  • [NEW]: watchOS targets for Carthage and CocoaPods
  • [NEW]: Optional.apply and Array.apply are now publicly available instance methods

v3.0.0-rc.2

15 Jul 17:30
5708b06
Compare
Choose a tag to compare
v3.0.0-rc.2 Pre-release
Pre-release

This makes it easier to add Runes to your framework as a light weight internal dependency for introducing the operators for your own types.

v3.0.0-rc.1

15 Jul 17:29
04e5a6e
Compare
Choose a tag to compare
v3.0.0-rc.1 Pre-release
Pre-release

This adds initial support for Swift 2.0 and makes the apply instance method public for Optional and Array.

2.0.0: Precedence for President

04 May 14:22
Compare
Choose a tag to compare

This release refines the precedence for our operators to bring them in line with Haskell's implementation.

  • The map (<^>) and apply (<*>) operators now have a precedence of 130. This gives them an equal precedence with Swift's built in equality operator (==)
  • The flatMap operators (>>- and -<<) now have a precedence of 100. This gives them a precedence higher than the assignment operator (=), but lower than the or operator (||).

Note that this change flips the precedence of these operators. Previous releases gave flatMap a higher precedence than map and apply. Updating to 2.0.0 might require the addition/removal of parenthesis in your code to return to the intended behavior.

Huge thanks to @sharplet for the research (and implementation) behind this change.

1.2.2: Extension compatibility

13 Mar 16:04
Compare
Choose a tag to compare

This release ensures that Runes is marked as compatible with Application Extension APIs

1.2.1: Flattening the Mappening

13 Mar 14:38
Compare
Choose a tag to compare

This release removes the implementations of flatMap for Optionals and Arrays. flatMap is now included in the standard library for both of these types, so we don't need to duplicate their implementations here.

This release also adds a flipped operator for flatMap (-<<) and removes the guards around improper use of flatMap. These guards were needed to avoid segfaults in the compiler, but the compiler is now preventing the improper use of this operator itself.

1.1.2: Swift 1.1 extension capability

13 Mar 16:06
Compare
Choose a tag to compare

This release ensures we're compatible with the app extension APIs for Swift 1.1

1.2.0: Semver Synergy

16 Feb 19:07
Compare
Choose a tag to compare

This release is intended to be used with Swift 1.2. There are no actual changes since Runes 1.1.1, but the attached binary has been built with the Swift 1.2 compiler.

This release will not work with Swift versions 1.2 beta 3 and beyond due to the introduction of flatMap into the standard library