◐ Shell
clean mode source ↗

async support & httpx-based python-gitlab

I've completely reworked python-gitlab to be async-compatible: https://github.com/vishes-shell/python-gitlab :

  • code it fully async compatible via awesome httpx
  • async tests are rewritten with pytest, pytest-asyncio and respx
  • functional tests are also rewritten to be async

You can see changes in pull request vishes-shell#1 , i've tried to stick to project rules, but without pytest it would be harder...

I've seen some work that's done in #998 , and at the beginning i started on top of it, but found it hard to continue, due to some incomplete changes that are done, and trying to do sync stuff via run_until_complete would not work.

I would like to release it under python-gitlab-async module.

How i see it:

  • i would hear your thoughts on this
  • make some changes that you require (maybe drop cli support since python-gitlab do it good)
  • update documentation
  • transfer my fork under your python-gitlab namespace as python-gitlab-async, become a member of it
  • release it in pypi.org
  • take care of it

I think it's not that hard to keep up with changes from master branch and try to release as python-gitlab with same versions.

It was a pleasure to work with this brilliantly written library, and the same time you have a lot of defs to become async defs.:)