Releases: arrow-kt/arrow
Releases · arrow-kt/arrow
2.0.1-alpha.1
What's Changed
- Remove old Arrow 2.0 warning by @Rawa in #3548
- Remove deprecated getHandle() from KDoc in Either by @illarionov in #3544
- Align generic name of non-empty collections with the underlying ones by @serras in #3549
New Contributors
- @Rawa made their first contribution in #3548
- @illarionov made their first contribution in #3544
Full Changelog: 2.0.0...2.0.1-alpha.1
2.0.0
2.0.0-rc.1
Release candidate for the new major version
2.0.0-beta.3
Prepare for 2.0 publication Co-authored-by: Alejandro Serrano <trupill@gmail.com> Co-authored-by: franciscodr <francisco.diaz@xebia.com>
1.2.4
1 Bug fixes:
- New
AutoCloseScope
DSL, make sure closing in reversed order
1 Rollback:
- Don't be too strict on return type of
Raise
DSL.
What's Changed
- chore(deps): update all dependencies by @renovate in #3383
- fix(autoclose): close
Closeable
s in reversed order by @hoc081098 in #3387 - chore(deps): update all dependencies by @renovate in #3392
- fix: Fold restriction not allowing any Function<*> to be returned is too strict in 4bd8694
Full Changelog: 1.2.3...1.2.4
1.2.3
We went from 1.2.1 directly to 1.2.3, since in 1.2.2 there is a crucial bug concerning KSP. This release features multiple new modules such as:
- arrow-autoclose: for enabling a typed DSL for working with
AutoCloseable
. - arrow-optics-compose: Specialised integration between Arrow Optics and Compose
- arrow-collectors: Allows composing operations over sequences of values
(lists, flows, sequences) while ensuring that the sequence is traversed only once. - arrow-eval: To provide forward compatibility for the deprecated
Eval
type
Many modules, and features were enhanced, and improved based on user feedback. You can read the full release post on the Arrow website.
Thanks to everyone involved, all new contributors, and all members of the Arrow community for supporting, and helping each other and providing feedback to make Arrow better together.
What's Changed
- Update plugin com.gradle.enterprise to v3.15 by @renovate in #3129
- Update all dependencies to v0.12.0-rc.6 by @renovate in #3131
- Update stefanzweifel/git-auto-commit-action action to v5 by @renovate in #3136
- Prepare for Kotlin community build by @serras in #3140
- Add Tuples test coverage by @vngrp in #3143
- Mention ignoreErrors in nullable's documentation by @CLOVIS-AI in #3139
- Update all dependencies by @renovate in #3132
- Use new Atomic types from Kotlin 1.9 by @serras in #3220
- Provide test coverage for NonEmptyList by @l2hyunwoo in #3135
- Update Arrow-Atomic by @nomisRev in #3225
- Bump Kotlin dev version by @serras in #3239
- Replace uses of deprecated
kotlin.native.concurrent.AtomicReference
by @serras in #3241 - Fix .toNonEmptyXxxOrNull for nullable types by @mjadczak in #3127
- Update all dependencies by @renovate in #3275
- Update dependency io.github.classgraph:classgraph to v4.8.164 by @renovate in #3281
- Enable Kover for serialization, disable for Optics KSP by @serras in #3284
- Update all dependencies to v5.10.1 by @renovate in #3285
- Roll back to Kover 0.7.3 by @serras in #3286
- chore(Raise.fold): remove duplicated
this is DefaultRaise && isTraced
by @hoc081098 in #3283 - Add iorNel builder and Ior.toIorNel function by @sampengilly in #3114
- chore(deps): update actions/setup-java action to v4 by @renovate in #3304
- chore(deps): update all dependencies by @renovate in #3300
- chore(deps): update all dependencies by @renovate in #3306
- Update to Java 17 by @serras in #3307
- fix(deps): update all dependencies to v1.6.2 by @renovate in #3308
- chore(deps): update dependency com.diffplug.spotless to v6.23.3 by @renovate in #3312
- chore(deps): update all dependencies by @renovate in #3313
- chore(deps): update all dependencies by @renovate in #3321
- chore(deps): update actions/upload-artifact action to v4 by @renovate in #3322
- Fix 3235 by @kyay10 in #3316
- chore(KProperty1.lens): Perform check for data class only once. by @kyay10 in #3315
- Add more options to memoization cache by @serras in #3296
- Correctly escape class names in Optics KSP when a property clashes with a package name by @serras in #3326
- chore(arrow-atomic): Cleanup atomic code by @kyay10 in #3318
- Run K2 using 2.0.0-Beta2 by @serras in #3327
- Safeguard for leaked 'raise' or 'bind' by @serras in #3329
- chore(deps): update all dependencies to v1.9.22 by @renovate in #3335
- chore(deps): update all dependencies by @renovate in #3339
- chore(deps): update plugin org.gradle.toolchains.foojay-resolver-convention to v0.8.0 by @renovate in #3345
- Update kotlin-compile-testing by @serras in #3330
- Arrow Collectors by @serras in #3280
- chore(deps): update dependency com.diffplug.spotless to v6.24.0 by @renovate in #3347
- Separate 'arrow-eval' module by @serras in #3332
- Rework IorRaise impl to use EmptyValue, and add tests by @kyay10 in #3338
- Deprecate Iterable#unzip in favor of stdlib method by @terminalnode in #3352
- Make a common public parent for raise exception by @nomisRev in #3349
- chore(deps): update all dependencies to v1.9.22-1.0.17 by @renovate in #3348
- Fix traced CCE when nested different types. by @kyay10 in #3337
- chore(deps): update dependency com.diffplug.spotless to v6.25.0 by @renovate in #3355
- Arrow Optics ❤️ Compose by @serras in #3299
- chore(deps): update all dependencies by @renovate in #3357
- chore(deps): update plugin com.gradle.enterprise to v3.16.2 by @renovate in #3361
- chore(deps): update gradle/gradle-build-action action to v3 by @renovate in #3362
- chore(deps): update dependency org.jetbrains.kotlinx.binary-compatibility-validator to v0.14.0 by @renovate in #3363
- Add AutoClose module by @nomisRev in #3356
- Update to gradle/actions/setup-gradle@v3 by @serras in #3364
- Added high arity for arrow-core.api functions by @yesitskev in #3360
- Deprecate widen by @kyay10 in #3369
- Add forEachAccumulating and refactor mapOrAccumulate by @kyay10 in #3367
- chore(deps): update all dependencies by @renovate in #3368
- Implement sealed class Lenses by @maksym-moroz in #3359
- fix(deps): update dependency androidx.compose.runtime:runtime to v1.6.1 by @renovate in #3371
- Update arrow-stack to mention all the projects by @serras in #3372
- added retryRaise and retryEither functions by @akotynski in #3373
- chore(deps): update all dependencies by @renovate in #3375
- Avoid storing more transformed elements than necessary by @serras in #3376
- Use macOS 14 runner by @serras in #3377
- fix(deps): update all dependencies by @renovate in #3378
- chore(deps): update dependency org.jetbrains.compose to v1.6.0 by @renovate in #3379
- Ignore properties in sealed hierarchies where the type changes across children by @serras in #3382
New Contributors
- @vngrp made their first contribution in #3143
- @CLOVIS-AI made their first contribution in #3139
- @mjadczak made their first contribution in #3127
- @sampengilly made their first contribution in #3114
- @terminalnode made their first contribution in #3352
- @yesitskev made their first contribution in #3360
- @maksym-moroz made their first contribution in #3359
- @akotynski made their first contribution in #3373
Full Changelog: 1.2.1...1.2.3
1.2.1
What's Changed
- Fix Option.tap deprecation message. by @wolpl in #3096
- Fix problem with optics and <*> generics by @serras in #3097
- Backport fix for K2 by @serras in #3098
- ignoreErrors for Raise by @serras in #3100
- Update all dependencies by @renovate in #3085
- Update all dependencies by @renovate in #3101
- Update all dependencies to v0.12.0-rc.5 by @renovate in #3102
- Update all dependencies to v1.9.0-1.0.12 by @renovate in #3103
- Update all dependencies to v5.10.0 by @renovate in #3104
- Remove references to shift in Either.kt by @nomisRev in #3105
- Update all dependencies by @renovate in #3106
- Update dependency org.jetbrains.kotlinx.kover to v0.7.3 by @renovate in #3107
- Update all dependencies by @renovate in #3112
parMapNotNull
by @raulraja in #3110parMapNotNullUnordered
forFlow
by @serras in #3111- Enable experimental K2 by @serras in #3087
- Update all dependencies by @renovate in #3118
- Update dependency com.diffplug.spotless to v6.21.0 by @renovate in #3119
- Inline
NonEmpty
maps by @serras in #3120 - Remove enableCompatibilityMetadataVariant by @nomisRev in #3124
- Update actions/checkout action to v4 by @renovate in #3125
- Update all dependencies by @renovate in #3121
New Contributors
Full Changelog: 1.2.0...1.2.1
1.2.0
What's Changed
- Add CNAME file to Dokka output by @franciscodr in #3029
- Remove legacy site code by @nomisRev in #3030
- Update README by @serras in #3033
- Cancel previous PR action on new commit by @nomisRev in #3032
- Remove legacy script files by @franciscodr in #3034
- Ensure optics type with "data" modifier is a class by @DeoTimeTheGithubUser in #3036
- Update all dependencies (major) by @renovate in #3042
- Remove test dependency from Arrow Fx by @nomisRev in #3046
- Bump Kotlin, KSP and coroutines version by @nomisRev in #3047
- fix mapIndexed when collecting multiple times by @hoc081098 in #3056
- Update versions by @nomisRev in #3058
- optics ksp plugin: fixed handling of variance (#3057) by @vladd-g in #3060
- Fixes recover inconsistency with raise DSL on types other than Either by @yoxjames in #3052
- Change NonEmptySet type parameter name from T to A by @franciscodr in #3062
- Add withError and (Eager)Effect.mapError by @kyay10 in #3059
- Update versions of several libraries by @serras in #3017
- Add merge builder for raise by @kyay10 in #3061
- Update all dependencies by @renovate in #3065
- Update dependency gradle to v8.2 by @renovate in #3070
- Fix warnings of single-subclass sealed classes by @jooohn in #3067
- KDoc for
Raise#raise
,Raise#ensure
andRaise#ensureNotNull
by @ILIYANGERMANOV in #3038 - Fix text repetition in EffectScope's deprecation message by @serras in #3072
- Introduce
NonEmptyCollection
by @serras in #3068 - Set up Spotless by @serras in #3075
- Update all dependencies by @renovate in #3079
- Add option to disable
inline
when using@optics
by @serras in #3078 - Update JS versions in
yarn.lock
by @serras in #3084 - Enable Automatic Modules for JVM by @serras in #3071
- Serialization module by @serras in #3077
- Add missing docs for
Raise
operations by @serras in #3082 - Add mapOrAccumulate extension in RaiseAccumulate by @nomisRev in #3086
- Additional tests for
copy
in Optics by @serras in #3089 - Apply Gradle Versioning in top project by @serras in #3092
- Add missing Versioning plug-in to
arrow-core-retrofit
by @serras in #3093 - Update
arrow-gradle-config
to 0.12-rc.4 by @serras in #3094 - MemoizedDeepRecursiveFunction by @serras in #3091
- Add reset and barrierAction to CyclicBarrier. by @HSAR in #3055
- [HOTFIX] Fix main publish by @nomisRev in #3095
New Contributors
- @DeoTimeTheGithubUser made their first contribution in #3036
- @vladd-g made their first contribution in #3060
- @yoxjames made their first contribution in #3052
- @kyay10 made their first contribution in #3059
- @jooohn made their first contribution in #3067
- @ILIYANGERMANOV made their first contribution in #3038
- @HSAR made their first contribution in #3055
Full Changelog: 1.2.0-RC...1.2.0
1.2.0-RC
What's Changed
- Arrow Resilience by @serras in #2885
- Add flattenOrAccumulate by @nomisRev in #2892
- Updated training link main menu by @israelpzglez in #2893
- Fix semantics of
untilOutput
anduntilInput
by @serras in #2896 - Use of macos-latest runner for building the landing page by @franciscodr in #2898
- Use Duration in Schedule by @serras in #2895
- Introduce parMap and deprecate parTraverseXXX by @nomisRev in #2863
- Adding
AT_MOST_ONCE
in lambdas by @poseidon2060 in #2901 - Back-port arrow-atomic form 2.x.x by @nomisRev in #2903
- Github Actions improvements, Revert karma config, and add KotestProjectConfig by @nomisRev in #2904
- Adding
EXACTLY_ONCE
in lambdas by @poseidon2060 in #2906 - Implement basic NonEmptySet by @ibado in #2899
- Add Saga type to Arrow Fx Resilience by @nomisRev in #2902
- Bump to Kotlin 1.8.10 by @nomisRev in #2914
- Fix annoying warnings in IntelliJ by @serras in #2918
- More contract annotations for Either, Ior, Nullable, and Option by @serras in #2915
- Backport Raise & error handlers by @nomisRev in #2912
zipOrAccumulate
forRaise
by @serras in #2919- Backport zipOrAccumulate for Either by @nomisRev in #2916
- Apply suggestions for
zipOrAccumulate
by @serras in #2920 - Overload Arrow FX ParZip for tupling #2821 by @lgtout in #2900
- Deprecate Const & Eval towards 2.x.x by @nomisRev in #2921
- Backport mapOrAccumulate by @nomisRev in #2922
- Update Kotlin/Native targets by @serras in #2926
- [Backport] MPP No Trace & Improve debugging experience of leaked raise calls by @nomisRev in #2923
- Introduce isLeft & isRight predicate API for Either by @nomisRev in #2927
- [PROPOSAL] Option API deprecation, and preparation for 2.x.x by @franciscodr in #2913
- Keyword sanitization for Lens code generation (#2924) by @hrafnthor in #2925
- Integration Xebia Functional by @israelpzglez in #2855
- Fix filterOrElse to handle null values correctly. by @bwanner in #2933
- Update dependency gradle to v8 by @renovate in #2931
- Fix Either.isLeft, Either.isRight & Option.isSome contract by @nomisRev in #2937
- Provide test coverage for Option.kt (#2894) by @swdevsm in #2934
- Adapting Dokka configuration for multi-module projects by @franciscodr in #2930
- Fix conflicting dokka config, downgrade Gradle for Dokka, and add GithubPages by @nomisRev in #2942
- Add DSL markers to all bind funs in Raise by @Zordid in #2944
- Remove ignored path option in the publish landing page workflow by @franciscodr in #2943
- Link KotlinX Coroutines to Arrow Fx Coroutines docs by @nomisRev in #2947
- Fix #2909 by @ibado in #2929
- Option: deprecate or, orElse and unzip by @nomisRev in #2949
- Deprecate Validated by @nomisRev in #2940
- Add exist fun to Either, for migration from Validated by @Zordid in #2941
- Simplify recover, and catch APIs. Add getOrElse by @nomisRev in #2954
- Fix ctx inconsistency by @nomisRev in #2956
- Allow bindNel in mapOrAccumulate, and add missing signatures by @nomisRev in #2952
- Bump org.gradle.kotlin.dsl.internal.io.timeout on CI to 2 minutes by @nomisRev in #2965
- Update Raise.xOrAccumulate by @nomisRev in #2958
- Iterable test by @abendt in #2960
- [PROPOSAL] Ior API deprecation, and preparation for 2.x.x by @gutiory in #2928
- Deprecation of
Semigroup
andMonoid
by @serras in #2935 - Fix
Either
deprecation replacement expressions by @gutiory in #2973 - Deprecate Either.toValidated() and Either.toValidatedNel() functions by @Zordid in #2974
- Update Circuit Breaker & remove Arrow Fx Coroutines dependency from Resilience by @nomisRev in #2905
- Show link text instead of link text and URL in documentation by @sesamzoo in #2961
- Speed up retrofit related long running tests (#2908) by @bbuallbest in #2962
- Deprecate
Result
zip
method in favour of DSL by @gutiory in #2977 - fix stdlib dependency by @i-walker in #2984
- Removes autobind DSL in favor of getOrElse by @nomisRev in #2968
- Tracing POC by @nomisRev in #2946
- Deprecate
Nullable
zip
method in favour of DSL by @gutiory in #2983 - New Schedule encoding for Fx Resilience by @nomisRev in #2979
- Remove strictly version from Resilience by @nomisRev in #2989
- Raise - Align names parameters, arguments and generic types by @nomisRev in #2987
- Missed block argument in fold by @nomisRev in #2991
- Recommend Either.getOrElse for handleError instead of recover by @nomisRev in #2986
- Add bind alias for Sequence operation in DSL by @nomisRev in #2978
- Deprecate Monoid and Semigroup in Optics by @serras in #2985
- Deprecate Iterable.traverse & niche APIs. Hygiene on docs. by @nomisRev in #2963
- Deprecate Map.kt traverse & niche signatures, hygiene & bindAll by @nomisRev in #2971
- Deprecate NonEmptyList.kt traverse & niche APIs by @franciscodr in #2990
- Deprecate
Sequence
signatures and hygiene by @gutiory in #2993 - Improve map test coverage by @abendt in #2980
- NonEmptyList: Add bindAll and more unit tests by @franciscodr in #2995
- Fix
Ior
deprecation replacement expressions by @gutiory in #2976 - Replace parTupled with parZipOrAccumulate by @nomisRev in #2957
- Add bindAll function for NonEmptySet by @franciscodr in #2997
- Fix
traverse
forEither
andOption
by @serras in #3000 - Check all uses of
Validated
for deprecation by @serras in #2994 - let Mapk 'zipN with nullable' tests use Arb.map2 to generate values by @abendt in #2999
- Remove
Monoid
andSemigroup
combine from replacements by @gutiory in #3003 - let memoize cache null result values by @abendt in #2998
- Add partitionMap to Iterable (#3001) by @jsoizo in #3004
- Create action to auto update a PR when destination branch is pushed by @gutiory in #3007
- Creating a new module for Arrow Resilience by @franciscodr in #3006
- Use
GITHUB_TOKEN
in auto-update-pr action by @gutiory in #3008 - arrow-core: speedup 'Arb.string()' related slow tests by @abendt in #3005
- arrow-optics: speedup 'Arb.string()' related slow tests by @abendt in #3010
- Remove deprecated code from KDoc in Either & Option by @nomisRev in #3012
- Fix sanitization of keywords by @serras in #3016
- Result & Sequence missing deprecation and revert post-fixed names by @nomisRev in #3015
- Update BOM by @nomisRev in #3018
- Backport creation of Isos for value classes by @serras in #3021
- Increase currying test coverage (#2894) by @lgtout in #2939
- Fix kotest duplicate testnames ...
1.1.5
What's Changed
- Remove
test
modules by @serras in #2874 - Mention Arrow 2.0 in README by @serras in #2878
- Prisms for Either by @serras in #2877
- Test 1.8.0 on CI by @nomisRev in #2864
- Implement 'align' using 'buildList' by @serras in #2886
- Improve debugging experience of leaked shift calls by @nomisRev in #2884
- Fix knitCheck & re-add check by @nomisRev in #2887
Full Changelog: 1.1.4...1.1.5