From 47e47311768e11cc97600ee9fda386c6af4152d3 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 24 Nov 2025 13:07:46 +0000 Subject: [PATCH] feat(renovate): add dependency grouping for related packages Configure Renovate to group related dependencies together to reduce PR noise and ensure coordinated updates of package ecosystems: - Group Vitest monorepo packages (@vitest/*, vitest) - Group GraphQL Code Generator packages (@graphql-codegen/*) - Group GraphQL ecosystem (graphql, graphql-yoga, @graphql-tools/*) - Group code quality tools (oxlint, prettier, lint-staged) - Group build tools (turbo, typescript, tsx) - Group non-major type definition updates (@types/*) This will reduce the number of individual PRs from ~15-20 per week to ~6-7, making dependency management more efficient. --- renovate.json | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/renovate.json b/renovate.json index e717dbd..83f58dd 100644 --- a/renovate.json +++ b/renovate.json @@ -1,3 +1,38 @@ { - "extends": ["github>freecodecamp/renovate-config"] + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": ["github>freecodecamp/renovate-config"], + "packageRules": [ + { + "groupName": "vitest monorepo", + "matchPackagePatterns": ["^vitest", "^@vitest/"], + "description": "Group all Vitest packages together for coordinated testing framework updates" + }, + { + "groupName": "GraphQL Code Generator", + "matchPackagePatterns": ["^@graphql-codegen/"], + "description": "Group all GraphQL Code Generator packages for coordinated codegen updates" + }, + { + "groupName": "GraphQL ecosystem", + "matchPackageNames": ["graphql", "graphql-yoga"], + "matchPackagePatterns": ["^@graphql-tools/"], + "description": "Group core GraphQL runtime packages and tools" + }, + { + "groupName": "code quality tools", + "matchPackageNames": ["oxlint", "prettier", "lint-staged"], + "description": "Group linting and formatting tools for coordinated updates" + }, + { + "groupName": "build tools", + "matchPackageNames": ["turbo", "typescript", "tsx"], + "description": "Group build and compilation toolchain" + }, + { + "groupName": "type definitions (non-major)", + "matchPackagePatterns": ["^@types/"], + "matchUpdateTypes": ["minor", "patch"], + "description": "Group TypeScript type definition updates (non-breaking)" + } + ] }