-
Notifications
You must be signed in to change notification settings - Fork 449
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable builder inference for optics copy
#2792
Conversation
@DslMarker | ||
public annotation class OpticsCopyMarker | ||
|
||
@OpticsCopyMarker |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does this do on the interface? I thought it was supposed to go on the functions, the documentation didn’t clarify it for me 😅
Since it’s applicable to interface, I’m wondering what it does.
Is it applied to all DSL functions that have this as a lambda receiver?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As I understand from https://kotlinlang.org/docs/type-safe-builders.html#scope-control-dslmarker, you put the annotation in the interface which will be in scope in the builder, which in this case is Copy
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As I understand the @DslMarker
is the thing that marks the member of that interface as "keywords", whereas @BuilderInference
changes how type checking works to better suit this kind of pattern.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay, I asked because I used @DslMarker
differently in the Arrow 2.0 branch and it worked for me in IDEA 🤔
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
According to the docs (emphasis mine):
To make the compiler start controlling scopes you only have to annotate the types of all receivers used in the DSL with the same marker annotation. For instance, for HTML Builders you declare an annotation
@HTMLTagMarker
:@DslMarker annotation class HtmlTagMarker
An annotation class is called a DSL marker if it is annotated with the
@DslMarker
annotation.[...]
After you've added this annotation, the Kotlin compiler knows which implicit receivers are part of the same DSL and allows to call members of the nearest receivers only.
@@ -20,6 +20,10 @@ if (enableCompatibilityMetadataVariant) { | |||
} | |||
} | |||
|
|||
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile>().configureEach { | |||
kotlinOptions.freeCompilerArgs += listOf("-Xenable-builder-inference", "-opt-in=kotlin.RequiresOptIn") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are both these flags needed?
First one is to allow builder inference inside Arrow, or to be able to expose annotation?
Second one is to allow OptIn without a compiler warning?
I’m always confused about the OptIn, because it works fine without this flag.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not sure, the docs at https://kotlinlang.org/docs/using-builders-with-builder-inference.html#writing-your-own-builders are by no means clear. But I'll delete the opt-in one.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But I'll delete the opt-in one.
I'm not sure if we need it yes, or no 😅 Just wanted to clarify, it can be that we're currently missing it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As you said "are by no means clear" :/ I feel the same for the opt-in
one.
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile>().configureEach { | ||
kotlinOptions.freeCompilerArgs += listOf("-Xenable-builder-inference") | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
AFAIK this is not needed. Since we have BuilderInference already working with *EffectScope in core and dont have to add it
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just pushed a commit removing it
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @serras 👍🏾
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [io.arrow-kt:arrow-fx-coroutines](https://togithub.com/arrow-kt/arrow) | `1.0.1` -> `1.1.3` | [![age](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-fx-coroutines/1.1.3/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-fx-coroutines/1.1.3/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-fx-coroutines/1.1.3/compatibility-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-fx-coroutines/1.1.3/confidence-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/) | | [io.arrow-kt:arrow-optics-ksp-plugin](https://togithub.com/arrow-kt/arrow) | `1.0.1` -> `1.1.3` | [![age](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-optics-ksp-plugin/1.1.3/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-optics-ksp-plugin/1.1.3/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-optics-ksp-plugin/1.1.3/compatibility-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-optics-ksp-plugin/1.1.3/confidence-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/) | | [io.arrow-kt:arrow-optics](https://togithub.com/arrow-kt/arrow) | `1.0.1` -> `1.1.3` | [![age](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-optics/1.1.3/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-optics/1.1.3/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-optics/1.1.3/compatibility-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-optics/1.1.3/confidence-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/) | | [io.arrow-kt:arrow-core](https://togithub.com/arrow-kt/arrow) | `1.0.1` -> `1.1.3` | [![age](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-core/1.1.3/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-core/1.1.3/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-core/1.1.3/compatibility-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-core/1.1.3/confidence-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/) | | [io.arrow-kt:arrow-stack](https://togithub.com/arrow-kt/arrow) | `1.0.1` -> `1.1.3` | [![age](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-stack/1.1.3/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-stack/1.1.3/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-stack/1.1.3/compatibility-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/io.arrow-kt:arrow-stack/1.1.3/confidence-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/) | --- ### ⚠ Dependency Lookup Warnings ⚠ Warnings were logged while processing this repo. Please check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>arrow-kt/arrow</summary> ### [`v1.1.3`](https://togithub.com/arrow-kt/arrow/releases/tag/1.1.3) [Compare Source](https://togithub.com/arrow-kt/arrow/compare/1.1.2...1.1.3) #### What's Changed - Fix license url by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2712](https://togithub.com/arrow-kt/arrow/pull/2712) - Add new workflow for publishing the landing page by [@​franciscodr](https://togithub.com/franciscodr) in [https://github.com/arrow-kt/arrow/pull/2716](https://togithub.com/arrow-kt/arrow/pull/2716) - Fix publish sync by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) in [https://github.com/arrow-kt/arrow/pull/2717](https://togithub.com/arrow-kt/arrow/pull/2717) - invert resource release order by [@​tKe](https://togithub.com/tKe) in [https://github.com/arrow-kt/arrow/pull/2714](https://togithub.com/arrow-kt/arrow/pull/2714) - Fix traversal code samples of docs by [@​b-schwab](https://togithub.com/b-schwab) in [https://github.com/arrow-kt/arrow/pull/2719](https://togithub.com/arrow-kt/arrow/pull/2719) - Adding kotlin-js-store folder by [@​franciscodr](https://togithub.com/franciscodr) in [https://github.com/arrow-kt/arrow/pull/2724](https://togithub.com/arrow-kt/arrow/pull/2724) - rename traverseX and sequenceX functions in core by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2715](https://togithub.com/arrow-kt/arrow/pull/2715) - feat: contravariance for R, A in Effect, EagerEffect and `in` for \*EffectScope by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2722](https://togithub.com/arrow-kt/arrow/pull/2722) - deprecate flatMap and map in EagerEffect by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2726](https://togithub.com/arrow-kt/arrow/pull/2726) - add Continuations and programs to overview section in arrow core by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2723](https://togithub.com/arrow-kt/arrow/pull/2723) - Update all dependencies by [@​renovate](https://togithub.com/renovate) in [https://github.com/arrow-kt/arrow/pull/2709](https://togithub.com/arrow-kt/arrow/pull/2709) - revert java setup by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2730](https://togithub.com/arrow-kt/arrow/pull/2730) - Add command to install bundler by [@​franciscodr](https://togithub.com/franciscodr) in [https://github.com/arrow-kt/arrow/pull/2729](https://togithub.com/arrow-kt/arrow/pull/2729) - Improve Nel constructor by [@​nomisRev](https://togithub.com/nomisRev) in [https://github.com/arrow-kt/arrow/pull/2728](https://togithub.com/arrow-kt/arrow/pull/2728) - improve generate-tag workflow by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2731](https://togithub.com/arrow-kt/arrow/pull/2731) - revert arrow-gradle-config to 0.10.1 by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2738](https://togithub.com/arrow-kt/arrow/pull/2738) - Rename duplicated test by [@​wojda](https://togithub.com/wojda) in [https://github.com/arrow-kt/arrow/pull/2740](https://togithub.com/arrow-kt/arrow/pull/2740) - Fix some compilation and test warnings by [@​wojda](https://togithub.com/wojda) in [https://github.com/arrow-kt/arrow/pull/2741](https://togithub.com/arrow-kt/arrow/pull/2741) - Convert Arrow core effect into a non-inline function by [@​franciscodr](https://togithub.com/franciscodr) in [https://github.com/arrow-kt/arrow/pull/2734](https://togithub.com/arrow-kt/arrow/pull/2734) - add merge to validated by [@​agusotto96](https://togithub.com/agusotto96) in [https://github.com/arrow-kt/arrow/pull/2739](https://togithub.com/arrow-kt/arrow/pull/2739) - Fix compilation warnings by replacing usages of deprecated methods by [@​wojda](https://togithub.com/wojda) in [https://github.com/arrow-kt/arrow/pull/2742](https://togithub.com/arrow-kt/arrow/pull/2742) - Bump versions by [@​nomisRev](https://togithub.com/nomisRev) in [https://github.com/arrow-kt/arrow/pull/2745](https://togithub.com/arrow-kt/arrow/pull/2745) - Add `kotlin.mpp.enableCompatibilityMetadataVariant=true` by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) in [https://github.com/arrow-kt/arrow/pull/2747](https://togithub.com/arrow-kt/arrow/pull/2747) - fix alpha tag build task by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2749](https://togithub.com/arrow-kt/arrow/pull/2749) - Fix build, inject kotlin.mpp.enableCompatibilityMetadataVariant in CI by [@​nomisRev](https://togithub.com/nomisRev) in [https://github.com/arrow-kt/arrow/pull/2751](https://togithub.com/arrow-kt/arrow/pull/2751) - add merge function for \*Effect by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2752](https://togithub.com/arrow-kt/arrow/pull/2752) - Small docs fix for widen function by [@​lenguyenthanh](https://togithub.com/lenguyenthanh) in [https://github.com/arrow-kt/arrow/pull/2754](https://togithub.com/arrow-kt/arrow/pull/2754) - max and min methods for NonEmptyList by [@​dorians](https://togithub.com/dorians) in [https://github.com/arrow-kt/arrow/pull/2622](https://togithub.com/arrow-kt/arrow/pull/2622) - Deprecate arrow test modules by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2753](https://togithub.com/arrow-kt/arrow/pull/2753) - Update kotlin-js-store/yarn.lock by [@​serras](https://togithub.com/serras) in [https://github.com/arrow-kt/arrow/pull/2756](https://togithub.com/arrow-kt/arrow/pull/2756) - Update all dependencies except the compiler version by [@​serras](https://togithub.com/serras) in [https://github.com/arrow-kt/arrow/pull/2757](https://togithub.com/arrow-kt/arrow/pull/2757) - Resource deprecate traverseResource, fixes arity-4 by [@​nomisRev](https://togithub.com/nomisRev) in [https://github.com/arrow-kt/arrow/pull/2750](https://togithub.com/arrow-kt/arrow/pull/2750) - Fix [#​2764](https://togithub.com/arrow-kt/arrow/issues/2764) & [#​2760](https://togithub.com/arrow-kt/arrow/issues/2760) by [@​nomisRev](https://togithub.com/nomisRev) in [https://github.com/arrow-kt/arrow/pull/2765](https://togithub.com/arrow-kt/arrow/pull/2765) - \[2761] Add explicit visibility modifier for all the generated optics by [@​aangairbender](https://togithub.com/aangairbender) in [https://github.com/arrow-kt/arrow/pull/2763](https://togithub.com/arrow-kt/arrow/pull/2763) - catch for EffectScope by [@​serras](https://togithub.com/serras) in [https://github.com/arrow-kt/arrow/pull/2746](https://togithub.com/arrow-kt/arrow/pull/2746) - Refine the Arrow version selector by [@​franciscodr](https://togithub.com/franciscodr) in [https://github.com/arrow-kt/arrow/pull/2770](https://togithub.com/arrow-kt/arrow/pull/2770) - update gradle wrapper by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2771](https://togithub.com/arrow-kt/arrow/pull/2771) - Consent management osano by [@​israelperezglez](https://togithub.com/israelperezglez) in [https://github.com/arrow-kt/arrow/pull/2755](https://togithub.com/arrow-kt/arrow/pull/2755) - Add ruby setup for publication task by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2774](https://togithub.com/arrow-kt/arrow/pull/2774) - fix ruby set up by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2775](https://togithub.com/arrow-kt/arrow/pull/2775) - Fix [#​2779](https://togithub.com/arrow-kt/arrow/issues/2779) by [@​nomisRev](https://togithub.com/nomisRev) in [https://github.com/arrow-kt/arrow/pull/2783](https://togithub.com/arrow-kt/arrow/pull/2783) - deprecate orNull Either extension function by [@​i-walker](https://togithub.com/i-walker) in [https://github.com/arrow-kt/arrow/pull/2773](https://togithub.com/arrow-kt/arrow/pull/2773) - Support generics and inner classes in `@optics` by [@​serras](https://togithub.com/serras) in [https://github.com/arrow-kt/arrow/pull/2776](https://togithub.com/arrow-kt/arrow/pull/2776) - Generalized copy for optics by [@​serras](https://togithub.com/serras) in [https://github.com/arrow-kt/arrow/pull/2777](https://togithub.com/arrow-kt/arrow/pull/2777) - Fix usage of startCoroutineUninterceptedOrReturn by [@​nomisRev](https://togithub.com/nomisRev) in [https://github.com/arrow-kt/arrow/pull/2789](https://togithub.com/arrow-kt/arrow/pull/2789) - Fix example in documentation by [@​obecker](https://togithub.com/obecker) in [https://github.com/arrow-kt/arrow/pull/2790](https://togithub.com/arrow-kt/arrow/pull/2790) - Backport flattening token/shift into Cont by [@​nomisRev](https://togithub.com/nomisRev) in [https://github.com/arrow-kt/arrow/pull/2791](https://togithub.com/arrow-kt/arrow/pull/2791) - Enable builder inference for optics `copy` by [@​serras](https://togithub.com/serras) in [https://github.com/arrow-kt/arrow/pull/2792](https://togithub.com/arrow-kt/arrow/pull/2792) - Update API compatibility validator version by [@​serras](https://togithub.com/serras) in [https://github.com/arrow-kt/arrow/pull/2794](https://togithub.com/arrow-kt/arrow/pull/2794) - \[BUGFIX] Result.zip by [@​nomisRev](https://togithub.com/nomisRev) in [https://github.com/arrow-kt/arrow/pull/2804](https://togithub.com/arrow-kt/arrow/pull/2804) - Update docs from version 1.0.1 to 1.1.2 by [@​Dobiasd](https://togithub.com/Dobiasd) in [https://github.com/arrow-kt/arrow/pull/2808](https://togithub.com/arrow-kt/arrow/pull/2808) - add separateEither and separateValidated test by [@​hoc081098](https://togithub.com/hoc081098) in [https://github.com/arrow-kt/arrow/pull/2814](https://togithub.com/arrow-kt/arrow/pull/2814) - Refactor - [#​2812](https://togithub.com/arrow-kt/arrow/issues/2812) iterable separate performance by [@​Khepu](https://togithub.com/Khepu) in [https://github.com/arrow-kt/arrow/pull/2815](https://togithub.com/arrow-kt/arrow/pull/2815) - Add Resource.allocated() to decompose Resource into it's allocate and… by [@​custommonkey](https://togithub.com/custommonkey) in [https://github.com/arrow-kt/arrow/pull/2820](https://togithub.com/arrow-kt/arrow/pull/2820) #### New Contributors - [@​tKe](https://togithub.com/tKe) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2714](https://togithub.com/arrow-kt/arrow/pull/2714) - [@​b-schwab](https://togithub.com/b-schwab) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2719](https://togithub.com/arrow-kt/arrow/pull/2719) - [@​wojda](https://togithub.com/wojda) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2740](https://togithub.com/arrow-kt/arrow/pull/2740) - [@​agusotto96](https://togithub.com/agusotto96) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2739](https://togithub.com/arrow-kt/arrow/pull/2739) - [@​dorians](https://togithub.com/dorians) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2622](https://togithub.com/arrow-kt/arrow/pull/2622) - [@​aangairbender](https://togithub.com/aangairbender) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2763](https://togithub.com/arrow-kt/arrow/pull/2763) - [@​obecker](https://togithub.com/obecker) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2790](https://togithub.com/arrow-kt/arrow/pull/2790) - [@​Dobiasd](https://togithub.com/Dobiasd) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2808](https://togithub.com/arrow-kt/arrow/pull/2808) - [@​hoc081098](https://togithub.com/hoc081098) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2814](https://togithub.com/arrow-kt/arrow/pull/2814) - [@​Khepu](https://togithub.com/Khepu) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2815](https://togithub.com/arrow-kt/arrow/pull/2815) - [@​custommonkey](https://togithub.com/custommonkey) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2820](https://togithub.com/arrow-kt/arrow/pull/2820) **Full Changelog**: arrow-kt/arrow@1.1.2...1.1.3 ### [`v1.1.2`](https://togithub.com/arrow-kt/arrow/releases/tag/1.1.2) [Compare Source](https://togithub.com/arrow-kt/arrow/compare/1.1.0...1.1.2) #### What's Changed - Update all dependencies to v1.6.21-1.0.5 ([#​2708](https://togithub.com/arrow-kt/arrow/issues/2708)) by [@​renovate-bot](https://togithub.com/renovate-bot) **Full Changelog**: arrow-kt/arrow@1.1.0...1.1.2 ### [`v1.1.0`](https://togithub.com/arrow-kt/arrow/releases/tag/1.1.0) [Compare Source](https://togithub.com/arrow-kt/arrow/compare/1.0.1...1.1.0) #### What's Changed - Define Dsl as public ([#​2706](https://togithub.com/arrow-kt/arrow/issues/2706)) by [@​i-walker](https://togithub.com/i-walker) - Update all dependencies ([#​2705](https://togithub.com/arrow-kt/arrow/issues/2705)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Update link to Arrow Analysis documentation ([#​2701](https://togithub.com/arrow-kt/arrow/issues/2701)) by [@​franciscodr](https://togithub.com/franciscodr) - Update all dependencies ([#​2703](https://togithub.com/arrow-kt/arrow/issues/2703)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Update plugin dokka to v1.6.20 ([#​2702](https://togithub.com/arrow-kt/arrow/issues/2702)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Update stefanzweifel/git-auto-commit-action action to v4.14.1 ([#​2700](https://togithub.com/arrow-kt/arrow/issues/2700)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Update all dependencies ([#​2699](https://togithub.com/arrow-kt/arrow/issues/2699)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Update all dependencies ([#​2696](https://togithub.com/arrow-kt/arrow/issues/2696)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Update ([#​2698](https://togithub.com/arrow-kt/arrow/issues/2698)) by [@​i-walker](https://togithub.com/i-walker) - Update libs.versions.toml ([#​2697](https://togithub.com/arrow-kt/arrow/issues/2697)) by [@​i-walker](https://togithub.com/i-walker) - Fix Either#isNotEmpty()'s KDoc sample ([#​2694](https://togithub.com/arrow-kt/arrow/issues/2694)) by [@​ChristianGarcia](https://togithub.com/ChristianGarcia) - Update gradle/gradle-build-action action to v2.1.5 ([#​2695](https://togithub.com/arrow-kt/arrow/issues/2695)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Update all dependencies ([#​2665](https://togithub.com/arrow-kt/arrow/issues/2665)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Rename traverseX and sequenceX for Iterable ([#​2692](https://togithub.com/arrow-kt/arrow/issues/2692)) by [@​i-walker](https://togithub.com/i-walker) - Rename Sequence sequenceX, traverseX and deprecate Sequence.some ([#​2686](https://togithub.com/arrow-kt/arrow/issues/2686)) by [@​i-walker](https://togithub.com/i-walker) - Deprecate combineAll in favour of fold ([#​2687](https://togithub.com/arrow-kt/arrow/issues/2687)) by [@​i-walker](https://togithub.com/i-walker) - rm snapshot and update Kotlin label ([#​2690](https://togithub.com/arrow-kt/arrow/issues/2690)) by [@​i-walker](https://togithub.com/i-walker) - Resource tap deprecation ([#​2684](https://togithub.com/arrow-kt/arrow/issues/2684)) by [@​i-walker](https://togithub.com/i-walker) - Update Set up Documentation ([#​2685](https://togithub.com/arrow-kt/arrow/issues/2685)) by [@​i-walker](https://togithub.com/i-walker) - Fix TOC ([#​2688](https://togithub.com/arrow-kt/arrow/issues/2688)) by [@​i-walker](https://togithub.com/i-walker) - Generate optics based on targets or all ([#​2683](https://togithub.com/arrow-kt/arrow/issues/2683)) by [@​i-walker](https://togithub.com/i-walker) - Schedule.repeatAsFlow ([#​2676](https://togithub.com/arrow-kt/arrow/issues/2676)) by [@​i-walker](https://togithub.com/i-walker) - File name generation fix ([#​2681](https://togithub.com/arrow-kt/arrow/issues/2681)) by [@​i-walker](https://togithub.com/i-walker) - Update all dependencies (major) ([#​2673](https://togithub.com/arrow-kt/arrow/issues/2673)) by [@​renovate-bot](https://togithub.com/renovate-bot) - fix imports for ksp plugin ([#​2678](https://togithub.com/arrow-kt/arrow/issues/2678)) by [@​i-walker](https://togithub.com/i-walker) - add Nullable proposal ([#​2675](https://togithub.com/arrow-kt/arrow/issues/2675)) by [@​i-walker](https://togithub.com/i-walker) - Resource.asFlow ([#​2677](https://togithub.com/arrow-kt/arrow/issues/2677)) by [@​i-walker](https://togithub.com/i-walker) - remove design doc of Effect ([#​2674](https://togithub.com/arrow-kt/arrow/issues/2674)) by [@​i-walker](https://togithub.com/i-walker) - Fix typos reorg resource computation block ([#​2671](https://togithub.com/arrow-kt/arrow/issues/2671)) by [@​i-walker](https://togithub.com/i-walker) - deprecate signatures in computations and add Result for continuations ([#​2669](https://togithub.com/arrow-kt/arrow/issues/2669)) by [@​i-walker](https://togithub.com/i-walker) - Fix bug in the transaction example ([#​2667](https://togithub.com/arrow-kt/arrow/issues/2667)) by [@​SaberCon](https://togithub.com/SaberCon) - deprecate arrow.continuation ([#​2672](https://togithub.com/arrow-kt/arrow/issues/2672)) by [@​i-walker](https://togithub.com/i-walker) - fix sitemap titles ([#​2670](https://togithub.com/arrow-kt/arrow/issues/2670)) by [@​i-walker](https://togithub.com/i-walker) - Transfer Cont from [@​nomisrev](https://togithub.com/nomisrev) to arrow ([#​2661](https://togithub.com/arrow-kt/arrow/issues/2661)) by [@​i-walker](https://togithub.com/i-walker) - Non throwing Retrofit Either adapter ([#​2621](https://togithub.com/arrow-kt/arrow/issues/2621)) by [@​lukaszkalnik](https://togithub.com/lukaszkalnik) - Retrofit adapter: allow null response body for methods returning Unit ([#​2625](https://togithub.com/arrow-kt/arrow/issues/2625)) by [@​lukaszkalnik](https://togithub.com/lukaszkalnik) - Fix broken build main Optics Reflect ([#​2666](https://togithub.com/arrow-kt/arrow/issues/2666)) by [@​nomisRev](https://togithub.com/nomisRev) - Update documentation links in README ([#​2664](https://togithub.com/arrow-kt/arrow/issues/2664)) by [@​fo2rist](https://togithub.com/fo2rist) - Optics based on kotlin.reflect ([#​2612](https://togithub.com/arrow-kt/arrow/issues/2612)) by [@​serras](https://togithub.com/serras) - \[Optics] Optional getter ([#​2611](https://togithub.com/arrow-kt/arrow/issues/2611)) by [@​serras](https://togithub.com/serras) - Update all dependencies ([#​2663](https://togithub.com/arrow-kt/arrow/issues/2663)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Fix link to /patterns/error_handling/ ([#​2627](https://togithub.com/arrow-kt/arrow/issues/2627)) by [@​IlyaPomaskin](https://togithub.com/IlyaPomaskin) - Update all dependencies ([#​2659](https://togithub.com/arrow-kt/arrow/issues/2659)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Update gradle/gradle-build-action action to v2.1.1 ([#​2653](https://togithub.com/arrow-kt/arrow/issues/2653)) by [@​renovate-bot](https://togithub.com/renovate-bot) - \[Optics KSP] Update docs to talk about IDEs ([#​2655](https://togithub.com/arrow-kt/arrow/issues/2655)) by [@​serras](https://togithub.com/serras) - Use first, .. instead of a,.. ([#​2654](https://togithub.com/arrow-kt/arrow/issues/2654)) by [@​nomisRev](https://togithub.com/nomisRev) - Update README.md ([#​2631](https://togithub.com/arrow-kt/arrow/issues/2631)) by [@​i-walker](https://togithub.com/i-walker) - CU-23dm3ye support maven publication ([#​2652](https://togithub.com/arrow-kt/arrow/issues/2652)) by [@​i-walker](https://togithub.com/i-walker) - Update arrow gradle version ([#​2651](https://togithub.com/arrow-kt/arrow/issues/2651)) by [@​i-walker](https://togithub.com/i-walker) - Move Arrow Optics KSP to main/test hierarchy ([#​2649](https://togithub.com/arrow-kt/arrow/issues/2649)) by [@​serras](https://togithub.com/serras) - Update libs.versions.toml ([#​2648](https://togithub.com/arrow-kt/arrow/issues/2648)) by [@​i-walker](https://togithub.com/i-walker) - Link Analysis from home page ([#​2595](https://togithub.com/arrow-kt/arrow/issues/2595)) by [@​serras](https://togithub.com/serras) - Clean up README after gradle upgrade ([#​2642](https://togithub.com/arrow-kt/arrow/issues/2642)) by [@​felixdivo](https://togithub.com/felixdivo) - Update plugin kotest-multiplatform to v5.1.0 ([#​2645](https://togithub.com/arrow-kt/arrow/issues/2645)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Update libs.versions.toml ([#​2644](https://togithub.com/arrow-kt/arrow/issues/2644)) by [@​i-walker](https://togithub.com/i-walker) - Update all dependencies to v5.1.0 ([#​2643](https://togithub.com/arrow-kt/arrow/issues/2643)) by [@​renovate-bot](https://togithub.com/renovate-bot) - revert ksp plugin to jvm only ([#​2640](https://togithub.com/arrow-kt/arrow/issues/2640)) by [@​i-walker](https://togithub.com/i-walker) - update arrow gradle ([#​2639](https://togithub.com/arrow-kt/arrow/issues/2639)) by [@​i-walker](https://togithub.com/i-walker) - Update all dependencies ([#​2638](https://togithub.com/arrow-kt/arrow/issues/2638)) by [@​renovate-bot](https://togithub.com/renovate-bot) - fix typo comment of circuitbreaker ([#​2637](https://togithub.com/arrow-kt/arrow/issues/2637)) by larryjung - Fixes a few typos on the Fx docs ([#​2620](https://togithub.com/arrow-kt/arrow/issues/2620)) by [@​legzo](https://togithub.com/legzo) - Update contributing guide with Knit ([#​2634](https://togithub.com/arrow-kt/arrow/issues/2634)) by [@​lukaszkalnik](https://togithub.com/lukaszkalnik) - \[Optics] Show error for generic classes in KSP plug-in ([#​2636](https://togithub.com/arrow-kt/arrow/issues/2636)) by [@​serras](https://togithub.com/serras) - Pass Arrow version to publish_doc job ([#​2633](https://togithub.com/arrow-kt/arrow/issues/2633)) by [@​franciscodr](https://togithub.com/franciscodr) - Fix 404 error in the Core library documentation ([#​2623](https://togithub.com/arrow-kt/arrow/issues/2623)) by [@​devmarkpro](https://togithub.com/devmarkpro) - Fix Retrofit adapter test configuration ([#​2624](https://togithub.com/arrow-kt/arrow/issues/2624)) by [@​lukaszkalnik](https://togithub.com/lukaszkalnik) - Update all dependencies ([#​2628](https://togithub.com/arrow-kt/arrow/issues/2628)) by [@​renovate-bot](https://togithub.com/renovate-bot) - run on windows only windows test ([#​2630](https://togithub.com/arrow-kt/arrow/issues/2630)) by [@​i-walker](https://togithub.com/i-walker) - Update CONTRIBUTING.md with the new build guide ([#​2600](https://togithub.com/arrow-kt/arrow/issues/2600)) by [@​lukaszkalnik](https://togithub.com/lukaszkalnik) - Bump Arrow Gradle Config to 0.6.1-rc.4 by [@​nomisRev](https://togithub.com/nomisRev) - \[Github Action] Run build on all platforms ([#​2626](https://togithub.com/arrow-kt/arrow/issues/2626)) by [@​nomisRev](https://togithub.com/nomisRev) - Disable Gradle scan, and Gradle daemon by [@​nomisRev](https://togithub.com/nomisRev) - Update all dependencies ([#​2617](https://togithub.com/arrow-kt/arrow/issues/2617)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Disable ksp, and ksp test in Arrow Optics by [@​nomisRev](https://togithub.com/nomisRev) - Use gradle action everywhere, revery permSize, and add --full-stacktrace everywhere by [@​nomisRev](https://togithub.com/nomisRev) - Make KSP plugin a JVM module by [@​nomisRev](https://togithub.com/nomisRev) - Use gradle action, and add --full-stacktrace by [@​nomisRev](https://togithub.com/nomisRev) - Bump to arrow gradle config rc3 by [@​nomisRev](https://togithub.com/nomisRev) - Revert back to ./gradlew by [@​nomisRev](https://togithub.com/nomisRev) - Fix publish file by [@​nomisRev](https://togithub.com/nomisRev) - Use gradle action for publish, and increase timeout time by [@​nomisRev](https://togithub.com/nomisRev) - Setup Java publish.yml by [@​nomisRev](https://togithub.com/nomisRev) - Update publish workflow by [@​nomisRev](https://togithub.com/nomisRev) - Run ./gradlew before get-arrow-version by [@​nomisRev](https://togithub.com/nomisRev) - Update publish.yml by [@​nomisRev](https://togithub.com/nomisRev) - Add lib_version ([#​2616](https://togithub.com/arrow-kt/arrow/issues/2616)) by [@​nomisRev](https://togithub.com/nomisRev) - Bump Gradle Config to 0.6.1-RC.1 ([#​2615](https://togithub.com/arrow-kt/arrow/issues/2615)) by [@​nomisRev](https://togithub.com/nomisRev) - Update all dependencies ([#​2566](https://togithub.com/arrow-kt/arrow/issues/2566)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Disable parallel gradle ([#​2614](https://togithub.com/arrow-kt/arrow/issues/2614)) by [@​nomisRev](https://togithub.com/nomisRev) - Fix Gradle an existing connection was forcibly closed by the remote host ([#​2610](https://togithub.com/arrow-kt/arrow/issues/2610)) by [@​nomisRev](https://togithub.com/nomisRev) - Update publish gradle opts, and remove gradle cache from tag workflows by [@​nomisRev](https://togithub.com/nomisRev) - Remove gradle cache from publish workflow by [@​nomisRev](https://togithub.com/nomisRev) - Fix Windows env settings in publish workflow ([#​2609](https://togithub.com/arrow-kt/arrow/issues/2609)) by [@​raulraja](https://togithub.com/raulraja) - Fix `publish` and `pull_request` workflows ([#​2608](https://togithub.com/arrow-kt/arrow/issues/2608)) by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - Change Java memory settings by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - Add Java and Gradle settings for both generate tag workflows by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - Add `generate-alpha-tag` by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - Change `tags` regex by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - Merge remote-tracking branch 'origin/main' into rr-js-add-versioning-plugin by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - Re-organize Optics docs ([#​2583](https://togithub.com/arrow-kt/arrow/issues/2583)) by [@​serras](https://togithub.com/serras) - Fixing documentation workflow ([#​2594](https://togithub.com/arrow-kt/arrow/issues/2594)) by [@​franciscodr](https://togithub.com/franciscodr) - Upgrade to kotlinx-coroutines 1.6.0 ([#​2606](https://togithub.com/arrow-kt/arrow/issues/2606)) by [@​serras](https://togithub.com/serras) - Job to update the API files ([#​2605](https://togithub.com/arrow-kt/arrow/issues/2605)) by [@​serras](https://togithub.com/serras) - Rename arrow-optics-ksp to arrow-optics-ksp-plugin ([#​2604](https://togithub.com/arrow-kt/arrow/issues/2604)) by [@​serras](https://togithub.com/serras) - Remove legacy Meta, bring Optics KSP ([#​2599](https://togithub.com/arrow-kt/arrow/issues/2599)) by [@​nomisRev](https://togithub.com/nomisRev) - docs(Either): describe the `all` method ([#​2551](https://togithub.com/arrow-kt/arrow/issues/2551)) by [@​codymikol](https://togithub.com/codymikol) - Make sure listHead set works properly ([#​2589](https://togithub.com/arrow-kt/arrow/issues/2589)) by [@​lenguyenthanh](https://togithub.com/lenguyenthanh) - Code block style ([#​2596](https://togithub.com/arrow-kt/arrow/issues/2596)) by [@​israelperezglez](https://togithub.com/israelperezglez) - Add `JAVA_OPTS` and `GRADLE_OPTS` to `publish` and `pull_request` by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - Refactor `publish` and `pull-request` workflows by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - Fix tag regex in `publish` workflow by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - Refactor `publish.yml` workflow and add `generate-tag` workflow by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - Refactor `publish.yml` workflow by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - Add `vcs.xml` by [@​JavierSegoviaCordoba](https://togithub.com/JavierSegoviaCordoba) - versioning plugin by [@​raulraja](https://togithub.com/raulraja) - Remove base directory for gradle.properties file ([#​2585](https://togithub.com/arrow-kt/arrow/issues/2585)) by [@​franciscodr](https://togithub.com/franciscodr) - Simplify Gradle layout, + KNIT, - ANK and fix site code fences ([#​2584](https://togithub.com/arrow-kt/arrow/issues/2584)) by [@​raulraja](https://togithub.com/raulraja) - Fix bug cancellation parMap ([#​2579](https://togithub.com/arrow-kt/arrow/issues/2579)) by [@​nomisRev](https://togithub.com/nomisRev) - Resource computation block ([#​2571](https://togithub.com/arrow-kt/arrow/issues/2571)) by [@​nomisRev](https://togithub.com/nomisRev) - make Semigroup a fun interface ([#​2569](https://togithub.com/arrow-kt/arrow/issues/2569)) by [@​brezinajn](https://togithub.com/brezinajn) - Update all dependencies (major) ([#​2567](https://togithub.com/arrow-kt/arrow/issues/2567)) by [@​renovate-bot](https://togithub.com/renovate-bot) - Configure Renovate ([#​2533](https://togithub.com/arrow-kt/arrow/issues/2533)) by [@​renovate-bot](https://togithub.com/renovate-bot) #### New Contributors - [@​brezinajn](https://togithub.com/brezinajn) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2569](https://togithub.com/arrow-kt/arrow/pull/2569) - [@​devmarkpro](https://togithub.com/devmarkpro) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2623](https://togithub.com/arrow-kt/arrow/pull/2623) - [@​IlyaPomaskin](https://togithub.com/IlyaPomaskin) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2627](https://togithub.com/arrow-kt/arrow/pull/2627) - [@​felixdivo](https://togithub.com/felixdivo) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2642](https://togithub.com/arrow-kt/arrow/pull/2642) - [@​fo2rist](https://togithub.com/fo2rist) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2664](https://togithub.com/arrow-kt/arrow/pull/2664) - [@​SaberCon](https://togithub.com/SaberCon) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2667](https://togithub.com/arrow-kt/arrow/pull/2667) - [@​ChristianGarcia](https://togithub.com/ChristianGarcia) made their first contribution in [https://github.com/arrow-kt/arrow/pull/2694](https://togithub.com/arrow-kt/arrow/pull/2694) **Full Changelog**: arrow-kt/arrow@1.0.1...1.1.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/elide-dev/v3). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC4xMDIuMCIsInVwZGF0ZWRJblZlciI6IjM0LjEwMi4wIn0=-->
This should help type inference and show nicer in the IDE