Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Jul 29, 2025

Welcome to Renovate! This is an onboarding PR to help you understand and configure settings before regular Pull Requests begin.

🚦 To activate Renovate, merge this Pull Request. To disable Renovate, simply close this Pull Request unmerged.


Detected Package Files

  • .github/workflows/chango.yml (github-actions)
  • .github/workflows/copilot-setup-steps.yml (github-actions)
  • .github/workflows/docs-admonitions.yml (github-actions)
  • .github/workflows/docs-linkcheck.yml (github-actions)
  • .github/workflows/gha_security.yml (github-actions)
  • .github/workflows/labelling.yml (github-actions)
  • .github/workflows/lock.yml (github-actions)
  • .github/workflows/release_pypi.yml (github-actions)
  • .github/workflows/release_test_pypi.yml (github-actions)
  • .github/workflows/stale.yml (github-actions)
  • .github/workflows/test_official.yml (github-actions)
  • .github/workflows/type_completeness.yml (github-actions)
  • .github/workflows/type_completeness_monthly.yml (github-actions)
  • .github/workflows/unit_tests.yml (github-actions)
  • pyproject.toml (pep621)
  • .pre-commit-config.yaml (pre-commit)

Configuration Summary

Based on the default config's presets, Renovate will:

  • Start dependency updates only once this onboarding PR is merged
  • Hopefully safe environment variables to allow users to configure.
  • Show all Merge Confidence badges for pull requests.
  • Enable Renovate Dependency Dashboard creation.
  • Use semantic commit type fix for dependencies and chore for all others if semantic commits are in use.
  • Ignore node_modules, bower_components, vendor and various test/tests (except for nuget) directories.
  • Group known monorepo packages together.
  • Use curated list of recommended non-monorepo package groupings.
  • Show only the Age and Confidence Merge Confidence badges for pull requests.
  • Apply crowd-sourced package replacement rules.
  • Apply crowd-sourced workarounds for known problems with packages.
  • Pin Docker digests.
  • Pin github-action digests.
  • Enable Renovate configuration migration PRs when needed.
  • Pin dependency versions for development dependencies.
  • Enable the pre-commit manager.
  • Remove limit for open PRs at any time.
  • Run Renovate on following schedule: * * * * 0,6

🔡 Do you want to change how Renovate upgrades your dependencies? Add your custom config to renovate.json in this branch. Renovate will update the Pull Request description the next time it runs.


What to Expect

With your current configuration, Renovate will create 15 Pull Requests:

Update astral-sh/setup-uv digest to e1e6fe7
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/astral-sh-setup-uv-digest
  • Merge into: master
  • Upgrade astral-sh/setup-uv to e1e6fe791067dce0dec13d733c5477f0f0cf6a5d
Update codecov/codecov-action action to v5.5.1
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/codecov-codecov-action-5.x
  • Merge into: master
  • Upgrade codecov/codecov-action to 5a1091511ad55cbe89839c7260b706298ca349f7
Update dependency astral-sh/uv to v0.8.15
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/astral-sh-uv-0.x
  • Merge into: master
  • Upgrade astral-sh/uv to 0.8.15
Update github/codeql-action action to v3.30.1
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/github-codeql-action-3.x
  • Merge into: master
  • Upgrade github/codeql-action to f1f6e5f6af878fb37288ce1c627459e94dbf7d01
Update Pylint to v3.3.8
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/pylint
  • Merge into: master
  • Upgrade PyCQA/pylint to v3.3.8
  • Upgrade pylint to ==3.3.8
Update Ruff to v0.12.12
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/ruff
  • Merge into: master
  • Upgrade astral-sh/ruff-pre-commit to v0.12.12
  • Upgrade ruff to ==0.12.12
Update Chango to v0.5.0
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/chango
  • Merge into: master
  • Upgrade Bibo-Joshi/chango to 212fc662da1b1026f335e110270d75690df05758
  • Upgrade chango to ~=0.5.0
Update Mypy to v1.17.1
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/mypy
  • Merge into: master
  • Upgrade mypy to ==1.17.1
  • Upgrade pre-commit/mirrors-mypy to v1.17.1
Update pre-commit hook APScheduler to ~=3.11.0
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/apscheduler-3.x
  • Merge into: master
  • Upgrade APScheduler to ~=3.11.0
Update pre-commit hook cachetools to >=5.5.2,<5.6.0
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/cachetools-5.x
  • Merge into: master
  • Upgrade cachetools to >=5.5.2,<5.6.0
Update pypa/gh-action-pypi-publish action to v1.13.0
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/pypa-gh-action-pypi-publish-1.x
  • Merge into: master
  • Upgrade pypa/gh-action-pypi-publish to ed0c53931b1dc9bd32cbe73a98c7f6766f8a527e
Update actions/setup-python action to v6
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/actions-setup-python-6.x
  • Merge into: master
  • Upgrade actions/setup-python to e797f83bcb11b83ae66e0230d6156d7c80228e7c
Update actions/stale action to v10
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/actions-stale-10.x
  • Merge into: master
  • Upgrade actions/stale to 3a9db7e6a41a89f618792c92c0e97cc736e1b13f
