Skip to content

Releases: arrow-kt/arrow

Release 0.7.2

29 May 11:56
884ad98
Compare
Choose a tag to compare

Change Log

0.7.2 (2018-05-29)

Full Changelog

Noteworthy changes:

Implemented enhancements:

  • [Docs] Enable HTTPS #731
  • [arrow-core] Make param names more dev friendly #853 (aballano)
  • Renzu missing instances and simplifying the tree #822 (JorgeCastilloPrz)
  • Add a sequence function to all datatypes that supported traverse, instead of needing to use a typeclass to access it (pakoito)

Fixed bugs:

  • Directory with source code must have name "arrow" or Renzu will fail #824
  • Fix combination of Option. Combining Some with None used to incorrectly yield None. Now it returns Some as it should #832

Closed issues:

  • Add RxJava Maybe wrapper #860
  • Add RxJava Single wrapper #856
  • Constructor functions for Show to use receiver function #830
  • Add State video #828
  • Directory with source code must be name "arrow #823
  • [v0.7.0] arrow.syntax.tuples.plus operator fun no more available in version 0.7.0 #815
  • Add Kleisli video #809
  • Infix then function #799
  • Links to typeclasses in kotlinx.coroutines docs doesn't work #798
  • Codecov is broken #632
  • Error message autofold #462

Merged pull requests:

Release 0.7.1

10 Apr 21:04
44d6862
Compare
Choose a tag to compare

Fixes @deriving and releases 0.7.1 #784

Release 0.7.0

08 Apr 22:13
0660b6f
Compare
Choose a tag to compare

Noteworthy since 0.6.1

Paco Estevez : @pakoito
* [29384ab] Rename all Kinds, Witnesses, and typealiases
* [24f03d5] Remove remaining instances of reified
* [1456596] Refactor all typeclasses to use Typeclassless encoding
* [bdee8cb] sigh
* [7b942bd] Refactor all the codebase to have any typeclass dependency as first parameter
* [0930083] Rename pure to just
* [687b296] Split arrow-instances between core and data. Free now only depends on core.
* [a94dc2d] Add alias for platfom-dependent collections
* [7f62399] Add instances for Boolean.
* [d8977fd] Rename MonadSuspend to MonadDefer
* [27d372f] Add docs for dependency_injection
* [843179b] Fix all broken links in list of typeclasses/intro
* [66d9695] Improve typeclass/intro and glossary
* [7f62399] Add doc for platform types with instances.

Simon Vergauwen : @nomisRev
* [9181bae] Add At typeclass and instances
* [fd5a4df] Add Optional law tests for optic conversion
* [e1ae53b] Add Missing map optic
* [911a128] Add Getter test for optic conversion
* [1f01585] Add Iso law test for optic conversion
* [58e2dcd] Add Lens law test for optic conversion
* [9745952] Add Prism law test for optic conversion
* [74bc110] Add Setter law test for optic conversion
* [c3e1d26] Add Traversal law test for optic conversion
* [2615849] Complete map instance test and removed unlawfull map to
list iso
* [fe6bd9b] Add At instances for java_util
* [1b7aa81] Add Each instances for java_util
* [28a777c] Add FilterIndex instances for java_util
* [66936c1] Add Index instances for java_util
* [85fd877] Kind for PIso
* [1ed790e] Kind for PLens
* [a44b96d] Kind for PPrism
* [2a10efb] Kind for POptional
* [aefaf94] Kind for Setter
* [e665906] Kind for PTraversal
* [fe2b4a3] Kind for Getter
* [46cc1f4] Kind for Fold
* [c59876d] Move all optic generation to a single annotation
* [168c7e4] Move optics annotation to optics package and rename
@optic to @Optics
* [a632a67] Move bound to optics module
* [0b6948b] Add KDoc to BoundSetter
* [88d6905] Rename bound to BoundSetter
* [abdff51] Improve generation of Lens and Optional of nullable
and Option types.
* [99920fe] Correction Setter KDoc
* [ec89e59] Docs for syntax DSL
* [e787f26] Compile generated optics in docs.
* [7963979] Move all optic generation to a single annotation
* [b71357e] Move optics annotation to optics package and rename
@optic to @Optics
* [9e57cc8] Move bound to optics module
* [c6cde81] Add KDoc to BoundSetter
* [a969a63] Rename bound to BoundSetter
* [85f3c9a] Improve generation of Lens and Optional of nullable
and Option types.
* [f0a2133] Docs for syntax DSL

