Declare jinja2 as a direct dependency#573
Open
jkukul wants to merge 1 commit into
Open
Conversation
fastapi_cache.coder imports starlette.templating unconditionally, which requires jinja2. Since Starlette 1.0 no longer bundles jinja2 (it's an optional extra), a minimal install crashes with 'ImportError: jinja2 must be installed to use Jinja2Templates'. The test suite missed this because the dev group pulls in jinja2 transitively via towncrier. Fixes long2ice#568
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.
fastapi_cache.coderimportsstarlette.templatingunconditionally, which requiresjinja2. Since Starlette 1.0 no longer bundlesjinja2(it's an optional extra), a minimal install crashes with 'ImportError: jinja2 must be installed to use Jinja2Templates'. The test suite missed this because the dev group pulls injinja2transitively viatowncrier.Fixes #568
Note: this slipped past CI because the test env installs the
devgroup (→towncrier→jinja2), sojinja2is always incidentally present during tests. A CI job thatpip installs the built wheel into a clean venv and runspython -c "import fastapi_cache"would catch this and any future undeclared runtime dep. I'm also happy to contribute it if you're interested.