eamigo86 / graphene-django-extras

Extras functionalities for Graphene-Django
MIT License
417 stars 108 forks source link

Add compatibility with Django 4.0 and 4.1 #191

Closed washeck closed 1 year ago

washeck commented 1 year ago

This PR is mainly based on https://github.com/eamigo86/graphene-django-extras/pull/181 but I tried to make it in such a way that GitHub actions passes so it can be merge with no additional work.

andrei-shabanski commented 1 year ago

@washeck Thank you for your PR! Now it's the only way to use this package with django 4.

I think it's worth checking out the PR with python 3.11. Can you update tox and CI configs to run tests on python 3.11?

washeck commented 1 year ago

Actually, I thought it would be easier to add python 3.11 after it is added to graphene-django itself, see https://github.com/graphql-python/graphene-django/pull/1365

andrei-shabanski commented 1 year ago

I didn't notice that. Agree with you

One more question about django-filter. graphene-django tests are run with django-filter>=22.1. However, graphene-django-extras still requires django-filter >=2.2.0, <3.

It seems that django-filter 22.1 doesn't have major changes since 2.2.0. Mainly, they removed outdated warnings and switched to a two-part versioning scheme. The latter doesn't allow to install the latest version django-filter with graphene-django-extras in the same project.

Does it make sense to upgrade django-filter version in pyproject.toml up to 22.1?

bernardopericacho commented 1 year ago

I didn't notice that. Agree with you

One more question about django-filter. graphene-django tests are run with django-filter>=22.1. However, graphene-django-extras still requires django-filter >=2.2.0, <3.

It seems that django-filter 22.1 doesn't have major changes since 2.2.0. Mainly, they removed outdated warnings and switched to a two-part versioning scheme. The latter doesn't allow to install the latest version django-filter with graphene-django-extras in the same project.

Does it make sense to upgrade django-filter version in pyproject.toml up to 22.1?

I hit this when trying to install from master branch

 poetry add git+ssh://git@github.com:eamigo86/graphene-django-extras.git#master 

Updating dependencies
Resolving dependencies... (8.1s)

  SolverProblemError

  Because graphene-django-extras (rev master) depends on django-filter (^2.2.0)
   and oddsjam-backend depends on django-filter (^21.1), graphene-django-extras is forbidden.
  So, because oddsjam-backend depends on graphene-django-extras (rev master), version solving failed.