Repository navigation
constrain all deps - #332
mshafer-NI wants to merge 1 commit into
Conversation
|
Thank you for contributing! 👋 |
There was a problem hiding this comment.
🟢 Approval recommended
The constraints remain compatible with locked versions and the lockfile metadata is updated consistently.
0 open findings
What changed in this PR
Constrains published dependencies to known-compatible version ranges for predictable client installations.
Changes:
- Adds upper bounds to runtime and Flake8 plugin dependencies.
- Refreshes the Poetry lockfile content hash.
| File | Description |
|---|---|
pyproject.toml |
Adds dependency upper bounds. |
poetry.lock |
Updates the lockfile content hash. |
🧠 Review effort: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
There was a problem hiding this comment.
My predictions:
- This will put ni-python-styleguide in the critical path of updating dependencies (e.g.
click) - When a new version of one of these dependencies is released and a client has a direct dependency on it (e.g.
click), Renovate will offer to downgrade ni-python-styleguide for clients to the version before this change 😅
There was a problem hiding this comment.
This will put ni-python-styleguide in the critical path of updating dependencies (e.g. click)
This is a good point..., I need to think about this more.
There was a problem hiding this comment.
Where I'm landing:
- while a break in
clickmeans that updating to consume newer click will cause clients to fail linting; ultimately, theclickdep should not be "managed" here.
So...
- don't do this (as is)
- do constrain critical / linting deps (flake8 + plugins)
- leave "tooling" deps (click, toml, pathspec) alone
Thoughts?
There was a problem hiding this comment.
- do constrain critical / linting deps (flake8 + plugins)
- leave "tooling" deps (click, toml, pathspec) alone
That sounds good to me.
What does this PR accomplish
Historically, we have kept all (or almost) all our dependencies unconstrained to allow clients to immediately and cleanly consume newer versions of included tools.
Now that we have Renovate running to update dependency constraints, we should lean into that and utilize it to publish regular updates with knonw-working dependencies.
Testing
I adjusted deps until running
poetry lockdidn't downgrade anything.