KVision
Primary version
Primary version
  • KVision Guide
  • Introduction
  • Migration
    • Migration from 8.x to 9.x
    • Migration from 7.x to 8.x
    • Migration from 6.x to 7.x
    • Migration from 5.x to 6.x
    • Migration from 4.x to 5.x
  • 1. Getting Started
    • Setting Up
    • Modules
    • Creating a New Application
    • Development Workflow
    • Hot Module Replacement
    • Debugging
    • Building For Production
  • 2. Frontend Development Guide
    • UI Structure
    • Root Container
    • Theming
    • Dark mode
    • Type safe CSS Properties
    • Basic Components
    • Icons and Images
    • Buttons and Toolbars
    • Layout Containers
    • Events
    • Working with State
    • DOM Bindings & Lifecycle Hooks
    • W3C, Snabdom, and KVision Elements
    • Forms
    • Form controls
    • Drag and drop
    • Internationalization
    • Adding custom tags (SVG example)
    • Custom components
  • 3. Optional UI Functionality (via modules)
    • Using Redux
    • Bootstrap
      • Navigation and menus
      • Tooltips and popovers
      • Modals, windows and toasts
    • Charts
    • Toasts
    • Tabulator Tables
    • Handlebars.js Templates
    • JS Routing with Navigo
    • jQuery Bindings
    • Using REST Services
  • 4. Integrating With Javascript Libraries
    • Integrating With React Components
  • 5. Fullstack Development Guide
    • Select Remote
    • Tom Select Remote
    • Tom Typeahead Remote
    • Tabulator Remote
  • FAQ
  • Useful References
Powered by GitBook
On this page
  1. Migration

Migration from 7.x to 8.x

PreviousMigration from 8.x to 9.xNextMigration from 6.x to 7.x

Last updated 8 months ago

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 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: . If your project is a fullstack application, you will also need 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).

kotlin-wrappers
webpack.js
webpack.config.d/proxy.js