Migration from 7.x to 8.x

This is the list of incompatibilities you may encounter when migrating your application to KVision 8.0.0.

  • The kvision-redux module has been removed, because the kotlin-redux library (part of the kotlin-wrappers project) has been discontinued. You need to change kvision-redux module to kvision-redux-kotlin in your build.gradle.kts file. The API is almost the same, just use createTypedReduxStore instead of createReduxStore function. Unfortunately there is no way to use additional middleware from the JS Redux ecosystem with ReduxKotlin module.

  • Because of different format of the webpack proxy configuration in the Kotlin Gradle Plugin 2.0.20, it is recommended to simplify the webpack configuration used inside build.gradle.kts and move more advanced stuff to the *.js files inside webpack.config.d directory. Remove devServer = KotlinWebpackConfig.DevServer(...) block from your build.gradle.kts file. Modify your webpack.config.d/webpack.js file to match that file in the template project: webpack.js. If your project is a fullstack application, you will also need webpack.config.d/proxy.js file.

  • Because of changes in the behaviour of the Gradle tasks in Kotlin 2.0.20, you may notice that all files in your src/jsMain/resources directory are now copied to the destination zip file. It's not always the desired behaviour, because your resources folder contains files which are processed by webpack (css, images, hbs). You can exclude files from copying by creating a modules directory and moving all your files there (remember to also fix your require and @JsModulepaths).

Last updated