Merge pull request #3 from pdraim/staging
feat: add Dependabot configuration with grouped updates and CODEOWNERS
2 files · +96 -0
A .github/CODEOWNERS +29 -0
| @@ -0,0 +1,29 @@ | |||
| 1 | + | # Global ownership - all files require review from @pdraim | |
| 2 | + | * @pdraim | |
| 3 | + | ||
| 4 | + | # Specific ownership patterns for critical files | |
| 5 | + | # Package management and dependencies | |
| 6 | + | package.json @pdraim | |
| 7 | + | pnpm-lock.yaml @pdraim | |
| 8 | + | .github/dependabot.yml @pdraim | |
| 9 | + | ||
| 10 | + | # Database schema and configuration | |
| 11 | + | drizzle.config.ts @pdraim | |
| 12 | + | drizzle/ @pdraim | |
| 13 | + | src/lib/db/ @pdraim | |
| 14 | + | ||
| 15 | + | # Core application configuration | |
| 16 | + | svelte.config.js @pdraim | |
| 17 | + | vite.config.ts @pdraim | |
| 18 | + | tsconfig.json @pdraim | |
| 19 | + | tailwind.config.ts @pdraim | |
| 20 | + | ||
| 21 | + | # Security and authentication related code | |
| 22 | + | src/lib/api/session.* @pdraim | |
| 23 | + | src/lib/utils/password.ts @pdraim | |
| 24 | + | src/lib/validation/ @pdraim | |
| 25 | + | src/lib/utils/security-tests.ts @pdraim | |
| 26 | + | ||
| 27 | + | # Server-side API routes | |
| 28 | + | src/routes/api/ @pdraim | |
| 29 | + | src/hooks.server.ts @pdraim⏎̸ | |
| @@ -0,0 +1,29 @@ | |||||
| 1 | + | # Global ownership - all files require review from @pdraim | |||
| 2 | + | * @pdraim | |||
| 3 | + | ||||
| 4 | + | # Specific ownership patterns for critical files | |||
| 5 | + | # Package management and dependencies | |||
| 6 | + | package.json @pdraim | |||
| 7 | + | pnpm-lock.yaml @pdraim | |||
| 8 | + | .github/dependabot.yml @pdraim | |||
| 9 | + | ||||
| 10 | + | # Database schema and configuration | |||
| 11 | + | drizzle.config.ts @pdraim | |||
| 12 | + | drizzle/ @pdraim | |||
| 13 | + | src/lib/db/ @pdraim | |||
| 14 | + | ||||
| 15 | + | # Core application configuration | |||
| 16 | + | svelte.config.js @pdraim | |||
| 17 | + | vite.config.ts @pdraim | |||
| 18 | + | tsconfig.json @pdraim | |||
| 19 | + | tailwind.config.ts @pdraim | |||
| 20 | + | ||||
| 21 | + | # Security and authentication related code | |||
| 22 | + | src/lib/api/session.* @pdraim | |||
| 23 | + | src/lib/utils/password.ts @pdraim | |||
| 24 | + | src/lib/validation/ @pdraim | |||
| 25 | + | src/lib/utils/security-tests.ts @pdraim | |||
| 26 | + | ||||
| 27 | + | # Server-side API routes | |||
| 28 | + | src/routes/api/ @pdraim | |||
| 29 | + | src/hooks.server.ts @pdraim⏎̸ | |||
A .github/dependabot.yml +67 -0
| @@ -0,0 +1,67 @@ | |||
| 1 | + | version: 2 | |
| 2 | + | updates: | |
| 3 | + | # npm dependencies via pnpm | |
| 4 | + | - package-ecosystem: "npm" | |
| 5 | + | directory: "/" | |
| 6 | + | schedule: | |
| 7 | + | interval: "weekly" | |
| 8 | + | day: "monday" | |
| 9 | + | time: "09:00" | |
| 10 | + | timezone: "Europe/Paris" | |
| 11 | + | # Group updates to reduce PR noise | |
| 12 | + | groups: | |
| 13 | + | # Group SvelteKit and related core framework updates | |
| 14 | + | sveltekit: | |
| 15 | + | patterns: | |
| 16 | + | - "@sveltejs/*" | |
| 17 | + | - "svelte*" | |
| 18 | + | update-types: | |
| 19 | + | - "minor" | |
| 20 | + | - "patch" | |
| 21 | + | # Group development tooling updates | |
| 22 | + | dev-tools: | |
| 23 | + | patterns: | |
| 24 | + | - "eslint*" | |
| 25 | + | - "prettier*" | |
| 26 | + | - "@eslint/*" | |
| 27 | + | - "typescript*" | |
| 28 | + | - "@types/*" | |
| 29 | + | - "vite*" | |
| 30 | + | - "vitest*" | |
| 31 | + | update-types: | |
| 32 | + | - "minor" | |
| 33 | + | - "patch" | |
| 34 | + | # Group Tailwind CSS related packages | |
| 35 | + | tailwind: | |
| 36 | + | patterns: | |
| 37 | + | - "tailwindcss*" | |
| 38 | + | - "@tailwindcss/*" | |
| 39 | + | - "autoprefixer" | |
| 40 | + | update-types: | |
| 41 | + | - "minor" | |
| 42 | + | - "patch" | |
| 43 | + | # Group Drizzle ORM related packages | |
| 44 | + | drizzle: | |
| 45 | + | patterns: | |
| 46 | + | - "drizzle-*" | |
| 47 | + | - "@libsql/*" | |
| 48 | + | update-types: | |
| 49 | + | - "minor" | |
| 50 | + | - "patch" | |
| 51 | + | # Set PR limits to avoid overwhelming the team | |
| 52 | + | open-pull-requests-limit: 8 | |
| 53 | + | # Ignore packages that require manual updates or are pinned for specific reasons | |
| 54 | + | ignore: | |
| 55 | + | # Node.js version is managed via engines field and should be manually updated | |
| 56 | + | - dependency-name: "node" | |
| 57 | + | # Major framework versions should be manually reviewed due to breaking changes | |
| 58 | + | - dependency-name: "@sveltejs/kit" | |
| 59 | + | update-types: ["version-update:semver-major"] | |
| 60 | + | - dependency-name: "svelte" | |
| 61 | + | update-types: ["version-update:semver-major"] | |
| 62 | + | - dependency-name: "typescript" | |
| 63 | + | update-types: ["version-update:semver-major"] | |
| 64 | + | # Configure commit message format | |
| 65 | + | commit-message: | |
| 66 | + | prefix: "deps" | |
| 67 | + | include: "scope"⏎̸ | |
| @@ -0,0 +1,67 @@ | |||||
| 1 | + | version: 2 | |||
| 2 | + | updates: | |||
| 3 | + | # npm dependencies via pnpm | |||
| 4 | + | - package-ecosystem: "npm" | |||
| 5 | + | directory: "/" | |||
| 6 | + | schedule: | |||
| 7 | + | interval: "weekly" | |||
| 8 | + | day: "monday" | |||
| 9 | + | time: "09:00" | |||
| 10 | + | timezone: "Europe/Paris" | |||
| 11 | + | # Group updates to reduce PR noise | |||
| 12 | + | groups: | |||
| 13 | + | # Group SvelteKit and related core framework updates | |||
| 14 | + | sveltekit: | |||
| 15 | + | patterns: | |||
| 16 | + | - "@sveltejs/*" | |||
| 17 | + | - "svelte*" | |||
| 18 | + | update-types: | |||
| 19 | + | - "minor" | |||
| 20 | + | - "patch" | |||
| 21 | + | # Group development tooling updates | |||
| 22 | + | dev-tools: | |||
| 23 | + | patterns: | |||
| 24 | + | - "eslint*" | |||
| 25 | + | - "prettier*" | |||
| 26 | + | - "@eslint/*" | |||
| 27 | + | - "typescript*" | |||
| 28 | + | - "@types/*" | |||
| 29 | + | - "vite*" | |||
| 30 | + | - "vitest*" | |||
| 31 | + | update-types: | |||
| 32 | + | - "minor" | |||
| 33 | + | - "patch" | |||
| 34 | + | # Group Tailwind CSS related packages | |||
| 35 | + | tailwind: | |||
| 36 | + | patterns: | |||
| 37 | + | - "tailwindcss*" | |||
| 38 | + | - "@tailwindcss/*" | |||
| 39 | + | - "autoprefixer" | |||
| 40 | + | update-types: | |||
| 41 | + | - "minor" | |||
| 42 | + | - "patch" | |||
| 43 | + | # Group Drizzle ORM related packages | |||
| 44 | + | drizzle: | |||
| 45 | + | patterns: | |||
| 46 | + | - "drizzle-*" | |||
| 47 | + | - "@libsql/*" | |||
| 48 | + | update-types: | |||
| 49 | + | - "minor" | |||
| 50 | + | - "patch" | |||
| 51 | + | # Set PR limits to avoid overwhelming the team | |||
| 52 | + | open-pull-requests-limit: 8 | |||
| 53 | + | # Ignore packages that require manual updates or are pinned for specific reasons | |||
| 54 | + | ignore: | |||
| 55 | + | # Node.js version is managed via engines field and should be manually updated | |||
| 56 | + | - dependency-name: "node" | |||
| 57 | + | # Major framework versions should be manually reviewed due to breaking changes | |||
| 58 | + | - dependency-name: "@sveltejs/kit" | |||
| 59 | + | update-types: ["version-update:semver-major"] | |||
| 60 | + | - dependency-name: "svelte" | |||
| 61 | + | update-types: ["version-update:semver-major"] | |||
| 62 | + | - dependency-name: "typescript" | |||
| 63 | + | update-types: ["version-update:semver-major"] | |||
| 64 | + | # Configure commit message format | |||
| 65 | + | commit-message: | |||
| 66 | + | prefix: "deps" | |||
| 67 | + | include: "scope"⏎̸ | |||