I am attempting to set up Renovate for our Python packages that use setup.cfg. We host our internal packages on Azure Artifactory and repository. I have configured Renovate to create separate pull requests (PRs) and branches for minor and major updates. However, the PRs are being created with package conflict issues.
Interestingly, when I adjust the JSON configuration to create a single PR for both major and minor updates, the PR is created without any issues. Despite this, I would prefer to have separate PRs for major and minor updates. Could you please assist me in resolving the package conflict issues when using separate PRs?
config file
{
"platform": "azure",
"onboardingPrTitle": Renovate PR ${process.env.BUILDNUMBER},
"prBody": "This PR updates dependencies to their latest versions.",
"prTitle": `Renovatebot Update: ${process.env.BUILDNUMBER}`,
"branchPrefix": "feature/",
"endpoint": "/***",
"token": process.env.RENOVATE_TOKEN,
"hostRules": [
{
"matchHost": "pypi/simple",
"hostType": "pypi",
"enabled": true
},
{
"matchHost": "pkgs.dev.azure/**/_packaging//pypi/simple/",
"hostType": "pypi",
"enabled": true,
"username": "****",
"password": process.env.PYPI_PASSWORD
}
],
packageRules: [
{
updateTypes: ["major"],
groupName: "all major updates"
},
{
updateTypes: ["minor", "patch"],
groupName: "all non-major updates"
},
{
matchPaths: ["*pyproject.toml"],
managers: ["poetry"]
}
],
enabledManagers: ["poetry"],
poetry: {
fileMatch: ["(^|/)pyproject.toml$"],
enabled: true
},
"lockFileMaintenance": {
"enabled": true
},
onboarding: true,
onboardingConfig: {
extends: ['config:base']
},
branchPrefix: 'feature/renovate/',
separateMajorMinor: true,
separateMinorPatch: false, // This line indicates that minor and patch updates will not be separated
labels: ['dependencies'],
prConcurrentLimit: 5,
prHourlyLimit: 5,
schedule: ['at any time'],
rangeStrategy: 'bump',
"repositories": ["test/renovate-test-smart"]
};
Here is the log from the pipeline:
WARN: artifactErrors (repository=test/renovate-test-smart, branch=feature/renovate/major-all-major-updates) "artifactErrors": [ { "lockFile": "poetry.lock", "stderr": "Updating dependencies\nResolving dependencies...\n\nWarning: Found deprecated key 'default' or 'secondary' in pyproject.toml configuration for source standard. Please provide the key 'priority' instead. Accepted values are: 'default', 'primary', 'secondary', 'supplemental', 'explicit'.\nWarning: Found deprecated priority 'default' for source 'standard' in pyproject.toml. You can achieve the same effect by changing the priority to 'primary' and putting the source first.\nThe currently activated Python version 3.10.12 is not supported by the project (~3.9).\nTrying to find and use a compatible version. \nUsing python3.9 (3.9.21)\n\nThe current project's supported Python range (>=3.9,<3.10) is not compatible with some of the required packages Python requirement:\n - numpy requires Python >=3.10, so it will not be satisfied for Python >=3.9,<3.10\n\nBecause numpy (2.2.3) requires Python >=3.10\n and no versions of numpy match >2.2.3,<3.0.0, numpy is forbidden.\nSo, because smartcapturing depends on numpy (^2.2.3), version solving failed.\n\n • Check your dependencies Python requirement: The Python requirement can be specified via the pythonormarkersproperties\n \n For numpy, a possible solution would be to set thepython property to \"<empty>\"\n\n ,\n [\n"](\n%22) } ]
INFO: Comment added (repository=test/renovate-test-smart, branch=feature/renovate/major-all-major-updates) "issueNo": 240714, "topic": "⚠️ Artifact update problem"
INFO: Repository finished (repository=test/renovate-test-smart) "cloned": true, "durationMs": 38457