Migrate Grunt to Webpack

Description

Steps to migrate Grunt to Webpack:

Changes in every module:

  • create a js file and import there all of the files that should be included in the build (js, css and external dependencies, without tests)

Changes in dev-ui:

  • add grunt-webpack, webpack and its modules to package.json devDependencies

  • create webpack config

  • add webpack config and grunt-webpack task to Grunt config (it's described in )

  • add a task to create a single entry point for webpack, a js file that imports entry points (the js file with imports created in each module) form all of the modules

  • remove custom tasks created to bundle css, js and html files (this will be handled by webpack loaders)

  • rewrite build tasks to use webpack instead of the custom tasks

 

Run failed tests:

Clone dev-ui → rm node_modules → uncomment -noTest → build dev-ui

Clone ui-components → rm node_modules → run ui-components (local version of node should be v14)

Checklists

Activity

Paweł Muchowski 
September 7, 2021 at 2:57 PM

Scope of this ticket grew a lot, we needed to upgrade version of Node to be able to run Webpack and because of that we needed to upgrade a lot of dependencies e.g. Grunt and Karma. I took a lot of time to find appropriate versions of some libraries (one that works with the old code, but also can be use in Webpack). Because of the test library update we needed to change all of the tests (there were some breaking changes between the versions of Karma/Jasmine). We also needed to make some small changes to all of the css files to be able to use Webpack to parse those files.

Paweł Muchowski 
September 3, 2021 at 7:03 PM

I was able to get the tests running after updating karma, but unfortunately there are some differences between the versions and some small changes are required in the tests.

Dominika Bieńkowska 
August 26, 2021 at 8:16 AM

TO DO
Fix tests

Szymon Rujner 
August 13, 2021 at 8:28 AM

Dominika Bieńkowska 
August 12, 2021 at 8:16 AM

LEFT TO DO:
- Fix SASS
- Tests are failing
- Fix imports order

Done
Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Story Points

Original estimate

Time tracking

5w 1d 4h 1m logged

Components

Sprint

Priority

Time Assistant

Created June 29, 2021 at 3:35 PM
Updated September 8, 2021 at 5:47 PM
Resolved September 8, 2021 at 11:50 AM