Update pre-commit hook cachetools to v6
  • Schedule: ["* * * * 0,6"]
  • Branch name: renovate/cachetools-6.x
  • Merge into: master
  • Upgrade cachetools to >=6.2.0,<6.3.0
Lock file maintenance
  • Schedule: ["* * * * 1,4"]
  • Branch name: renovate/lock-file-maintenance
  • Merge into: master
  • Regenerate lock files to use latest dependency versions

❓ Got questions? Check out Renovate's Docs, particularly the Getting Started section.
If you need any further assistance then you can also request help here.


This PR was generated by Mend Renovate. View the repository job log.

@harshil21
Copy link
Member

Renovate has support for updating the additional_dependencies in our pre-commit file too - https://docs.renovatebot.com/modules/manager/pre-commit/#additional-dependencies should we do it?

@harshil21 harshil21 added ⚙️ dependencies affected functionality: dependencies ⚙️ ci-cd affected functionality: ci-cd labels Jul 30, 2025
@Bibo-Joshi
Copy link
Member

@harshil21 Yes, please 😍

Copy link
Member

@Bibo-Joshi Bibo-Joshi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

schedule:
# Run monday and friday morning at 03:07 - odd time to spread load on GitHub Actions
- cron: '7 3 * * 1,5'

this can then also be removed IMO as discussed in #4796 (comment)

@harshil21
Copy link
Member

Only thing Renovate is complaining about are chango and pyright-type-completeness job's @Bibo-Joshi you might want to check if you can fix it?

@harshil21 harshil21 mentioned this pull request Jul 31, 2025
@renovate
Copy link
Contributor Author

renovate bot commented Jul 31, 2025

Branch Conflicted

⚠️ This PR has a merge conflict which Renovate is unable to automatically resolve, so updates to this PR description are now paused. Please resolve the merge conflict manually.

@harshil21
Copy link
Member

I'm happy with the current configuration. The only thing I can't seem to get working is making Renovate update both pre-commit version and pyproject version of a dependency in the same PR.

If any one of you can get that working, that would be great. I couldn't find any other projects which do that (maybe a global github search will help?)

Renovate doesn't tell me here if it would also update the lockfile with the dependency in the same PR, I hope it would.

@vivodi
Copy link

vivodi commented Aug 12, 2025

I'm happy with the current configuration. The only thing I can't seem to get working is making Renovate update both pre-commit version and pyproject version of a dependency in the same PR.

If any one of you can get that working, that would be great. I couldn't find any other projects which do that (maybe a global github search will help?)

Renovate doesn't tell me here if it would also update the lockfile with the dependency in the same PR, I hope it would.

You can check if this PR created by Renovate is the way you want it:
Flexget/Flexget#4545

The configuration is also very straightforward:
https://github.com/Flexget/Flexget/blob/b7c856163930b3a9b13a8932cdcac4d44d761333/.github/renovate.json5#L56-L61

@harshil21
Copy link
Member

harshil21 commented Aug 12, 2025

Thanks @vivodi that PR is what I want indeed. I noticed:

  1. Renovate is updating the uv.lock file separately in a different PR.

  2. The dependencies are manually matched in that configuration (i.e. they wrote "ruff", "astral-sh/ruff-pre-commit"). I hope to use matchDepTypes and matchManagers so it automatically finds all dependencies to group together in one PR. I actually think I just need to change the group name to something constant and not a template so they're grouped together?

@vivodi
Copy link

vivodi commented Aug 13, 2025

Renovate is updating the uv.lock file separately in a different PR.

What do you mean?

In the Renovate PR I linked above, uv.lock was updated as part of the same PR. Flexget/Flexget#4545

The dependencies are manually matched in that configuration (i.e. they wrote "ruff", "astral-sh/ruff-pre-commit"). I hope to use matchDepTypes and matchManagers so it automatically finds all dependencies to group together in one PR. I actually think I just need to change the group name to something constant and not a template so they're grouped together?

Renovate can’t do this automatically because it has no way of knowing which Python package on PyPI corresponds to which GitHub repository. You can only group them together manually.

Copy link

@vivodi vivodi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Renovate configuration still needs adjustment/improvement, and many parts can be simplified.

@vivodi
Copy link

vivodi commented Aug 13, 2025

It is recommended to add https://github.com/renovatebot/pre-commit-hooks to prevent future erroneous changes to the Renovate configuration.

@harshil21
Copy link
Member

harshil21 commented Aug 13, 2025

It is recommended to add https://github.com/renovatebot/pre-commit-hooks to prevent future erroneous changes to the Renovate configuration.

It seems that I can't use that new pre-commit hook - running into renovatebot/pre-commit-hooks#2983. Reverting.

Perhaps schema validation inside IDE's should do.

@vivodi
Copy link

vivodi commented Aug 13, 2025

I had another question - would Renovate update the additional_dependencies in the pre-commit-config and pyproject.toml in the same PR, or would I need to explicitly list out each dependency like it was done in the config you linked?

  • If you don’t use semantic commits, there will always be only one PR.
  • If you do use semantic commits, two PRs will be created for minor or major updates, while only one PR will be created for patch updates.

