{ lib , buildPythonPackage , fetchFromGitHub , click , click-default-group , jinja2 , hupper , pint , pluggy , pytest , pytestrunner , pytest-asyncio , black , aiohttp , beautifulsoup4 , uvicorn , asgiref , aiofiles }: buildPythonPackage rec { pname = "datasette"; version = "0.29.3"; src = fetchFromGitHub { owner = "simonw"; repo = "datasette"; rev = version; sha256 = "0cib7pd4z240ncck0pskzvizblhwkr42fsjpd719wdxy4scs7yqa"; }; buildInputs = [ pytestrunner ]; propagatedBuildInputs = [ click click-default-group jinja2 hupper pint pluggy uvicorn aiofiles ]; checkInputs = [ pytest pytest-asyncio aiohttp beautifulsoup4 black asgiref ]; postConfigure = '' substituteInPlace setup.py \ --replace "click-default-group==1.2" "click-default-group" \ --replace "Sanic==0.7.0" "Sanic" \ --replace "hupper==1.0" "hupper" \ --replace "pint~=0.8.1" "pint" \ --replace "Jinja2==2.10.1" "Jinja2" \ --replace "uvicorn~=0.8.4" "uvicorn" ''; # many tests require network access checkPhase = '' pytest --ignore tests/test_api.py \ --ignore tests/test_csv.py \ --ignore tests/test_html.py ''; meta = with lib; { description = "An instant JSON API for your SQLite databases"; homepage = https://github.com/simonw/datasette; license = licenses.asl20; maintainers = [ maintainers.costrouc ]; }; }