mitigate global dependency on inflection #8017 by tfranzel · Pull Request #8781 · encode/django-rest-framework (original) (raw)
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 andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Conversation1 Commits1 Checks0 Files changed
Conversation
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
[ Show hidden characters]({{ revealButtonHref }})
#8017 indirectly introduced a new hard dependency. rest_framework.openapi.AutoSchema
is imported in the default settings, which makes this a new dependency for nearly everyone. That is the reason why the builds are failing at the moment, as the tox -e base
target does not install the optionals.
So either we move that newly introduced import out of the main code path or DRF needs to gain that dependency in setup.py
, which would probably be excessive.
tfranzel deleted the fix_inflection_requirement branch
cweider added a commit to cweider/courtlistener that referenced this pull request
cweider added a commit to cweider/courtlistener that referenced this pull request
cweider added a commit to cweider/courtlistener that referenced this pull request
django-rest-framework
has recieved several patches for
CSP compatibility, but unfortunately these are not included
in the latest release (3.14.0) and a new release cannot be
expected for a while.
As such, we must replace the semantically versioned PyPI
reference with a reference to the latest commit on the master
branch of the package's Git Repository that contains the
changes that we need (do not use master
since it could
change in unexpected and incompatible ways).
Included in this change is the inflection
package,
unfortunate dependency added by encode/django-rest-framework#8017
and later made less obtrusive by encode/django-rest-framework#8781,
but it did not eliminate it. Any usage of the schema generator
must be done in an environment that includes this package.
Fixes: freelawproject#3020
cweider added a commit to cweider/courtlistener that referenced this pull request
django-rest-framework
has recieved several patches for
CSP compatibility, but unfortunately these are not included
in the latest release (3.14.0) and a new release cannot be
expected for a while.
As such, we must replace the semantically versioned PyPI
reference with a reference to the latest commit on the master
branch of the package's Git Repository that contains the
changes that we need (do not use master
since it could
change in unexpected and incompatible ways).
Included in this change is the use of inflection
for the
OpenAPI spec's operationIds
, an unfortunate dependency
added by encode/django-rest-framework#8017 and later made
less obtrusive by encode/django-rest-framework#8781. Any
usage of the schema generator must be done in an environment
that includes this package. Additionally, this new approach
makes the generated operationId
that was listPersons
into
listPeople
. Thankfully, this is immaterial.
Fixes: freelawproject#3020
2 participants