Raul Raja : @raulraja
* [f5e4950] arrow-dagger enables compile time type class instances
resolution
* [11219c8] Group modules into folders for a more semantic
organization
* [db90b80] Dagger modules for effects, rx2 and coroutines exposing
effects instances
* [64ba325] Deriving Semigroup, Monoid, Eq, Order and Show for
products based on TupleN arities
* [b299e45] First iteration of Arrow Generic featuring @Product
http://arrow-kt.io/docs/generic/product/
* [1d3be3e] Extract utility methods in processor to ProcessorUtils
* [a12c765] Add companion object to all tupleN arities
* [7fd063c] semigroup + syntax
* [b261d1d] Const refactoring Removes free dependencies on optics
and mtl.
* [3ff60bf] Moves Try to arrow-core since it's a popular used
data type along with other core ones like Option reducing the need
for users to depend on arrow-data
* [87d0159] Nel docs and ank fixes

Cotel : @Cotel
* [4ddb475] Show typeclass and instances

Israel : @israelperezglez
* [b1de905] Either video
* [ea9fb37] Site improvements
* [1d17e07] Try video
* [efcdd16] NonEmptyList video
* [03eb42f] Validated video
* [0048024] Kinds video
* [6c7cd57] Id video
* [c4f3c9f] ListK video
* [1f378b0] Eval video
* [f1a5448] OptionT video
* [9f2b35e] Setk video

Andrzej Ressel : @jereksel
* [c80b076] Tests for annotation processor
* [af35d26] Clean .gitignore and fix tests
* [3541590] Annotation processor for [at]bounded

aedans : @aedans
* [834e561] Add Tuple2 instances

Guardiola31337 : @Guardiola31337
* [9e4ced8] Remove ank modules from arrow repo
* [481fd6a] Fix ank dep issue using timestamped snapshot versions for
ank-core and ank-gradle-plugin
* [fbd1229] Enable docs after fixing ank with arrow 0.7.0 changes
* [f192366] Fix arrow instances artifact ids adding core and data
suffixes
* [d01abf3] Bump ank dependency which now includes latest 0.7 syntax
changes and unblocks docs generation

AdrianRaFo : @AdrianRaFo
* [3affffe] Map docs
* [eac1ddb] Kleisli docs
* [6e6ac9a] Ap docs

Juan Valencia Calvellido : @calvellido
* [ef29b92] Linkify doc sections headers * This is done through JS
* [56de320] Add code highlighting also to list elements
* [755477e] Small edition to Nel docs to adapt to current general
docs stylings
* [820383c] Standardize all “Available Instances” data types sections
* [94718ce] Add implemented data types lists for all type classes
* [e0ea999] Fix link destination typo in Datatypes intro
* [5fdfecc] Add Id video

Mohit : @msya
* [e5cc22a] Update links to Lens and Iso data types
* [ea736dd] Add API version and meetup name

Daniele Campogiani : @dcampogiani
* [981ae21] Add Android Functional Validation to docs

Radimir Sorokin : @qradimir
* [b9d9871] BoundSetter class

Ricardo Meneghin Filho :
* [058af92] changes Left and Right field-backed properties isRight
and isLeft to function-only backed ones

Alf Kristian Stoyle : @stoyle
* [a49eae6] Allow exception to propagate from fold Success f

Jason Bennett : @jasonab
* [f6181eb] Update README.md

Jorge Castillo : @JorgeCastilloPrz
* [c99e3aa] upgrade kotlin and kotlinx.coroutines

Kaden Thomas : @tkaden4
* [9ac6980] Fix typo in MonadError docs

Mario Arias : @MarioArias
* [f44fb88] fix toPartialFunction implementation

Matthias Lüneberg : @matsluni
* [800a327] Update Readme.md

Pablo Gonzalez Alonso : @pablisco
* [8456246] Reverted problematic merge of the weak type

Robert Stoll : @robstoll
* [caa4e86] simplify settings.gradle by tutteli's settings plugin

itua :
* [664c9a6] Doc for SetK

prat t : @pt2121
* [0a0098f] Update instance resolution

Release 0.6.1

01 Feb 23:13
25ff3bf
Compare
Choose a tag to compare

