nixpkgs-suyu/pkgs/development/python-modules/datasette/default.nix

83 lines
1.6 KiB
Nix
Raw Normal View History

2019-05-07 14:52:16 +02:00
{ lib
, buildPythonPackage
, fetchFromGitHub
, click
, click-default-group
, jinja2
, hupper
, pint
, pluggy
, pytest
, pytestrunner
, pytest-asyncio
2019-05-31 16:07:32 +02:00
, black
2019-05-07 14:52:16 +02:00
, aiohttp
, beautifulsoup4
, uvicorn
, asgiref
, aiofiles
2019-05-07 14:52:16 +02:00
}:
buildPythonPackage rec {
pname = "datasette";
2020-02-06 07:28:28 +01:00
version = "0.35";
2019-05-07 14:52:16 +02:00
src = fetchFromGitHub {
owner = "simonw";
repo = "datasette";
2019-05-07 14:52:16 +02:00
rev = version;
2020-02-06 07:28:28 +01:00
sha256 = "0v6af7agg27lapz1nbab07595v4hl2x5wm2f03drj81f7pm8y7hc";
2019-05-07 14:52:16 +02:00
};
nativeBuildInputs = [ pytestrunner ];
2019-05-07 14:52:16 +02:00
propagatedBuildInputs = [
click
click-default-group
jinja2
hupper
pint
pluggy
uvicorn
aiofiles
2019-05-07 14:52:16 +02:00
];
checkInputs = [
pytest
pytest-asyncio
aiohttp
beautifulsoup4
2019-05-31 16:07:32 +02:00
black
asgiref
2019-05-07 14:52:16 +02:00
];
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 "pluggy~=0.12.0" "pint" \
--replace "Jinja2==2.10.1" "Jinja2" \
--replace "uvicorn~=0.8.4" "uvicorn"
2019-05-07 14:52:16 +02:00
'';
# many tests require network access
# test_black fails on darwin
2019-05-07 14:52:16 +02:00
checkPhase = ''
pytest --ignore tests/test_api.py \
--ignore tests/test_csv.py \
--ignore tests/test_html.py \
--ignore tests/test_black.py \
-k 'not facet'
2019-05-07 14:52:16 +02:00
'';
meta = with lib; {
description = "An instant JSON API for your SQLite databases";
homepage = https://github.com/simonw/datasette;
license = licenses.asl20;
maintainers = [ maintainers.costrouc ];
};
}