Migrate to Spring Boot 4 (#868)

* Switched from TomCat to Jetty
* Hibernate migrations
* Removed dependency on Spring-Boot-Content-FS
* Migrate to Jackson 3
* Migrate LegacyExtensionFinder -> IndexedExtensionFinder
* Fix code inspection issues
* Exclude Config classes from Sonar coverage calcualtion
* Add FileStorageServiceTest
* Add tests for (De-)serializers
* Exclude H2 package from Sonar coverage reporting
* Add Sonar scan
* Update JVM in CI
* Update dependency versions
This commit is contained in:
grimsi
2026-02-01 10:48:26 +01:00
parent 111e164fab
commit ecd369cd30
103 changed files with 3562 additions and 2928 deletions
+144 -160
View File
@@ -5,51 +5,47 @@
"dependencies": {
"@heroui/react": "^2.8.7",
"@phosphor-icons/react": "^2.1.10",
"@polymer/polymer": "3.5.2",
"@react-stately/data": "^3.12.2",
"@react-types/shared": "^3.28.0",
"@tailwindcss/vite": "4.1.13",
"@vaadin/bundles": "24.9.4",
"@vaadin/aura": "25.0.3",
"@vaadin/common-frontend": "0.0.19",
"@vaadin/hilla-file-router": "24.9.4",
"@vaadin/hilla-frontend": "24.9.4",
"@vaadin/hilla-lit-form": "24.9.4",
"@vaadin/hilla-react-auth": "24.9.4",
"@vaadin/hilla-react-crud": "24.9.4",
"@vaadin/hilla-react-form": "24.9.4",
"@vaadin/hilla-react-i18n": "24.9.4",
"@vaadin/hilla-react-signals": "24.9.4",
"@vaadin/polymer-legacy-adapter": "24.9.4",
"@vaadin/react-components": "24.9.4",
"@vaadin/hilla-file-router": "25.0.4",
"@vaadin/hilla-frontend": "25.0.4",
"@vaadin/hilla-lit-form": "25.0.4",
"@vaadin/hilla-react-auth": "25.0.4",
"@vaadin/hilla-react-crud": "25.0.4",
"@vaadin/hilla-react-form": "25.0.4",
"@vaadin/hilla-react-i18n": "25.0.4",
"@vaadin/hilla-react-signals": "25.0.4",
"@vaadin/react-components": "25.0.3",
"@vaadin/vaadin-development-mode-detector": "2.0.7",
"@vaadin/vaadin-lumo-styles": "24.9.4",
"@vaadin/vaadin-material-styles": "24.9.4",
"@vaadin/vaadin-themable-mixin": "24.9.4",
"@vaadin/vaadin-lumo-styles": "25.0.3",
"@vaadin/vaadin-themable-mixin": "25.0.3",
"@vaadin/vaadin-usage-statistics": "2.1.3",
"blurhash": "^2.0.5",
"classnames": "^2.5.1",
"construct-style-sheets-polyfill": "3.1.0",
"date-fns": "2.29.3",
"date-fns": "4.1.0",
"formik": "^2.4.6",
"framer-motion": "^12.23.22",
"fzf": "^0.5.2",
"http-status-codes": "^2.3.0",
"lit": "3.3.1",
"lit": "3.3.2",
"moment": "^2.30.1",
"moment-timezone": "^0.5.47",
"next-themes": "^0.4.6",
"postcss": "^8.5.6",
"postcss-import": "^16.1.1",
"rand-seed": "^2.1.7",
"react": "19.1.1",
"react": "19.2.3",
"react-accessible-treeview": "^2.11.1",
"react-aria-components": "^1.7.1",
"react-confetti-boom": "^1.0.0",
"react-dom": "19.1.1",
"react-dom": "19.2.3",
"react-markdown": "^10.1.0",
"react-player": "^2.16.0",
"react-realtime-chart": "^0.8.1",
"react-router": "7.6.3",
"react-router": "7.12.0",
"react-window": "^2.2.3",
"remark-breaks": "^4.0.0",
"swiper": "^11.2.6",
@@ -57,59 +53,53 @@
"yup": "^1.6.1"
},
"devDependencies": {
"@babel/preset-react": "7.27.1",
"@babel/preset-react": "7.28.5",
"@lit-labs/react": "^2.1.3",
"@preact/signals-react-transform": "0.6.0",
"@rollup/plugin-replace": "6.0.2",
"@rollup/plugin-replace": "6.0.3",
"@rollup/pluginutils": "5.3.0",
"@types/node": "^22.4.0",
"@types/react": "19.1.17",
"@types/react-dom": "19.1.11",
"@types/node": "25.0.3",
"@types/react": "19.2.7",
"@types/react-dom": "19.2.3",
"@types/react-window": "^1.8.8",
"@vaadin/hilla-generator-cli": "24.9.4",
"@vaadin/hilla-generator-core": "24.9.4",
"@vaadin/hilla-generator-plugin-backbone": "24.9.4",
"@vaadin/hilla-generator-plugin-barrel": "24.9.4",
"@vaadin/hilla-generator-plugin-client": "24.9.4",
"@vaadin/hilla-generator-plugin-model": "24.9.4",
"@vaadin/hilla-generator-plugin-push": "24.9.4",
"@vaadin/hilla-generator-plugin-signals": "24.9.4",
"@vaadin/hilla-generator-plugin-subtypes": "24.9.4",
"@vaadin/hilla-generator-plugin-transfertypes": "24.9.4",
"@vaadin/hilla-generator-utils": "24.9.4",
"@vitejs/plugin-react": "4.7.0",
"@vaadin/hilla-generator-cli": "25.0.4",
"@vaadin/hilla-generator-core": "25.0.4",
"@vaadin/hilla-generator-plugin-backbone": "25.0.4",
"@vaadin/hilla-generator-plugin-barrel": "25.0.4",
"@vaadin/hilla-generator-plugin-client": "25.0.4",
"@vaadin/hilla-generator-plugin-model": "25.0.4",
"@vaadin/hilla-generator-plugin-push": "25.0.4",
"@vaadin/hilla-generator-plugin-signals": "25.0.4",
"@vaadin/hilla-generator-plugin-subtypes": "25.0.4",
"@vaadin/hilla-generator-plugin-transfertypes": "25.0.4",
"@vaadin/hilla-generator-utils": "25.0.4",
"@vitejs/plugin-react": "5.1.2",
"@vitejs/plugin-react-swc": "^3.7.0",
"glob": "11.0.3",
"magic-string": "0.30.19",
"baseline-browser-mapping": "^2.9.19",
"magic-string": "0.30.21",
"rollup-plugin-brotli": "3.1.0",
"rollup-plugin-visualizer": "5.14.0",
"rollup-plugin-visualizer": "6.0.5",
"strip-css-comments": "5.0.0",
"tailwindcss": "4.1.13",
"transform-ast": "2.4.4",
"typescript": "5.8.3",
"vite": "6.4.1",
"vite-plugin-checker": "0.10.3",
"workbox-build": "7.3.0",
"workbox-core": "7.3.0",
"workbox-precaching": "7.3.0"
"typescript": "5.9.3",
"vite": "7.3.1",
"vite-plugin-checker": "0.12.0",
"workbox-build": "7.4.0"
},
"overrides": {
"@react-aria/utils": "^3.28.1",
"classnames": "$classnames",
"react": "$react",
"react-dom": "$react-dom",
"@vaadin/bundles": "$@vaadin/bundles",
"@vaadin/common-frontend": "$@vaadin/common-frontend",
"construct-style-sheets-polyfill": "$construct-style-sheets-polyfill",
"lit": "$lit",
"@polymer/polymer": "$@polymer/polymer",
"@phosphor-icons/react": "$@phosphor-icons/react",
"formik": "$formik",
"yup": "$yup",
"@heroui/react": "$@heroui/react",
"framer-motion": "$framer-motion",
"http-status-codes": "$http-status-codes",
"@vaadin/polymer-legacy-adapter": "$@vaadin/polymer-legacy-adapter",
"@vaadin/vaadin-development-mode-detector": "$@vaadin/vaadin-development-mode-detector",
"@vaadin/vaadin-usage-statistics": "$@vaadin/vaadin-usage-statistics",
"@vaadin/react-components": "$@vaadin/react-components",
@@ -127,7 +117,6 @@
"date-fns": "$date-fns",
"@vaadin/vaadin-themable-mixin": "$@vaadin/vaadin-themable-mixin",
"@vaadin/vaadin-lumo-styles": "$@vaadin/vaadin-lumo-styles",
"@vaadin/vaadin-material-styles": "$@vaadin/vaadin-material-styles",
"@react-types/shared": "$@react-types/shared",
"@react-stately/data": "$@react-stately/data",
"react-aria-components": "$react-aria-components",
@@ -140,133 +129,128 @@
"remark-breaks": "$remark-breaks",
"valtio": "$valtio",
"fzf": "$fzf",
"@vaadin/router": "2.0.0",
"@tailwindcss/vite": "$@tailwindcss/vite",
"postcss": "$postcss",
"postcss-import": "$postcss-import",
"next-themes": "$next-themes",
"@vaadin/a11y-base": "24.9.4",
"@vaadin/accordion": "24.9.4",
"@vaadin/app-layout": "24.9.4",
"@vaadin/avatar": "24.9.4",
"@vaadin/avatar-group": "24.9.4",
"@vaadin/button": "24.9.4",
"@vaadin/card": "24.9.4",
"@vaadin/checkbox": "24.9.4",
"@vaadin/checkbox-group": "24.9.4",
"@vaadin/combo-box": "24.9.4",
"@vaadin/component-base": "24.9.4",
"@vaadin/confirm-dialog": "24.9.4",
"@vaadin/context-menu": "24.9.4",
"@vaadin/custom-field": "24.9.4",
"@vaadin/date-picker": "24.9.4",
"@vaadin/date-time-picker": "24.9.4",
"@vaadin/details": "24.9.4",
"@vaadin/dialog": "24.9.4",
"@vaadin/email-field": "24.9.4",
"@vaadin/field-base": "24.9.4",
"@vaadin/field-highlighter": "24.9.4",
"@vaadin/form-layout": "24.9.4",
"@vaadin/grid": "24.9.4",
"@vaadin/horizontal-layout": "24.9.4",
"@vaadin/icon": "24.9.4",
"@vaadin/icons": "24.9.4",
"@vaadin/input-container": "24.9.4",
"@vaadin/integer-field": "24.9.4",
"@vaadin/item": "24.9.4",
"@vaadin/list-box": "24.9.4",
"@vaadin/lit-renderer": "24.9.4",
"@vaadin/login": "24.9.4",
"@vaadin/markdown": "24.9.4",
"@vaadin/master-detail-layout": "24.9.4",
"@vaadin/menu-bar": "24.9.4",
"@vaadin/message-input": "24.9.4",
"@vaadin/message-list": "24.9.4",
"@vaadin/multi-select-combo-box": "24.9.4",
"@vaadin/notification": "24.9.4",
"@vaadin/number-field": "24.9.4",
"@vaadin/overlay": "24.9.4",
"@vaadin/password-field": "24.9.4",
"@vaadin/popover": "24.9.4",
"@vaadin/progress-bar": "24.9.4",
"@vaadin/radio-group": "24.9.4",
"@vaadin/scroller": "24.9.4",
"@vaadin/select": "24.9.4",
"@vaadin/side-nav": "24.9.4",
"@vaadin/split-layout": "24.9.4",
"@vaadin/tabs": "24.9.4",
"@vaadin/tabsheet": "24.9.4",
"@vaadin/text-area": "24.9.4",
"@vaadin/text-field": "24.9.4",
"@vaadin/time-picker": "24.9.4",
"@vaadin/tooltip": "24.9.4",
"@vaadin/upload": "24.9.4",
"@vaadin/vertical-layout": "24.9.4",
"@vaadin/virtual-list": "24.9.4",
"react-realtime-chart": "$react-realtime-chart",
"react-window": "$react-window",
"blurhash": "$blurhash"
"blurhash": "$blurhash",
"@vaadin/aura": "$@vaadin/aura",
"@vaadin/a11y-base": "25.0.3",
"@vaadin/accordion": "25.0.3",
"@vaadin/app-layout": "25.0.3",
"@vaadin/avatar": "25.0.3",
"@vaadin/avatar-group": "25.0.3",
"@vaadin/button": "25.0.3",
"@vaadin/card": "25.0.3",
"@vaadin/checkbox": "25.0.3",
"@vaadin/checkbox-group": "25.0.3",
"@vaadin/combo-box": "25.0.3",
"@vaadin/component-base": "25.0.3",
"@vaadin/confirm-dialog": "25.0.3",
"@vaadin/context-menu": "25.0.3",
"@vaadin/custom-field": "25.0.3",
"@vaadin/date-picker": "25.0.3",
"@vaadin/date-time-picker": "25.0.3",
"@vaadin/details": "25.0.3",
"@vaadin/dialog": "25.0.3",
"@vaadin/email-field": "25.0.3",
"@vaadin/field-base": "25.0.3",
"@vaadin/field-highlighter": "25.0.3",
"@vaadin/form-layout": "25.0.3",
"@vaadin/grid": "25.0.3",
"@vaadin/horizontal-layout": "25.0.3",
"@vaadin/icon": "25.0.3",
"@vaadin/icons": "25.0.3",
"@vaadin/input-container": "25.0.3",
"@vaadin/integer-field": "25.0.3",
"@vaadin/item": "25.0.3",
"@vaadin/list-box": "25.0.3",
"@vaadin/lit-renderer": "25.0.3",
"@vaadin/login": "25.0.3",
"@vaadin/markdown": "25.0.3",
"@vaadin/master-detail-layout": "25.0.3",
"@vaadin/menu-bar": "25.0.3",
"@vaadin/message-input": "25.0.3",
"@vaadin/message-list": "25.0.3",
"@vaadin/multi-select-combo-box": "25.0.3",
"@vaadin/notification": "25.0.3",
"@vaadin/number-field": "25.0.3",
"@vaadin/overlay": "25.0.3",
"@vaadin/password-field": "25.0.3",
"@vaadin/popover": "25.0.3",
"@vaadin/progress-bar": "25.0.3",
"@vaadin/radio-group": "25.0.3",
"@vaadin/scroller": "25.0.3",
"@vaadin/select": "25.0.3",
"@vaadin/side-nav": "25.0.3",
"@vaadin/split-layout": "25.0.3",
"@vaadin/tabs": "25.0.3",
"@vaadin/tabsheet": "25.0.3",
"@vaadin/text-area": "25.0.3",
"@vaadin/text-field": "25.0.3",
"@vaadin/time-picker": "25.0.3",
"@vaadin/tooltip": "25.0.3",
"@vaadin/upload": "25.0.3",
"@vaadin/router": "2.0.1",
"@vaadin/vertical-layout": "25.0.3",
"@vaadin/virtual-list": "25.0.3"
},
"vaadin": {
"dependencies": {
"@polymer/polymer": "3.5.2",
"@vaadin/bundles": "24.9.4",
"@vaadin/aura": "25.0.3",
"@vaadin/common-frontend": "0.0.19",
"@vaadin/hilla-file-router": "24.9.4",
"@vaadin/hilla-frontend": "24.9.4",
"@vaadin/hilla-lit-form": "24.9.4",
"@vaadin/hilla-react-auth": "24.9.4",
"@vaadin/hilla-react-crud": "24.9.4",
"@vaadin/hilla-react-form": "24.9.4",
"@vaadin/hilla-react-i18n": "24.9.4",
"@vaadin/hilla-react-signals": "24.9.4",
"@vaadin/polymer-legacy-adapter": "24.9.4",
"@vaadin/react-components": "24.9.4",
"@vaadin/hilla-file-router": "25.0.4",
"@vaadin/hilla-frontend": "25.0.4",
"@vaadin/hilla-lit-form": "25.0.4",
"@vaadin/hilla-react-auth": "25.0.4",
"@vaadin/hilla-react-crud": "25.0.4",
"@vaadin/hilla-react-form": "25.0.4",
"@vaadin/hilla-react-i18n": "25.0.4",
"@vaadin/hilla-react-signals": "25.0.4",
"@vaadin/react-components": "25.0.3",
"@vaadin/vaadin-development-mode-detector": "2.0.7",
"@vaadin/vaadin-lumo-styles": "24.9.4",
"@vaadin/vaadin-material-styles": "24.9.4",
"@vaadin/vaadin-themable-mixin": "24.9.4",
"@vaadin/vaadin-lumo-styles": "25.0.3",
"@vaadin/vaadin-themable-mixin": "25.0.3",
"@vaadin/vaadin-usage-statistics": "2.1.3",
"construct-style-sheets-polyfill": "3.1.0",
"date-fns": "2.29.3",
"lit": "3.3.1",
"react": "19.1.1",
"react-dom": "19.1.1",
"react-router": "7.6.3"
"date-fns": "4.1.0",
"lit": "3.3.2",
"react": "19.2.3",
"react-dom": "19.2.3",
"react-router": "7.12.0"
},
"devDependencies": {
"@babel/preset-react": "7.27.1",
"@babel/preset-react": "7.28.5",
"@preact/signals-react-transform": "0.6.0",
"@rollup/plugin-replace": "6.0.2",
"@rollup/plugin-replace": "6.0.3",
"@rollup/pluginutils": "5.3.0",
"@types/react": "19.1.17",
"@types/react-dom": "19.1.11",
"@vaadin/hilla-generator-cli": "24.9.4",
"@vaadin/hilla-generator-core": "24.9.4",
"@vaadin/hilla-generator-plugin-backbone": "24.9.4",
"@vaadin/hilla-generator-plugin-barrel": "24.9.4",
"@vaadin/hilla-generator-plugin-client": "24.9.4",
"@vaadin/hilla-generator-plugin-model": "24.9.4",
"@vaadin/hilla-generator-plugin-push": "24.9.4",
"@vaadin/hilla-generator-plugin-signals": "24.9.4",
"@vaadin/hilla-generator-plugin-subtypes": "24.9.4",
"@vaadin/hilla-generator-plugin-transfertypes": "24.9.4",
"@vaadin/hilla-generator-utils": "24.9.4",
"@vitejs/plugin-react": "4.7.0",
"glob": "11.0.3",
"magic-string": "0.30.19",
"@types/node": "25.0.3",
"@types/react": "19.2.7",
"@types/react-dom": "19.2.3",
"@vaadin/hilla-generator-cli": "25.0.4",
"@vaadin/hilla-generator-core": "25.0.4",
"@vaadin/hilla-generator-plugin-backbone": "25.0.4",
"@vaadin/hilla-generator-plugin-barrel": "25.0.4",
"@vaadin/hilla-generator-plugin-client": "25.0.4",
"@vaadin/hilla-generator-plugin-model": "25.0.4",
"@vaadin/hilla-generator-plugin-push": "25.0.4",
"@vaadin/hilla-generator-plugin-signals": "25.0.4",
"@vaadin/hilla-generator-plugin-subtypes": "25.0.4",
"@vaadin/hilla-generator-plugin-transfertypes": "25.0.4",
"@vaadin/hilla-generator-utils": "25.0.4",
"@vitejs/plugin-react": "5.1.2",
"magic-string": "0.30.21",
"rollup-plugin-brotli": "3.1.0",
"rollup-plugin-visualizer": "5.14.0",
"rollup-plugin-visualizer": "6.0.5",
"strip-css-comments": "5.0.0",
"transform-ast": "2.4.4",
"typescript": "5.8.3",
"vite": "6.4.1",
"vite-plugin-checker": "0.10.3",
"workbox-build": "7.3.0",
"workbox-core": "7.3.0",
"workbox-precaching": "7.3.0"
"typescript": "5.9.3",
"vite": "7.3.1",
"vite-plugin-checker": "0.12.0",
"workbox-build": "7.4.0"
},
"disableUsageStatistics": true,
"hash": "760523c518e07bbe0567ae5d1b281ccf90326b285b5feb3c0f269c52ec774f88"
"hash": "d2c583f908a126db3f53ccbc87688b5089107afb58a87159631dc257a3a279ae"
}
}
}