Update JS and PY deps, misc tweaks (#33903)

- Update all updateable dependencies
- Add a few more unupgradable ones to updates blocklist
- Adapt to breaking changes
- Update to typescript 5.8, enable `erasableSyntaxOnly` which
necessitated a change because of forbidden syntax
- Misc cleanups
- Tested htmx, easymde, swagger, chart.js
This commit is contained in:
silverwind
2025-03-16 10:04:18 +01:00
committed by GitHub
parent c88e71c1d2
commit 52663113d4
10 changed files with 1188 additions and 1228 deletions

View File

@ -104,7 +104,7 @@ module.exports = {
'@vitest/no-disabled-tests': [0], '@vitest/no-disabled-tests': [0],
'@vitest/no-done-callback': [0], '@vitest/no-done-callback': [0],
'@vitest/no-duplicate-hooks': [0], '@vitest/no-duplicate-hooks': [0],
'@vitest/no-focused-tests': [0], '@vitest/no-focused-tests': [2],
'@vitest/no-hooks': [0], '@vitest/no-hooks': [0],
'@vitest/no-identical-title': [2], '@vitest/no-identical-title': [2],
'@vitest/no-interpolation-in-snapshots': [0], '@vitest/no-interpolation-in-snapshots': [0],
@ -155,7 +155,7 @@ module.exports = {
'eslint-plugin-vue-scoped-css', 'eslint-plugin-vue-scoped-css',
], ],
extends: [ extends: [
'plugin:vue/vue3-recommended', 'plugin:vue/recommended',
'plugin:vue-scoped-css/vue3-recommended', 'plugin:vue-scoped-css/vue3-recommended',
], ],
rules: { rules: {

2322
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -12,12 +12,12 @@
"@github/relative-time-element": "4.4.5", "@github/relative-time-element": "4.4.5",
"@github/text-expander-element": "2.9.1", "@github/text-expander-element": "2.9.1",
"@mcaptcha/vanilla-glue": "0.1.0-alpha-3", "@mcaptcha/vanilla-glue": "0.1.0-alpha-3",
"@primer/octicons": "19.15.0", "@primer/octicons": "19.15.1",
"@silverwind/vue3-calendar-heatmap": "2.0.6", "@silverwind/vue3-calendar-heatmap": "2.0.6",
"add-asset-webpack-plugin": "3.0.0", "add-asset-webpack-plugin": "3.0.0",
"ansi_up": "6.0.2", "ansi_up": "6.0.2",
"asciinema-player": "3.9.0", "asciinema-player": "3.9.0",
"chart.js": "4.4.7", "chart.js": "4.4.8",
"chartjs-adapter-dayjs-4": "1.0.4", "chartjs-adapter-dayjs-4": "1.0.4",
"chartjs-plugin-zoom": "2.2.0", "chartjs-plugin-zoom": "2.2.0",
"clippie": "4.1.5", "clippie": "4.1.5",
@ -25,34 +25,34 @@
"css-loader": "7.1.2", "css-loader": "7.1.2",
"dayjs": "1.11.13", "dayjs": "1.11.13",
"dropzone": "6.0.0-beta.2", "dropzone": "6.0.0-beta.2",
"easymde": "2.18.0", "easymde": "2.20.0",
"esbuild-loader": "4.3.0", "esbuild-loader": "4.3.0",
"escape-goat": "4.0.0", "escape-goat": "4.0.0",
"fast-glob": "3.3.3", "fast-glob": "3.3.3",
"htmx.org": "2.0.4", "htmx.org": "2.0.4",
"idiomorph": "0.4.0", "idiomorph": "0.7.3",
"jquery": "3.7.1", "jquery": "3.7.1",
"katex": "0.16.21", "katex": "0.16.21",
"license-checker-webpack-plugin": "0.2.1", "license-checker-webpack-plugin": "0.2.1",
"mermaid": "11.4.1", "mermaid": "11.5.0",
"mini-css-extract-plugin": "2.9.2", "mini-css-extract-plugin": "2.9.2",
"minimatch": "10.0.1", "minimatch": "10.0.1",
"monaco-editor": "0.52.2", "monaco-editor": "0.52.2",
"monaco-editor-webpack-plugin": "7.1.0", "monaco-editor-webpack-plugin": "7.1.0",
"pdfobject": "2.3.1", "pdfobject": "2.3.1",
"perfect-debounce": "1.0.0", "perfect-debounce": "1.0.0",
"postcss": "8.5.2", "postcss": "8.5.3",
"postcss-loader": "8.1.1", "postcss-loader": "8.1.1",
"postcss-nesting": "13.0.1", "postcss-nesting": "13.0.1",
"sortablejs": "1.15.6", "sortablejs": "1.15.6",
"swagger-ui-dist": "5.18.3", "swagger-ui-dist": "5.20.1",
"tailwindcss": "3.4.17", "tailwindcss": "3.4.17",
"throttle-debounce": "5.0.2", "throttle-debounce": "5.0.2",
"tinycolor2": "1.6.0", "tinycolor2": "1.6.0",
"tippy.js": "6.3.7", "tippy.js": "6.3.7",
"toastify-js": "1.12.0", "toastify-js": "1.12.0",
"tributejs": "5.1.3", "tributejs": "5.1.3",
"typescript": "5.7.3", "typescript": "5.8.2",
"uint8-to-base64": "0.2.0", "uint8-to-base64": "0.2.0",
"vanilla-colorful": "0.7.2", "vanilla-colorful": "0.7.2",
"vue": "3.5.13", "vue": "3.5.13",
@ -66,7 +66,7 @@
"devDependencies": { "devDependencies": {
"@eslint-community/eslint-plugin-eslint-comments": "4.4.1", "@eslint-community/eslint-plugin-eslint-comments": "4.4.1",
"@playwright/test": "1.49.1", "@playwright/test": "1.49.1",
"@stoplight/spectral-cli": "6.14.2", "@stoplight/spectral-cli": "6.14.3",
"@stylistic/eslint-plugin-js": "3.1.0", "@stylistic/eslint-plugin-js": "3.1.0",
"@stylistic/stylelint-plugin": "3.1.2", "@stylistic/stylelint-plugin": "3.1.2",
"@types/dropzone": "5.7.9", "@types/dropzone": "5.7.9",
@ -79,41 +79,41 @@
"@types/throttle-debounce": "5.0.2", "@types/throttle-debounce": "5.0.2",
"@types/tinycolor2": "1.4.6", "@types/tinycolor2": "1.4.6",
"@types/toastify-js": "1.12.3", "@types/toastify-js": "1.12.3",
"@typescript-eslint/eslint-plugin": "8.24.0", "@typescript-eslint/eslint-plugin": "8.26.1",
"@typescript-eslint/parser": "8.24.0", "@typescript-eslint/parser": "8.26.1",
"@vitejs/plugin-vue": "5.2.1", "@vitejs/plugin-vue": "5.2.1",
"@vitest/eslint-plugin": "1.1.31", "@vitest/eslint-plugin": "1.1.37",
"eslint": "8.57.0", "eslint": "8.57.0",
"eslint-import-resolver-typescript": "3.8.0", "eslint-import-resolver-typescript": "3.9.0",
"eslint-plugin-array-func": "4.0.0", "eslint-plugin-array-func": "4.0.0",
"eslint-plugin-github": "5.0.2", "eslint-plugin-github": "5.0.2",
"eslint-plugin-import-x": "4.6.1", "eslint-plugin-import-x": "4.7.2",
"eslint-plugin-no-jquery": "3.1.0", "eslint-plugin-no-jquery": "3.1.1",
"eslint-plugin-no-use-extend-native": "0.5.0", "eslint-plugin-no-use-extend-native": "0.5.0",
"eslint-plugin-playwright": "2.2.0", "eslint-plugin-playwright": "2.2.0",
"eslint-plugin-regexp": "2.7.0", "eslint-plugin-regexp": "2.7.0",
"eslint-plugin-sonarjs": "3.0.2", "eslint-plugin-sonarjs": "3.0.2",
"eslint-plugin-unicorn": "56.0.1", "eslint-plugin-unicorn": "56.0.1",
"eslint-plugin-vue": "9.32.0", "eslint-plugin-vue": "10.0.0",
"eslint-plugin-vue-scoped-css": "2.9.0", "eslint-plugin-vue-scoped-css": "2.9.0",
"eslint-plugin-wc": "2.2.0", "eslint-plugin-wc": "2.2.1",
"happy-dom": "17.1.0", "happy-dom": "17.4.4",
"markdownlint-cli": "0.44.0", "markdownlint-cli": "0.44.0",
"material-icon-theme": "5.20.0", "material-icon-theme": "5.20.0",
"nolyfill": "1.0.43", "nolyfill": "1.0.44",
"postcss-html": "1.8.0", "postcss-html": "1.8.0",
"stylelint": "16.14.1", "stylelint": "16.16.0",
"stylelint-config-recommended": "15.0.0", "stylelint-config-recommended": "15.0.0",
"stylelint-declaration-block-no-ignored-properties": "2.8.0", "stylelint-declaration-block-no-ignored-properties": "2.8.0",
"stylelint-declaration-strict-value": "1.10.7", "stylelint-declaration-strict-value": "1.10.11",
"stylelint-define-config": "16.14.1", "stylelint-define-config": "16.15.0",
"stylelint-value-no-unknown-custom-properties": "6.0.1", "stylelint-value-no-unknown-custom-properties": "6.0.1",
"svgo": "3.3.2", "svgo": "3.3.2",
"type-fest": "4.34.1", "type-fest": "4.37.0",
"updates": "16.4.2", "updates": "16.4.2",
"vite-string-plugin": "1.4.4", "vite-string-plugin": "1.4.4",
"vitest": "3.0.5", "vitest": "3.0.8",
"vue-tsc": "2.2.2" "vue-tsc": "2.2.8"
}, },
"browserslist": [ "browserslist": [
"defaults" "defaults"

24
poetry.lock generated
View File

@ -1,4 +1,4 @@
# This file is automatically @generated by Poetry 2.0.1 and should not be changed by hand. # This file is automatically @generated by Poetry 2.1.1 and should not be changed by hand.
[[package]] [[package]]
name = "click" name = "click"
@ -29,14 +29,14 @@ files = [
[[package]] [[package]]
name = "cssbeautifier" name = "cssbeautifier"
version = "1.15.3" version = "1.15.4"
description = "CSS unobfuscator and beautifier." description = "CSS unobfuscator and beautifier."
optional = false optional = false
python-versions = "*" python-versions = "*"
groups = ["dev"] groups = ["dev"]
files = [ files = [
{file = "cssbeautifier-1.15.3-py3-none-any.whl", hash = "sha256:0dcaf5ce197743a79b3a160b84ea58fcbd9e3e767c96df1171e428125b16d410"}, {file = "cssbeautifier-1.15.4-py3-none-any.whl", hash = "sha256:78c84d5e5378df7d08622bbd0477a1abdbd209680e95480bf22f12d5701efc98"},
{file = "cssbeautifier-1.15.3.tar.gz", hash = "sha256:406b04d09e7d62c0be084fbfa2cba5126fe37359ea0d8d9f7b963a6354fc8303"}, {file = "cssbeautifier-1.15.4.tar.gz", hash = "sha256:9bb08dc3f64c101a01677f128acf01905914cf406baf87434dcde05b74c0acf5"},
] ]
[package.dependencies] [package.dependencies]
@ -103,14 +103,14 @@ files = [
[[package]] [[package]]
name = "jsbeautifier" name = "jsbeautifier"
version = "1.15.3" version = "1.15.4"
description = "JavaScript unobfuscator and beautifier." description = "JavaScript unobfuscator and beautifier."
optional = false optional = false
python-versions = "*" python-versions = "*"
groups = ["dev"] groups = ["dev"]
files = [ files = [
{file = "jsbeautifier-1.15.3-py3-none-any.whl", hash = "sha256:b207a15ab7529eee4a35ae7790e9ec4e32a2b5026d51e2d0386c3a65e6ecfc91"}, {file = "jsbeautifier-1.15.4-py3-none-any.whl", hash = "sha256:72f65de312a3f10900d7685557f84cb61a9733c50dcc27271a39f5b0051bf528"},
{file = "jsbeautifier-1.15.3.tar.gz", hash = "sha256:5f1baf3d4ca6a615bb5417ee861b34b77609eeb12875555f8bbfabd9bf2f3457"}, {file = "jsbeautifier-1.15.4.tar.gz", hash = "sha256:5bb18d9efb9331d825735fbc5360ee8f1aac5e52780042803943aa7f854f7592"},
] ]
[package.dependencies] [package.dependencies]
@ -403,14 +403,14 @@ files = [
[[package]] [[package]]
name = "yamllint" name = "yamllint"
version = "1.35.1" version = "1.36.1"
description = "A linter for YAML files." description = "A linter for YAML files."
optional = false optional = false
python-versions = ">=3.8" python-versions = ">=3.9"
groups = ["dev"] groups = ["dev"]
files = [ files = [
{file = "yamllint-1.35.1-py3-none-any.whl", hash = "sha256:2e16e504bb129ff515b37823b472750b36b6de07963bd74b307341ef5ad8bdc3"}, {file = "yamllint-1.36.1-py3-none-any.whl", hash = "sha256:3e2ccd47ea12449837adf6b2c56fd9e31172ce42bc1470380806be461f25df66"},
{file = "yamllint-1.35.1.tar.gz", hash = "sha256:7a003809f88324fd2c877734f2d575ee7881dd9043360657cc8049c809eba6cd"}, {file = "yamllint-1.36.1.tar.gz", hash = "sha256:a287689daaafc301a80549b2d0170452ebfdcabd826e3fe3b4c66e322d4851fa"},
] ]
[package.dependencies] [package.dependencies]
@ -423,4 +423,4 @@ dev = ["doc8", "flake8", "flake8-import-order", "rstcheck[sphinx]", "sphinx"]
[metadata] [metadata]
lock-version = "2.1" lock-version = "2.1"
python-versions = "^3.10" python-versions = "^3.10"
content-hash = "f2e8260efe6e25f77ef387daff9551e41d25027e4794b42bc7a851ed0dfafd85" content-hash = "d48a461813418f7b803a7f94713d93076a009a96554e0f4c707be0cc2a95b563"

View File

@ -6,7 +6,7 @@ python = "^3.10"
[tool.poetry.group.dev.dependencies] [tool.poetry.group.dev.dependencies]
djlint = "1.36.4" djlint = "1.36.4"
yamllint = "1.35.1" yamllint = "1.36.1"
[tool.djlint] [tool.djlint]
profile="golang" profile="golang"

View File

@ -18,8 +18,10 @@
"allowJs": true, "allowJs": true,
"allowSyntheticDefaultImports": true, "allowSyntheticDefaultImports": true,
"alwaysStrict": true, "alwaysStrict": true,
"erasableSyntaxOnly": true,
"esModuleInterop": true, "esModuleInterop": true,
"isolatedModules": true, "isolatedModules": true,
"libReplacement": false,
"noEmit": true, "noEmit": true,
"resolveJsonModule": true, "resolveJsonModule": true,
"skipLibCheck": true, "skipLibCheck": true,

View File

@ -1,10 +1,13 @@
export default { export default {
exclude: [ exclude: [
'@mcaptcha/vanilla-glue', // breaking changes in rc versions need to be handled '@mcaptcha/vanilla-glue', // breaking changes in rc versions need to be handled
'@stylistic/eslint-plugin-js', // need to migrate to eslint 9
'eslint', // need to migrate to eslint flat config first 'eslint', // need to migrate to eslint flat config first
'eslint-plugin-array-func', // need to migrate to eslint flat config first 'eslint-plugin-array-func', // need to migrate to eslint flat config first
'eslint-plugin-github', // need to migrate to eslint 9 - https://github.com/github/eslint-plugin-github/issues/585 'eslint-plugin-github', // need to migrate to eslint 9 - https://github.com/github/eslint-plugin-github/issues/585
'eslint-plugin-no-use-extend-native', // need to migrate to eslint flat config first 'eslint-plugin-no-use-extend-native', // need to migrate to eslint flat config first
'eslint-plugin-unicorn', // need to migrate to eslint 9
'eslint-plugin-vitest', // need to migrate to eslint flat config first 'eslint-plugin-vitest', // need to migrate to eslint flat config first
'tailwindcss', // need to migrate
], ],
}; };

View File

@ -30,9 +30,11 @@ class IssueSidebarComboList {
elList: HTMLElement; elList: HTMLElement;
elComboValue: HTMLInputElement; elComboValue: HTMLInputElement;
initialValues: string[]; initialValues: string[];
container: HTMLElement;
constructor(private container: HTMLElement) { constructor(container: HTMLElement) {
this.updateUrl = this.container.getAttribute('data-update-url'); this.container = container;
this.updateUrl = container.getAttribute('data-update-url');
this.updateAlgo = container.getAttribute('data-update-algo'); this.updateAlgo = container.getAttribute('data-update-algo');
this.selectionMode = container.getAttribute('data-selection-mode'); this.selectionMode = container.getAttribute('data-selection-mode');
if (!['single', 'multiple'].includes(this.selectionMode)) throw new Error(`Invalid data-update-on: ${this.selectionMode}`); if (!['single', 'multiple'].includes(this.selectionMode)) throw new Error(`Invalid data-update-on: ${this.selectionMode}`);

View File

@ -1,5 +1,5 @@
import {showErrorToast} from './modules/toast.ts'; import {showErrorToast} from './modules/toast.ts';
import 'idiomorph/dist/idiomorph-ext.js'; // https://github.com/bigskysoftware/idiomorph#htmx import 'idiomorph/htmx';
import type {HtmxResponseInfo} from 'htmx.org'; import type {HtmxResponseInfo} from 'htmx.org';
type HtmxEvent = Event & {detail: HtmxResponseInfo}; type HtmxEvent = Event & {detail: HtmxResponseInfo};

View File

@ -249,7 +249,6 @@ export default {
}, },
override: { override: {
'khroma@*': {licenseName: 'MIT'}, // https://github.com/fabiospampinato/khroma/pull/33 'khroma@*': {licenseName: 'MIT'}, // https://github.com/fabiospampinato/khroma/pull/33
'idiomorph@0.3.0': {licenseName: 'BSD-2-Clause'}, // https://github.com/bigskysoftware/idiomorph/pull/37
}, },
emitError: true, emitError: true,
allow: '(Apache-2.0 OR 0BSD OR BSD-2-Clause OR BSD-3-Clause OR MIT OR ISC OR CPAL-1.0 OR Unlicense OR EPL-1.0 OR EPL-2.0)', allow: '(Apache-2.0 OR 0BSD OR BSD-2-Clause OR BSD-3-Clause OR MIT OR ISC OR CPAL-1.0 OR Unlicense OR EPL-1.0 OR EPL-2.0)',