build: migrate to bun package manager and enforce with preinstall check

This commit is contained in:
2025-12-29 15:18:04 -06:00
parent 6a4abcec0d
commit a65836bd5b
6 changed files with 25 additions and 3800 deletions
+1 -1
View File
@@ -37,7 +37,7 @@ updates:
- "dependencies"
- "rust"
# Frontend (web/)
# Frontend (web/) - Uses bun, but npm ecosystem for Dependabot compatibility
- package-ecosystem: "npm"
directory: "/web"
schedule:
Vendored
+8
View File
@@ -10,6 +10,14 @@ dist/
emsdk/
node_modules/
# Package manager lockfiles (bun only)
pnpm-lock.yaml
yarn.lock
package-lock.json
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# Emscripten build outputs (generated by cargo build)
web/public/pacman.data
web/public/pacman.js
+1
View File
@@ -1,5 +1,6 @@
{
"lockfileVersion": 1,
"configVersion": 0,
"workspaces": {
"": {
"name": "pacman",
+7
View File
@@ -1,6 +1,13 @@
{
"name": "pacman",
"type": "module",
"packageManager": "bun@^1.3.5",
"engines": {
"bun": ">=1.3.5"
},
"scripts": {
"preinstall": "npx only-allow bun"
},
"devDependencies": {
"ts-pattern": "^5.5.0",
"@logtape/logtape": "^0.8.0"
+8 -4
View File
@@ -1,4 +1,11 @@
{
"name": "pacman-web",
"description": "A web frontend for the Pac-Man game, including leaderboards and OAuth.",
"type": "module",
"packageManager": "bun@^1.3.5",
"engines": {
"bun": ">=1.3.5"
},
"scripts": {
"preinstall": "npx only-allow bun",
"dev": "vike dev",
@@ -6,8 +13,6 @@
"preview": "vike preview",
"lint": "eslint ."
},
"name": "pacman-web",
"description": "A web frontend for the Pac-Man game, including leaderboards and OAuth.",
"dependencies": {
"@fontsource/outfit": "^5.2.8",
"@fontsource/pixelify-sans": "^5.2.7",
@@ -39,6 +44,5 @@
"typescript": "^5.9.2",
"typescript-eslint": "^8.42.0",
"vite": "^7.1.4"
},
"type": "module"
}
}
-3795
View File
File diff suppressed because it is too large Load Diff