From 1d1e04f678e543294ad191d70645e38434d30747 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 19 Oct 2026 04:27:50 +0000 Subject: [PATCH 1/3] Bump the routine-npm-updates group with 2 updates Bumps the routine-npm-updates group with 2 updates: [i18next](https://github.com/i18next/i18next) and [daisyui](https://github.com/saadeghi/daisyui/tree/HEAD/packages/daisyui). Updates `i18next` from 26.4.4 to 26.4.6 - [Release notes](https://github.com/i18next/i18next/releases) - [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md) - [Commits](https://github.com/i18next/i18next/compare/v26.4.4...v26.4.6) Updates `daisyui` from 5.7.47 to 5.7.50 - [Release notes](https://github.com/saadeghi/daisyui/releases) - [Changelog](https://github.com/saadeghi/daisyui/blob/master/CHANGELOG.md) - [Commits](https://github.com/saadeghi/daisyui/commits/v5.7.50/packages/daisyui) --- updated-dependencies: - dependency-name: i18next dependency-version: 26.4.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: routine-npm-updates - dependency-name: daisyui dependency-version: 5.7.50 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: routine-npm-updates ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 4 ++-- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package-lock.json b/package-lock.json index 42def09..a39a0da 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,13 +9,13 @@ "version": "1.3.7", "license": "MIT", "dependencies": { - "i18next": "^26.4.4", + "i18next": "^26.4.6", "sortablejs": "^1.15.6", "theme-change": "^3.0.4" }, "devDependencies": { "@tailwindcss/vite": "^4.3.3", - "daisyui": "^5.7.47", + "daisyui": "^5.7.50", "eslint": "10.12.0", "rimraf": "^6.1.2", "tailwindcss": "^4.3.3", @@ -1061,9 +1061,9 @@ } }, "node_modules/daisyui": { - "version": "5.7.47", - "resolved": "https://registry.npmjs.org/daisyui/-/daisyui-5.7.47.tgz", - "integrity": "sha512-NOl4vPifelRqB3CMzoU751zc44KCDD9HdHMTTqQ30uiYVpIyK7+s94/ySDWgYqjdl1tQCaCrgGBx4KCizm+a3Q==", + "version": "5.7.50", + "resolved": "https://registry.npmjs.org/daisyui/-/daisyui-5.7.50.tgz", + "integrity": "sha512-+/LRqnTCoc7s/bJEKKwtJSwzeXCVdAmRdNmZeZzgHCaQ9PJyl7j+2V2U32GQDMyD+VDkP9e/+JGoC72Y1hLk7w==", "dev": true, "license": "MIT", "funding": { @@ -1459,9 +1459,9 @@ "license": "MIT" }, "node_modules/i18next": { - "version": "26.4.4", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-26.4.4.tgz", - "integrity": "sha512-O+rqmQUi54OwAgnZ4SAwO6aRrbXZt36VZXWt6zvq0FpC3vJbH46oQRs6u4Uwm1vf8ZI7UqOXQiJhQVTor7vRiQ==", + "version": "26.4.6", + "resolved": "https://registry.npmjs.org/i18next/-/i18next-26.4.6.tgz", + "integrity": "sha512-f/QHPNtH3XmBjL3sCRCrp5+jycwgV0W9fr1Vsy5msg1mR5grgaHc8eIbZhU7ASFwiGtF9PHVRQDqQ8Nf6iDTFA==", "funding": [ { "type": "individual", diff --git a/package.json b/package.json index 16cf027..c86347b 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ }, "devDependencies": { "@tailwindcss/vite": "^4.3.3", - "daisyui": "^5.7.47", + "daisyui": "^5.7.50", "eslint": "10.12.0", "rimraf": "^6.1.2", "tailwindcss": "^4.3.3", @@ -31,7 +31,7 @@ }, "homepage": "https://github.com/haan/Lightbot#readme", "dependencies": { - "i18next": "^26.4.4", + "i18next": "^26.4.6", "sortablejs": "^1.15.6", "theme-change": "^3.0.4" } From b1e2259ad1ea812be93f8493466f92ad4377c012 Mon Sep 17 00:00:00 2001 From: Laurent Haan <389894+haan@users.noreply.github.com> Date: Wed, 21 Oct 2026 08:10:16 +0200 Subject: [PATCH 2/3] chore: fix dependency audit and refresh non-major updates Update vite-plugin-singlefile to 2.3.4 to remove the vulnerable micromatch/braces chain. Update i18next to 26.5.3 and ESLint to 10.13.0 while preserving the existing major versions. Validated with Node 24.20.0 and npm 11.19.0: npm ci, npm audit, npm outdated, lint, and both offline and web builds. --- package-lock.json | 102 ++++++---------------------------------------- package.json | 74 ++++++++++++++++----------------- 2 files changed, 50 insertions(+), 126 deletions(-) diff --git a/package-lock.json b/package-lock.json index a39a0da..4c051dc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,18 +9,18 @@ "version": "1.3.7", "license": "MIT", "dependencies": { - "i18next": "^26.4.6", + "i18next": "^26.5.3", "sortablejs": "^1.15.6", "theme-change": "^3.0.4" }, "devDependencies": { "@tailwindcss/vite": "^4.3.3", "daisyui": "^5.7.50", - "eslint": "10.12.0", + "eslint": "10.13.0", "rimraf": "^6.1.2", "tailwindcss": "^4.3.3", "vite": "^8.3.4", - "vite-plugin-singlefile": "^2.3.3" + "vite-plugin-singlefile": "^2.3.4" } }, "node_modules/@cacheable/memory": { @@ -1018,19 +1018,6 @@ "node": "20 || >=22" } }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/cacheable": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/cacheable/-/cacheable-2.5.0.tgz", @@ -1133,9 +1120,9 @@ } }, "node_modules/eslint": { - "version": "10.12.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.12.0.tgz", - "integrity": "sha512-npHjrHb2o4ehH3mE+YuxABR+0gyb0aVWCIolgJDArwCiHEIsonBm3ZKjel5b0U5+a+MbEvIyRCGCzD3eKKK2NA==", + "version": "10.13.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-10.13.0.tgz", + "integrity": "sha512-UohDjD4zSzEwhf58M3O7vc/ycc8O1I7dNlhtD0WxE8Px8EHNJKtUwzBqrzeGhisRuv2ag4sAYswszCJRgKXYUg==", "dev": true, "license": "MIT", "workspaces": [ @@ -1336,19 +1323,6 @@ "flat-cache": "^6.1.23" } }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -1459,9 +1433,9 @@ "license": "MIT" }, "node_modules/i18next": { - "version": "26.4.6", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-26.4.6.tgz", - "integrity": "sha512-f/QHPNtH3XmBjL3sCRCrp5+jycwgV0W9fr1Vsy5msg1mR5grgaHc8eIbZhU7ASFwiGtF9PHVRQDqQ8Nf6iDTFA==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/i18next/-/i18next-26.5.3.tgz", + "integrity": "sha512-6pRwOwJ6lBCBB66fqNZaSoUmvsALHMord7FL6GsDhubT1CrPabTMEJIqddm0nn2YEbKofdI/3VAtGrQPuztY1Q==", "funding": [ { "type": "individual", @@ -1529,16 +1503,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -1903,33 +1867,6 @@ "@jridgewell/sourcemap-codec": "^1.5.5" } }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/micromatch/node_modules/picomatch": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", - "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, "node_modules/minimatch": { "version": "10.2.6", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz", @@ -2309,19 +2246,6 @@ "url": "https://github.com/sponsors/SuperchupuDev" } }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -2424,13 +2348,13 @@ } }, "node_modules/vite-plugin-singlefile": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/vite-plugin-singlefile/-/vite-plugin-singlefile-2.3.3.tgz", - "integrity": "sha512-XVnGH0QzbOa8fxRSsHdCarVN1BSBXNi7uLMQYlrGRN5apdHkk62XQWRJhVever0lnfuyBkwn+kvVChdm/OoOUg==", + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/vite-plugin-singlefile/-/vite-plugin-singlefile-2.3.4.tgz", + "integrity": "sha512-1FAhlTCL6KJDpSUudrVU+gspapvS+tmKCg70vwNaAU6tyXn3E/C6+NnwQIze06byhBRv7VggZ78K0h+J/Rsdrg==", "dev": true, "license": "MIT", "dependencies": { - "micromatch": "^4.0.8" + "picomatch": "^4.0.7" }, "engines": { "node": ">18.0.0" diff --git a/package.json b/package.json index c86347b..64f8b89 100644 --- a/package.json +++ b/package.json @@ -1,38 +1,38 @@ -{ - "name": "lightbot", - "version": "1.3.7", - "description": "Lightbot is an educational game about programming designed for introductory courses to logical thinking.", - "private": true, - "packageManager": "npm@11.19.0", - "license": "MIT", - "scripts": { - "dev": "vite", - "build": "vite build --config vite.offline.config.mjs", - "build:web": "vite build --outDir dist-web", - "preview": "vite preview", - "clean": "rimraf dist dist-web", - "lint": "eslint ." - }, - "devDependencies": { - "@tailwindcss/vite": "^4.3.3", - "daisyui": "^5.7.50", - "eslint": "10.12.0", - "rimraf": "^6.1.2", - "tailwindcss": "^4.3.3", - "vite": "^8.3.4", - "vite-plugin-singlefile": "^2.3.3" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/haan/Lightbot.git" - }, - "bugs": { - "url": "https://github.com/haan/Lightbot/issues" - }, - "homepage": "https://github.com/haan/Lightbot#readme", - "dependencies": { - "i18next": "^26.4.6", - "sortablejs": "^1.15.6", - "theme-change": "^3.0.4" - } +{ + "name": "lightbot", + "version": "1.3.7", + "description": "Lightbot is an educational game about programming designed for introductory courses to logical thinking.", + "private": true, + "packageManager": "npm@11.19.0", + "license": "MIT", + "scripts": { + "dev": "vite", + "build": "vite build --config vite.offline.config.mjs", + "build:web": "vite build --outDir dist-web", + "preview": "vite preview", + "clean": "rimraf dist dist-web", + "lint": "eslint ." + }, + "devDependencies": { + "@tailwindcss/vite": "^4.3.3", + "daisyui": "^5.7.50", + "eslint": "10.13.0", + "rimraf": "^6.1.2", + "tailwindcss": "^4.3.3", + "vite": "^8.3.4", + "vite-plugin-singlefile": "^2.3.4" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/haan/Lightbot.git" + }, + "bugs": { + "url": "https://github.com/haan/Lightbot/issues" + }, + "homepage": "https://github.com/haan/Lightbot#readme", + "dependencies": { + "i18next": "^26.5.3", + "sortablejs": "^1.15.6", + "theme-change": "^3.0.4" + } } From 87b1528114114b9284061bee44d0e4b6188ad6c0 Mon Sep 17 00:00:00 2001 From: Laurent Haan <389894+haan@users.noreply.github.com> Date: Wed, 21 Oct 2026 08:11:13 +0200 Subject: [PATCH 3/3] chore: preserve package manifest line endings --- package.json | 74 ++++++++++++++++++++++++++-------------------------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/package.json b/package.json index 64f8b89..3771cda 100644 --- a/package.json +++ b/package.json @@ -1,38 +1,38 @@ -{ - "name": "lightbot", - "version": "1.3.7", - "description": "Lightbot is an educational game about programming designed for introductory courses to logical thinking.", - "private": true, - "packageManager": "npm@11.19.0", - "license": "MIT", - "scripts": { - "dev": "vite", - "build": "vite build --config vite.offline.config.mjs", - "build:web": "vite build --outDir dist-web", - "preview": "vite preview", - "clean": "rimraf dist dist-web", - "lint": "eslint ." - }, - "devDependencies": { - "@tailwindcss/vite": "^4.3.3", - "daisyui": "^5.7.50", - "eslint": "10.13.0", - "rimraf": "^6.1.2", - "tailwindcss": "^4.3.3", - "vite": "^8.3.4", - "vite-plugin-singlefile": "^2.3.4" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/haan/Lightbot.git" - }, - "bugs": { - "url": "https://github.com/haan/Lightbot/issues" - }, - "homepage": "https://github.com/haan/Lightbot#readme", - "dependencies": { - "i18next": "^26.5.3", - "sortablejs": "^1.15.6", - "theme-change": "^3.0.4" - } +{ + "name": "lightbot", + "version": "1.3.7", + "description": "Lightbot is an educational game about programming designed for introductory courses to logical thinking.", + "private": true, + "packageManager": "npm@11.19.0", + "license": "MIT", + "scripts": { + "dev": "vite", + "build": "vite build --config vite.offline.config.mjs", + "build:web": "vite build --outDir dist-web", + "preview": "vite preview", + "clean": "rimraf dist dist-web", + "lint": "eslint ." + }, + "devDependencies": { + "@tailwindcss/vite": "^4.3.3", + "daisyui": "^5.7.50", + "eslint": "10.13.0", + "rimraf": "^6.1.2", + "tailwindcss": "^4.3.3", + "vite": "^8.3.4", + "vite-plugin-singlefile": "^2.3.4" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/haan/Lightbot.git" + }, + "bugs": { + "url": "https://github.com/haan/Lightbot/issues" + }, + "homepage": "https://github.com/haan/Lightbot#readme", + "dependencies": { + "i18next": "^26.5.3", + "sortablejs": "^1.15.6", + "theme-change": "^3.0.4" + } }