The python-telegram-bot repository doesn’t use semantic commits, so you don’t need to worry about this — meaning you don’t need to manually group these dependencies together.

https://docs.renovatebot.com/faq/#tell-renovate-to-ask-for-approval-before-creating-a-pull-request though I don't know of any case where we would want to do this at the moment..

Since you don't know of any case where you would want to do this at the moment, I suggest not using the “Tell Renovate to ask for approval before creating a Pull Request” feature, as it often causes you to forget to update. There’s nothing wrong with letting Renovate always create updates automatically.

https://docs.renovatebot.com/noise-reduction/#automerging-and-scheduling. I think we should enable auto merges just so that lock file conflicts are reduced as they mention.

Regarding automatic updates, you can take a look at the Renovate settings in the FlexGet repository, which were mainly written by me:

https://github.com/Flexget/Flexget/blob/d0137d8dc87fa8dbb8fc394d67275e272fce052a/.github/renovate.json5#L5-L6
https://github.com/Flexget/Flexget/blob/d0137d8dc87fa8dbb8fc394d67275e272fce052a/.github/renovate.json5#L53-L54

If the python-telegram-bot repository hasn’t enabled “allow auto-merge” in its settings, automatic merging will only occur if all checks pass. Otherwise, you’ll need to set all checks to “Required.”

seems that I can't use that new pre-commit hook - running into renovatebot/pre-commit-hooks#2983. Reverting.

Renovate config validation can be done via GitHub Actions — you can check how it’s set up in the FlexGet repository. Restricting the trigger conditions won’t add any overhead.

https://github.com/Flexget/Flexget/blob/develop/.github/workflows/renovate-config-validation.yml

Comment on lines +15 to +16
// Let Renovate decide how to update. See docs: https://docs.renovatebot.com/configuration-options/#rangestrategy
"rangeStrategy": "auto",
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// Let Renovate decide how to update. See docs: https://docs.renovatebot.com/configuration-options/#rangestrategy
"rangeStrategy": "auto",

There’s no need to explicitly specify when using the default value.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In this case I do want to explicitly mention it so anybody reading it is aware of our setting.

],

// Increase the number of PR's Renovate can create in a hour. Default is 2.
"prHourlyLimit": 5,
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using presets is convenient, and there's nothing wrong with creating all PRs at once.

    ':prConcurrentLimitNone',
    ':prHourlyLimitNone',

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On the fence with this one. I don't really want to spam everything at once because our CI has flaky tests which fail when many PRs are opened at once.

If Renovate has an option of spacing out PRs by a set amount of time, say 30 minutes, that would be better imo.

@harshil21
Copy link
Member

Renovate config validation can be done via GitHub Actions

I don't want to use more action minutes, some jobs already don't start instantly and wait for others to complete. I will instead use the skip config option in pre-commit.ci, so it won't run on CI but only locally.

The python-telegram-bot repository doesn’t use semantic commits, so you don’t need to worry about this — meaning you don’t need to manually group these dependencies together.

Thanks for the explanation.

@harshil21
Copy link
Member

We discussed a little more internally and decided to remove the pre-commit check locally too, since it would not be very useful. Any changes to the configuration would be in a new PR as outlined in the docs - https://docs.renovatebot.com/getting-started/installing-onboarding/#reconfigure-via-pr so invalid changes would be caught there too...

@Bibo-Joshi
Copy link
Member

Bibo-Joshi commented Sep 5, 2025

@harshil21 I've completely lost track of this PRs status 🙈 could you kindly bring me up to speed? Is there something left to discuss? Or are we already at "fix merge conficts, final review + merge"?

@harshil21
Copy link
Member

@harshil21 I've completely lost track of this PRs status 🙈 could you kindly bring me up to speed? Is there something left to discuss? Or are we already at "fix merge conficts, final review + merge"?

There's only one remaining decision -

https://docs.renovatebot.com/noise-reduction/#automerging-and-scheduling. I think we should enable auto merges just so that lock file conflicts are reduced as they mention.

Other than that, everything else should be good to go. If there are problems later, we can create new PRs to fix them.

@Bibo-Joshi
Copy link
Member

ah, great :) sure, we can try that. If it doesn't work well, we can remove 👍

@vivodi
Copy link

vivodi commented Sep 7, 2025

Have you enabled “Allow auto-merge” in the repository settings?

image

@Bibo-Joshi
Copy link
Member

@vivodi I have now 👍

@Bibo-Joshi Bibo-Joshi merged commit 73e5958 into master Sep 10, 2025
31 checks passed
@Bibo-Joshi Bibo-Joshi deleted the renovate/configure branch September 10, 2025 14:13
@Bibo-Joshi
Copy link
Member

Thanks very much for this contribution @harshil21 !

@github-actions github-actions bot locked and limited conversation to collaborators Sep 18, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

⚙️ ci-cd affected functionality: ci-cd ⚙️ dependencies affected functionality: dependencies

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants