Die Anleitung sagt "./scripts/update.sh" - auf Linux kam dort "Permission denied". Die drei .sh-Dateien lagen mit Modus 644 statt 755 im Index. Ursache ist der Entwicklungsrechner: Unter Windows steht core.filemode=false, git nimmt ein fehlendes Ausfuehrungsrecht dort gar nicht wahr. Gemeldet hat es der Betrieb, nicht der Bau. Wer von 1.1.0 oder aelter kommt, braucht einmalig "bash scripts/update.sh" - das alte Skript ist ja noch das nicht ausfuehrbare. Steht jetzt in README und Installationsanleitung. Zusaetzlich setzt update.sh nach dem Umschalten selbst ein chmod +x auf scripts/*.sh. Das faengt den Fall ab, dass jemand Dateien von Hand kopiert und das Recht dabei verliert - genau so kam man bisher an dieses Skript, bevor es in der laufenden Fassung existierte. Neu: tests/skripte.test.ts prueft nicht Verhalten, sondern Verpackung - Ausfuehrungsrecht im Index, Shebang, scripts/ im Docker-Abbild, die Sicherungsskripte in der Compose-Datei. Es ist der zweite Fehler dieser Art (vorher fehlte scripts/ ganz im Abbild, 1.0.1); beide Male war der Code richtig und kein Test sah hin, wie die Dateien beim Server ankommen. Gegenprobe gemacht: mit zurueckgesetztem Recht schlaegt er fehl und nennt die Datei. Nebenbei aufgefallen: scripts/version.mjs datierte in UTC. Diese Fassung waere um 00:08 deutscher Zeit auf den Vortag datiert worden. Rechnet jetzt in Europe/Berlin.
103 lines
3.2 KiB
JSON
103 lines
3.2 KiB
JSON
{
|
|
"name": "betreuungs-cockpit",
|
|
"version": "1.1.1",
|
|
"private": true,
|
|
"description": "Arbeits- und Dokumentationswerkzeug fuer die ehrenamtliche rechtliche Betreuung",
|
|
"engines": {
|
|
"node": ">=20.11"
|
|
},
|
|
"scripts": {
|
|
"dev": "next dev",
|
|
"build": "next build",
|
|
"start": "next start",
|
|
"lint": "next lint",
|
|
"typecheck": "tsc --noEmit",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest",
|
|
"db:generate": "prisma generate",
|
|
"db:migrate": "prisma migrate dev",
|
|
"db:deploy": "prisma migrate deploy",
|
|
"db:volltext": "prisma db execute --schema prisma/schema.prisma --file prisma/sql/volltextsuche.sql",
|
|
"db:seed": "prisma db seed",
|
|
"db:studio": "prisma studio",
|
|
"setup": "prisma migrate deploy && npm run db:sql && npm run db:seed",
|
|
"schluessel": "node scripts/schluessel-erzeugen.mjs",
|
|
"postinstall": "prisma generate",
|
|
"db:audit-schutz": "prisma db execute --schema prisma/schema.prisma --file prisma/sql/audit-schutz.sql",
|
|
"db:sql": "npm run db:volltext && npm run db:audit-schutz",
|
|
"protokoll": "node scripts/bauprotokoll.mjs",
|
|
"test:e2e": "playwright test",
|
|
"protokoll:md": "node scripts/bauprotokoll.mjs --md",
|
|
"wartungsschluessel": "node --env-file=.env scripts/wartungsschluessel.mjs",
|
|
"version": "node scripts/version.mjs"
|
|
},
|
|
"prisma": {
|
|
"seed": "tsx prisma/seed.ts"
|
|
},
|
|
"dependencies": {
|
|
"@aws-sdk/client-s3": "3.735.0",
|
|
"@aws-sdk/s3-request-presigner": "3.735.0",
|
|
"@node-rs/argon2": "2.0.2",
|
|
"@prisma/client": "6.3.1",
|
|
"@radix-ui/react-dialog": "1.1.4",
|
|
"@radix-ui/react-dropdown-menu": "2.1.4",
|
|
"@radix-ui/react-label": "2.1.1",
|
|
"@radix-ui/react-slot": "1.1.1",
|
|
"@react-pdf/renderer": "4.1.6",
|
|
"@simplewebauthn/browser": "13.3.0",
|
|
"@simplewebauthn/server": "13.3.2",
|
|
"archiver": "7.0.1",
|
|
"class-variance-authority": "0.7.1",
|
|
"clsx": "2.1.1",
|
|
"date-fns": "4.1.0",
|
|
"docx": "9.1.1",
|
|
"lucide-react": "0.474.0",
|
|
"next": "15.1.6",
|
|
"next-auth": "5.0.0-beta.25",
|
|
"nodemailer": "6.10.0",
|
|
"otpauth": "9.3.6",
|
|
"pdf-lib": "1.17.1",
|
|
"qrcode": "1.5.4",
|
|
"react": "19.0.0",
|
|
"react-dom": "19.0.0",
|
|
"rrule": "2.8.1",
|
|
"server-only": "^0.0.1",
|
|
"tailwind-merge": "2.6.0",
|
|
"tailwindcss-animate": "1.0.7",
|
|
"zod": "3.24.1"
|
|
},
|
|
"devDependencies": {
|
|
"@playwright/test": "1.50.1",
|
|
"@types/archiver": "6.0.3",
|
|
"@types/node": "22.13.1",
|
|
"@types/nodemailer": "6.4.17",
|
|
"@types/qrcode": "1.5.5",
|
|
"@types/react": "19.0.8",
|
|
"@types/react-dom": "19.0.3",
|
|
"autoprefixer": "10.4.20",
|
|
"eslint": "9.19.0",
|
|
"eslint-config-next": "15.1.6",
|
|
"postcss": "8.5.1",
|
|
"prisma": "6.3.1",
|
|
"tailwindcss": "3.4.17",
|
|
"tsx": "4.19.2",
|
|
"typescript": "5.7.3",
|
|
"vitest": "3.0.5"
|
|
},
|
|
"allowScripts": {
|
|
"@prisma/client@6.3.1": true,
|
|
"@prisma/engines@6.3.1": true,
|
|
"esbuild@0.23.1": true,
|
|
"esbuild@0.25.12": true,
|
|
"prisma@6.3.1": true,
|
|
"sharp@0.33.5": true,
|
|
"unrs-resolver@1.12.2": true
|
|
},
|
|
"overrides": {
|
|
"next-auth": {
|
|
"@simplewebauthn/server": "$@simplewebauthn/server",
|
|
"@simplewebauthn/browser": "$@simplewebauthn/browser"
|
|
}
|
|
}
|
|
}
|