-
Notifications
You must be signed in to change notification settings - Fork 448
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
Generalized copy for optics #2777
Conversation
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.
Small suggestion, and question.
Besides that it looks great @serras!! I think is an API many people have been looking for! 👏 👏
There have been many questions in the passed to update multiple fields using Optics.
* Declares a block in which all optics are nested within | ||
* the given [field]. Instead of: | ||
* | ||
* ``` |
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.
Should we turn these into Knit examples?
Maybe we should discuss a documentation strategy for Arrow 2.0 in the weekly meeting? 🤔
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.
Yep, it would be nice to have Knit examples working instead of simple blocks.
arrow-libs/optics/arrow-optics/src/commonMain/kotlin/arrow/optics/Copy.kt
Outdated
Show resolved
Hide resolved
…ics/Copy.kt Co-authored-by: Simon Vergauwen <nomisRev@users.noreply.github.com>
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.
🤩 Wow that is really nice
[![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 brings a small DSL which looks pretty much like Kotlin's built-in
copy
, but uses optics under the hood.