asgiref
asgiref copied to clipboard
ASGI resources list
Hey!
I'm opening this discussion after originally poking the idea over the Encode discussion board.
Context
ASGI has been establishing itself as a common interface enabling interoperability across a whole range of things in the Python async web space, including:
- Apps (Datasette)
- Frameworks (Starlette, and soon Django!)
- Middleware (sentry-asgi, timing-asgi)
- Wrappers (mangum)
- Libraries (this very project)
There are also all sorts of non-code resources out there, like talks and articles.
But, as the ASGI ecosystem is growing, I personally feel like it's hard to keep up on which things are available.
Listing ASGI resources
In this context, perhaps it could be worth setting up some sort of collaborative list of ASGI resources. This would allow better discoverability and more wide-spread usage of ASGI-related projects, and help getting a grasp of the scale of the ecosystem.
It seems a collaboratively-grown static list (e.g. an ASGI awesome list or an Are we … yet? list) would fill this needs quite well already.
Just to be clear: the ASGI list wouldn't list any async resources (the awesome-asyncio is already very well suited for that), but only those that are directly related to ASGI, such as those I listed earlier.
Location
Technically the list could be in the ASGI documentation itself, but I feel like the ASGI docs/spec should be part of the list, not the other way around. Giving the list its own space such as a GitHub repo is probably a more sustainable approach.
Digging further into this, maybe now would be a good time to give ASGI its own space, e.g. a python-asgi
GitHub org. I suppose it'd contain this repository and the ASGI list at first (and maybe turn into some sort of umbrella organization for projects?).
Anyway, happy to read everyone's opinion on this. I'd love to help setup the list if this sounds like a good idea at all.
cc @tomchristie, @andrewgodwin, @simonw (who else?)
So, we started a list of ASGI things over at https://asgi.readthedocs.io/en/latest/implementations.html, in the vein of this, but I agree it could maybe be a bit more open/easy-to-edit.
As for the org... while we could move it, asgiref is a core dependency of Django 3.0 and having it under the org lets us keep the security response team the same. I'm not super keen to move it for that reason.
As for the org... while we could move it, asgiref is a core dependency of Django 3.0
Personally, I was more wondering if you’d consider splitting ASGI-the-spec (and docs) from the asgiref pypi package.
having it under the org lets us keep the security response team the same.
Yes, makes total sense. :+1:
I thought about it though, and my intuition was, as Tom suggested, that we could perhaps decouple asgiref
(the reference implementation) from the ASGI spec/docs.
Of course, I'm not the one to make a call here on potential impacts on the workflow between the spec and the implementation. But it seems ASGI (the spec) is quite stable now, and most activity here seems to be focused on the reference implementation. Looking at the last commit dates on the respective directories seems to support this idea too.
https://github.com/florimondmanca/awesome-asgi
I do agree it would be good to separate out the site/docs from the library itself. What would we call the new repo?
What would we call the new repo?
asgi-spec
? Or even spec
, as the ASGI prefix would already be in the org name?
Looks like the "asgi" organisation name is already taken, unfortunately. We could also make an asgi-spec
repo under the Django org, provided I run it past the team first.
Thanks for looking into it — what about python-asgi
for the organization name?
Maybe - I'll have to come back to this in a few weeks as I'm travelling for work and then personal holiday, sorry!
Some years later, I still think the decouple was a good idea.
Now the typing.py
exists... Which I also don't think it should exist under asgiref
(https://github.com/django/asgiref/issues/333). Just mentioning because it's relevant in case of this happening.
I have bandwidth. Is this still wanted, and is there something I can do?
@Kludex What do you reckon should be done about this now?
Today, the list still exists at https://github.com/florimondmanca/awesome-asgi and has been expanding since 2019. I don’t know what folks think about it being under my name, but it’s been manageable. I’d be happy to move it somewhere else we’d feel more appropriate, but where would that be?
Pragmatically, it doesn’t seem like there’s been a need for a new and dedicated “python-asgi” org, so…
Sorry, I didn't mean that part.
The only part I care here is separating the spec documentation, and the package asgiref
in different repositories.
Unless I stop being the maintainer, I would rather keep them in the same place for now because less things to juggle means less work for me.
Unless I stop being the maintainer, I would rather keep them in the same place for now because less things to juggle means less work for me.
Hmm... I didn't think about that, sorry.
...then never mind. 👀
Alright, then I guess we can close this off? 😃