Noteworthy in this release:

  • New optics Index and FilteredIndex. Thank you @nomisRev
  • Update Option.forall to return true on None. Thanks @benfleis!
  • Add Either.getOrHandle. Cheers @sbuettner
  • Eval is stack safe and more performant now. Great job by @aedans
  • New datatype Weak by @pablisco. <3 you man :D
  • Better build errors in Java9 and JRE by @christophsturm. Awesome find!
  • Deprecate yields in binding comprehensions, you can now return any value

A big thanks to all the contributors to the docs, especially those who did it for their first time!

Contributions:

  • Andrzej Ressel (12):
    - @optional annotation and converters

  • Christoph Sturm (1):
    - improve error message on incompatible jdk version

  • Guardiola31337 (3):
    - Fixes to README docs

  • Israel (11):
    - Website improvements and video enabled tutorials

  • Juan Valencia Calvellido (6):
    - Website improvements and video enabled tutorials

  • Mike Kobit (5):
    - Build improvements and repl task that opens a REPL with Arrow in its classpath

  • Pablisco (2):
    - Weak data type and docs

  • Pratik Chaudhary (2):
    - Option doc improvements

  • Simon Buettner (2):
    - getOrHandle extension

  • Simon Vergauwen (26):
    - Optic law fixes and `FilterIndex

  • aedans (2):
    - Compute -> FlatMap and Call -> Defer
    - Improve Eval stack safety

  • ben fleis (1):
    - update Option.forall to return true on None (ie, empty)

  • pakoito (20):
    - Docs, Effects and binding improvements that deprecate yields

Release 0.6.0

21 Jan 23:30
Compare
Choose a tag to compare
  • Merged funKtionale and kategory as arrow (release 0.5.X)
  • Fix compatibility issue with Kotlin 1.2
  • Refactored the effects package:
    • Three typeclasses: MonadSuspend, Async, and Effect
    • First pass, improvements coming
  • Refactored comprehensions:
    • Renamed bindingE to bindingCatch
    • Renamed bindingECancellable to bindingCancellable
    • Moved bindingCancellable to MonadSuspend
    • bindAsync is now only available on bindingCancellable
    • Removed bindInM due to its gotchas with suspended types
    • Add bindDefer, bindDeferIn to bindingCancellable. They suspended a block to be executed lazily on the current CoroutineContext, or the one passed as a parameter
  • New documentation

Release 0.4.0

12 Dec 02:03
e35598d
Compare
Choose a tag to compare
  • Update to Kotlin 1.2 and Gradle 4.3
  • Lots of documentation added to the official site!

Additions

  • New integration module: kategory-kotlinx-coroutines
  • Add bindInM to monad comprehensions
  • Add integration with KindedJ
  • Add new wrapper for SortedMap #451
  • Add new annotation @autofold to generate Fold lenses for sealed classes #448
  • Typealias for multiple datatypes, i.e. Either.Left becomes Left #442
  • MonadFilter can now provide comprehension guards #441

Fixes

  • Refactor IO, Kleisli, Reader, ReaderT
  • Redo the StateT API
  • Removed all @JvmStatic occurrences as they caused issues with proguard
  • Fix Yoneda and Coyoneda to have invoke operators instead of the old apply functions

Release 0.3.11

31 Oct 14:03
5c41bd4
Compare
Choose a tag to compare
  • Instances for Eval
  • Iso instances
  • Improved kategory processor (Iso, higherkind & instance)
  • Eq instances
  • Validated fixes
  • Corrected Semigroup & Monoid API

Release 0.3.10

30 Sep 18:06
Compare
Choose a tag to compare
  • Fixed a problem on Typeclass instance retrieval system causing Android apps to crash. (It was using a method just present on JDK 8).

Release 0.3.9

26 Sep 07:50
Compare
Choose a tag to compare

Release 0.3.8

16 Sep 11:27
Compare
Choose a tag to compare

Kategory 0.3.8

Added

  • New RxJava2 compatibility module
  • New Optics module
  • Effects: TraverseFilter, Bifoldable, Alternative, MonadCombine

Changed

  • Merged the annotation processor into the main repo
  • New typeclass lookup algorithm that works for any arity

Removed

  • No more dependency on JVM library kotlinx.coroutines for effects

Fixed

  • Artifact upload generated with incorrect naming

Full list of merged PRs