- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 131
 
          [INVALID] Configure Renovate to update uv.lock unpinned dependencies
          #832
        
          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
Conversation
As discussed in `uv` PR: * `uv.lock` pins the git commit hashes used when pulling `django-stubs`/`django-stubs-ext`. But if there's an incompatible change in there, we want to know of it. * Configured Renovate to update these daily (we'll see, maybe that's too frequent). * If the "test" GitHub workflow passes, Renovate will auto-merge. Otherwise it will open a PR.
726f260    to
    05ba3c2      
    Compare
  
    There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR configures Renovate to automatically update unpinned dependencies in uv.lock, addressing the need to detect incompatible changes in upstream dependencies like django-stubs that are pulled from git commits.
Key changes:
- Adds Renovate configuration for daily lock file maintenance with auto-merge capability
 - Updates GitHub workflow to trigger tests on Renovate branches
 
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description | 
|---|---|
| .github/renovate.json | Configures Renovate for lock file maintenance with daily schedule and auto-merge | 
| .github/workflows/test.yml | Adds Renovate branch pattern to workflow triggers | 
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| "dependencyDashboard": false, | ||
| "lockFileMaintenance": { | ||
| "enabled": true, | ||
| "schedule": ["* 3-4 * * *"], | 
    
      
    
      Copilot
AI
    
    
    
      Sep 27, 2025 
    
  
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The cron expression * 3-4 * * * runs every minute between 3-4 AM, which is excessive for daily updates. Consider using 0 3 * * * to run once daily at 3 AM instead.
| "schedule": ["* 3-4 * * *"], | |
| "schedule": ["0 3 * * *"], | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
AFAIK it needs to be a range -- We don't know precisely when Renovate will be triggered, and the triggering time must be in range of this schedule.
This time must be long enough that Renovate can: (1) open branch (2) GitHub tests workflow to run & succeed (3) Renovate runs again, observes successful CI run (4) merge it.
| 
           Let's give this a try  | 
    
uv.lock unpinned dependenciesuv.lock unpinned dependencies
      uv.lock unpinned dependenciesuv.lock unpinned dependencies
      uv.lock unpinned dependenciesuv.lock unpinned dependencies
      
As discussed in
uvPR -- #797 (comment)uvpackage manager,uv.lockpins the git commit hashes used when pullingdjango-stubs/django-stubs-ext. BUT: we don't want it to remain pinned -- if there's an incompatible change in upstream, we want to know of it.uvto manage dev dependencies #797 should be merged first.