cargo/.github/renovate.json5

99 lines
2.5 KiB
Plaintext

{
schedule: [
'before 5am on the first day of the month',
],
semanticCommits: 'enabled',
configMigration: true,
dependencyDashboard: true,
ignorePaths: [
'**/tests/**',
],
// See rust-lang/cargo#13546 and openssl/openssl#23376 for the exclusion
ignoreDeps: ['openssl', 'openssl-src', 'openssl-sys'],
customManagers: [
{
customType: 'regex',
fileMatch: [
'Cargo.toml$',
],
matchStrings: [
'\\bMSRV:1\\b.*?(?<currentValue>\\d+\\.\\d+(\\.\\d+)?)',
'(?<currentValue>\\d+\\.\\d+(\\.\\d+)?).*?\\bMSRV:1\\b',
],
depNameTemplate: 'MSRV:1', // Support 1 version of rustc
packageNameTemplate: 'rust-lang/rust',
datasourceTemplate: 'github-releases',
},
{
customType: 'regex',
fileMatch: [
'Cargo.toml$',
],
matchStrings: [
'\\bMSRV:3\\b.*?(?<currentValue>\\d+\\.\\d+(\\.\\d+)?)',
'(?<currentValue>\\d+\\.\\d+(\\.\\d+)?).*?\\bMSRV:3\\b',
],
depNameTemplate: 'MSRV:3', // Support 3 versions of rustc
packageNameTemplate: 'rust-lang/rust',
datasourceTemplate: 'github-releases',
},
],
packageRules: [
{
commitMessageTopic: 'MSRV (1 version)',
matchManagers: [
'custom.regex',
],
matchPackageNames: [
'MSRV:1',
],
extractVersion: '^(?<version>\\d+\\.\\d+)', // Drop the patch version
schedule: [
'* * * * *',
],
groupName: 'msrv',
},
{
commitMessageTopic: 'MSRV (3 versions)',
matchManagers: [
'custom.regex',
],
matchPackageNames: [
'MSRV:3',
],
extractVersion: '^(?<version>\\d+\\.\\d+)', // Drop the patch version
schedule: [
'* * * * *',
],
minimumReleaseAge: '85 days', // 2 releases back * 6 weeks per release * 7 days per week + 1
internalChecksFilter: 'strict',
groupName: 'msrv',
},
// Goals:
// - Rollup safe upgrades to reduce CI runner load
// - Have lockfile and manifest in-sync (implicit rules)
{
matchManagers: [
'cargo',
],
matchCurrentVersion: '>=0.1.0',
matchUpdateTypes: [
'patch',
],
automerge: false,
groupName: 'compatible',
},
{
matchManagers: [
'cargo',
],
matchCurrentVersion: '>=1.0.0',
matchUpdateTypes: [
'minor',
],
automerge: false,
groupName: 'compatible',
},
],
}