Porting Datasette to ASGI, and Turtles all the way down.
This evening I finally closed a Datasette issue that I opened more than 13 months ago: #272: Port Datasette to ASGI.
A few notes on why this is such an important step for the project.
ASGI is the Asynchronous Server Gateway Interface standard. It’s been evolving steadily over the past few years under the guidance of Andrew Godwin.
It’s intended as an asynchronous replacement for the venerable WSGI.
If you’re interested in the details of Datasette’s ASGI implementation, I posted detailed commentary on issue #272 over the past thirteen months as I researched and finalized my approach.
I added further commentary to the associated pull request , which gathers together the 34 commits it took to ship the feature (squashed into a single commit to master).