Prune unused dependencies; declare cachecontrol[filecache] - #729
Merged
Conversation
Removed as unimported: - ffmpy: video/audio compression shells out to ffmpeg via subprocess - css-html-js-minify: last use removed in e26d20a (2018) - requests-cache, responses (test): unused since the suite went offline in 8768a46 - sphinx-autobuild (docs): no Makefile target or workflow invokes it filelock is not used directly — it is what cachecontrol's FileCache needs, so depend on the extra instead of pinning it ourselves. Resolves to 3.19.1, unchanged. Lock drops 13 packages. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CGJAshVZ6BmgthPneGnsbk
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Five declared dependencies are not imported anywhere in the package or the test suite, so every contributor and CI job installs them for nothing — and two draw recurring dependabot bumps. Removes those declarations, and depends on cachecontrol's
filecacheextra instead of pinningfilelockourselves, since filelock is only there for cachecontrol'sFileCache. Thirteen packages leave the lock; filelock still resolves to 3.19.1.References
Obsoletes #724 and #727 — bumps to the two removed test dependencies.
Last uses: css-html-js-minify before e26d20a; requests-cache and responses before 8768a46.
Reviewer guidance
ricecooker/utils/videos.py:81,ricecooker/utils/audio.py:63— ffmpeg is invoked via subprocess, never through ffmpy. Check no downstream chef relies on ricecooker pulling ffmpy in transitively.ricecooker/utils/caching.py:17andricecooker/utils/html.py:19—FileCacheimports filelock lazily inside__init__. Check the extra covers every path that constructs a cache.ricecooker/config.py:122— colorlog is named only as a dictConfig string, so an import grep does not find it. Confirm it was right to keep it (same question forpytest-env, consumed via[tool.pytest.ini_options] env).AI usage
Used Claude Code to audit every declared dependency against actual imports and git history, then edit
pyproject.tomland re-lock. Verified with the full test suite including thegoogle_driveextra, and with prek.