Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs(development): guide to create/edit presets #13165

Merged
merged 11 commits into from Jan 28, 2022
38 changes: 38 additions & 0 deletions docs/development/creating-editing-renovate-presets.md
@@ -0,0 +1,38 @@
# Creating/editing Renovate presets

Renovate comes with default presets that you can find in the `lib/config/presets/internal` directory.
You can suggest changes to the presets with a pull request.

Follow the rules below to increase the chance that your pull request gets merged.

## General rules

1. Only create/edit presets for problems which can not be fixed upstream
rarkins marked this conversation as resolved.
Show resolved Hide resolved
HonkingGoose marked this conversation as resolved.
Show resolved Hide resolved
1. The internal preset must be helpful for most Renovate users
HonkingGoose marked this conversation as resolved.
Show resolved Hide resolved

### Specific rules

#### Group presets

File location: `lib/config/presets/internal/group.ts`
HonkingGoose marked this conversation as resolved.
Show resolved Hide resolved

Rules:

1. Only group dependencies together that must be updated together

#### Replacement presets

File location: `lib/config/presets/internal/replacements.ts`

Rules:

1. Only suggest a replacement PR when the user is on the latest `major` release of the deprecated dependency, use the `matchCurrent` config option to control when the replacement PR is allowed
1. No big version jumps, update to the first stable version of the replacement dependency
HonkingGoose marked this conversation as resolved.
Show resolved Hide resolved

#### Monorepo presets

File location: `lib/config/presets/internal/monorepo.ts`

Rules:

1. First check if the problem can be fixed in the source monorepo itself, sometimes the monorepo is not configured properly
rarkins marked this conversation as resolved.
Show resolved Hide resolved
HonkingGoose marked this conversation as resolved.
Show resolved Hide resolved