changing order of django-filter and core api imports in compat by lukasz-karolewski · Pull Request #4601 · encode/django-rest-framework (original) (raw)

I just got this today, and am still getting it after upgrade.

Django == 4.2.3
django-filter == 23.2
djangorestframework == 3.14.0
drf-yasg == 1.21.6

my error is such:

  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/rest_framework/views.py", line 506, in dispatch
    response = handler(request, *args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/views.py", line 94, in get
    schema = generator.get_schema(request, self.public)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/generators.py", line 276, in get_schema
    paths, prefix = self.get_paths(endpoints, components, request, public)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/generators.py", line 482, in get_paths
    operation = self.get_operation(view, path, prefix, method, components, request)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/generators.py", line 524, in get_operation
    operation = view_inspector.get_operation(operation_keys)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/inspectors/view.py", line 33, in get_operation
    query = self.get_query_parameters()
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/inspectors/view.py", line 293, in get_query_parameters
    natural_parameters = self.get_filter_parameters() + self.get_pagination_parameters()
                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/inspectors/base.py", line 428, in get_pagination_parameters
    return self.probe_inspectors(self.paginator_inspectors, 'get_paginator_parameters',
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/inspectors/base.py", line 110, in probe_inspectors
    result = method(obj, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/inspectors/query.py", line 22, in get_paginator_parameters
    fields = paginator.get_schema_fields(self.view)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/rest_framework/pagination.py", line 313, in get_schema_fields
    assert coreapi is not None, 'coreapi must be installed to use `get_schema_fields()`'
           ^^^^^^^^^^^^^^^^^^^
AssertionError: coreapi must be installed to use `get_schema_fields()`

Traceback (most recent call last):
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/django/contrib/staticfiles/handlers.py", line 80, in __call__
    return self.application(environ, start_response)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/django/core/handlers/wsgi.py", line 124, in __call__
    response = self.get_response(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/django/core/handlers/base.py", line 140, in get_response
    response = self._middleware_chain(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/django/core/handlers/exception.py", line 57, in inner
    response = response_for_exception(request, exc)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/django/core/handlers/exception.py", line 140, in response_for_exception
    response = handle_uncaught_exception(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/django/core/handlers/exception.py", line 181, in handle_uncaught_exception
    return debug.technical_500_response(request, *exc_info)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/django_extensions/management/technical_response.py", line 40, in null_technical_500_response
    raise exc_value.with_traceback(tb)
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/django/core/handlers/exception.py", line 55, in inner
    response = get_response(request)
               ^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/django/core/handlers/base.py", line 197, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/django/views/decorators/csrf.py", line 56, in wrapper_view
    return view_func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/django/views/generic/base.py", line 104, in view
    return self.dispatch(request, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/rest_framework/views.py", line 509, in dispatch
    response = self.handle_exception(exc)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/rest_framework/views.py", line 469, in handle_exception
    self.raise_uncaught_exception(exc)
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/rest_framework/views.py", line 480, in raise_uncaught_exception
    raise exc
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/rest_framework/views.py", line 506, in dispatch
    response = handler(request, *args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/views.py", line 94, in get
    schema = generator.get_schema(request, self.public)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/generators.py", line 276, in get_schema
    paths, prefix = self.get_paths(endpoints, components, request, public)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/generators.py", line 482, in get_paths
    operation = self.get_operation(view, path, prefix, method, components, request)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/generators.py", line 524, in get_operation
    operation = view_inspector.get_operation(operation_keys)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/inspectors/view.py", line 33, in get_operation
    query = self.get_query_parameters()
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/inspectors/view.py", line 293, in get_query_parameters
    natural_parameters = self.get_filter_parameters() + self.get_pagination_parameters()
                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/inspectors/base.py", line 428, in get_pagination_parameters
    return self.probe_inspectors(self.paginator_inspectors, 'get_paginator_parameters',
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/inspectors/base.py", line 110, in probe_inspectors
    result = method(obj, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/drf_yasg/inspectors/query.py", line 22, in get_paginator_parameters
    fields = paginator.get_schema_fields(self.view)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/sam/.pyenv/versions/3.11.2/lib/python3.11/site-packages/rest_framework/pagination.py", line 313, in get_schema_fields
    assert coreapi is not None, 'coreapi must be installed to use `get_schema_fields()`'
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: coreapi must be installed to use `get_schema_fields()`