Skip to content

Releases: arkivanov/MVIKotlin

4.4.0

Choose a tag to compare

@arkivanov arkivanov released this 25 Apr 16:08
  • Updated Kotlin to 2.2.21 and other deps (#154 by @el-qq)
  • Notarized Time Travel Client app for macOS (can be downloaded below from the Assets section)

Versions and dependencies

Kotlin: 2.2.21
Essenty: 2.5.0

Module mvikotlin-extensions-reaktive

Reaktive: 2.4.0

Module mvikotlin-extensions-coroutines

kotlinx.coroutines: 1.10.2

4.3.0

Choose a tag to compare

@arkivanov arkivanov released this 16 Jan 16:30
42fa933
  • Updated Kotlin to 2.1.0 and other deps (#147)
  • Added Store#stateFlow(Lifecycle) and Store#labelsChannel(Lifecycle) API, promoted to stable (#148)

Versions and dependencies

Kotlin: 2.1.0
Essenty: 2.4.0

Module mvikotlin-extensions-reaktive

Reaktive: 2.3.0

Module mvikotlin-extensions-coroutines

kotlinx.coroutines: 1.9.0

4.2.0

Choose a tag to compare

@arkivanov arkivanov released this 08 Aug 22:11
  • Added Store.labelsChannel(...): ReceiveChannel<Label> extension function (#142)
  • Updated Kotlin to 2.0.10 (#143)

Versions and dependencies

Kotlin: 2.0.10
Essenty: 2.1.0

Module mvikotlin-extensions-reaktive

Reaktive: 2.2.0

Module mvikotlin-extensions-coroutines

kotlinx.coroutines: 1.8.1

4.1.0

Choose a tag to compare

@arkivanov arkivanov released this 07 Jun 09:36
018af7c
  • Use typeOf as key instead of KClass in InstanceKeeper#getStore (#138)
  • Updated Kotlin to 2.0.0, Essenty to 2.1.0 (mind the release notes), and other dependencies (#139)

Versions and dependencies

Kotlin: 2.0.0
Essenty: 2.1.0

Module mvikotlin-extensions-reaktive

Reaktive: 2.2.0

Module mvikotlin-extensions-coroutines

kotlinx.coroutines: 1.8.1

4.0.0

Choose a tag to compare

@arkivanov arkivanov released this 27 Apr 20:44
1350f82

Changes since version 4.0.0-beta01

  • Updated Essenty to 2.0.0(#134)
  • Promoted Executor onAction and forward methods to stable (#133)
  • Promoted DSL APIs to stable (#135)

Earlier changes since version 3.3.0

  • Support wasmJs target (#122, #124)
  • Updated Reaktive in mvikotlin-extensions-reaktive module to version 2.0.0 (#110 by @acousticksan)
  • Deleted all deprecated code (#113)
  • Merged rx, rx-internal and utils-internal modules into mvikotlin module (#115)
  • Disabled debug artifact publications for Android (#117)
  • Support sending Actions from Executors (#116)
  • Replaced getState argument function in Executors and state property in DSL with state() function (#118)

Updates and breaking changes since version 3.3.0

Please see the release notes of the version 4.0.0-alpha01 to learn about all breaking changes and migration guides.

Versions and dependencies

Kotlin: 1.9.23
Essenty: 2.0.0

Module mvikotlin-extensions-reaktive

Reaktive: 2.1.0

Module mvikotlin-extensions-coroutines

kotlinx.coroutines: 1.8.0

4.0.0-beta01

4.0.0-beta01 Pre-release
Pre-release

Choose a tag to compare

@arkivanov arkivanov released this 05 Apr 19:52
1865f31
  • Updated Kotlin to 1.9.23, Essenty to 2.0.0-beta01, coroutines to 1.8.0, Reaktive to 2.1.0 (#131)

Versions and dependencies

Kotlin: 1.9.23
Essenty: 2.0.0-beta01

Module mvikotlin-extensions-reaktive

Reaktive: 2.1.0

Module mvikotlin-extensions-coroutines

kotlinx.coroutines: 1.8.0

4.0.0-alpha02

4.0.0-alpha02 Pre-release
Pre-release

Choose a tag to compare

@arkivanov arkivanov released this 16 Jan 08:35
5a95449

Versions and dependencies

Kotlin: 1.9.21
Essenty: 2.0.0-alpha02

Module mvikotlin-extensions-reaktive

Reaktive: 2.1.0-beta01

Module mvikotlin-extensions-coroutines

kotlinx.coroutines: 1.8.0-RC2

4.0.0-alpha01

4.0.0-alpha01 Pre-release
Pre-release

Choose a tag to compare

@arkivanov arkivanov released this 02 Dec 15:31
dc70f60
  • Updated Reaktive in mvikotlin-extensions-reaktive module to version 2.0.0 (#110 by @acousticksan)
  • Updated Essenty to 1.3.0 (#119)
  • Deleted all deprecated code (#113)
  • Merged rx, rx-internal and utils-internal modules into mvikotlin module (#115)
  • Updated Kotlin to 1.9.21 (#114)
  • Disabled debug artifact publications for Android (#117)
  • Support sending Actions from Executors (#116)
  • Replaced getState argument function in Executors and state property in DSL with state() function (#118)

Updates and breaking changes

Please see the updated docs from more information.

Reaktive update to version 2.0.0

Reaktive library in the mvikotlin-extensions-reaktive module is updated to version 2.0.0, making the new version binary incompatible with MVIKotlin v3.x. If you are using this, make sure you also update Reaktive in your project

Deleted all deprecated code

All previously deprecated code is now removed:

  • The keepers module - please use StateKeeper from library Essenty.
  • SuspendBootstrapper and SuspendExecutor - please use CoroutineBootstrapper and CoroutineExecutor respectively.
  • TimeTravelView - please use either the time-travel IDEA plugin or the standalone desktop client, or copy TimeTravelView to your project.

The rx module is merged into mvikotlin module

Please replace the rx dependency from your project and replace com.arkivanov.mvikotlin.rx.* imports with com.arkivanov.mvikotlin.core.rx.*.

Sending Actions from Executors (experimental)

MVIKotlin now allows sending Actions from an Executor back to the Executor itself. This makes it easier to reuse Actions, and also better proper logging and time-traveling. This makes the new version of MVIKotlin binary incompatible with v3.x. See the updated docs.

The new state() function

The getState argument function in Executors and the state property in DSL is replaced with state() function. This makes the API simpler, and there is no need to pass getState argument around.

Versions and dependencies

Kotlin: 1.9.21
Essenty: 1.3.0

Module mvikotlin-extensions-reaktive

Reaktive: 2.0.0

Module mvikotlin-extensions-coroutines

kotlinx.coroutines: 1.7.3

3.3.0

Choose a tag to compare

@arkivanov arkivanov released this 04 Nov 22:46
37d45ad
  • Updated Kotlin to 1.9.20 and other dependencies (#100)
  • Removed the support of the Kotlin/Native legacy memory model (#101, #105)

Versions and dependencies

Kotlin: 1.9.20
Essenty: 1.2.0

3.2.1

Choose a tag to compare

@arkivanov arkivanov released this 09 May 08:24
0aae7f8
  • Fixed logs crashing on Paparazzi tests (#91)

Versions and dependencies

Kotlin: 1.8.0
Essenty: 1.0.0