95 lines
1.8 KiB
Nix
95 lines
1.8 KiB
Nix
{
|
|
lib,
|
|
buildPythonPackage,
|
|
fetchFromGitHub,
|
|
pythonOlder,
|
|
# propagated build inputs
|
|
click,
|
|
fastapi,
|
|
jinja2,
|
|
mypy,
|
|
nbconvert,
|
|
python-multipart,
|
|
pandas,
|
|
types-requests,
|
|
types-ujson,
|
|
uvicorn,
|
|
autoflake,
|
|
# native check inputs
|
|
pytestCheckHook,
|
|
black,
|
|
coverage,
|
|
flake8,
|
|
httpx,
|
|
ipython,
|
|
pytest-cov,
|
|
requests,
|
|
requests-toolbelt,
|
|
nbdev,
|
|
pytest-mock,
|
|
}:
|
|
let
|
|
version = "0.10.11";
|
|
in
|
|
buildPythonPackage {
|
|
pname = "unstructured-api-tools";
|
|
inherit version;
|
|
format = "setuptools";
|
|
|
|
disabled = pythonOlder "3.8";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "Unstructured-IO";
|
|
repo = "unstructured-api-tools";
|
|
rev = "refs/tags/${version}";
|
|
hash = "sha256-t1fK40ayR2bxc1iMIwvn/OHuyVlR98Gq+NpIhOmaP+4=";
|
|
};
|
|
|
|
propagatedBuildInputs = [
|
|
click
|
|
fastapi
|
|
jinja2
|
|
mypy
|
|
nbconvert
|
|
python-multipart
|
|
pandas
|
|
types-requests
|
|
types-ujson
|
|
uvicorn
|
|
autoflake
|
|
] ++ uvicorn.optional-dependencies.standard;
|
|
|
|
pythonImportsCheck = [ "unstructured_api_tools" ];
|
|
|
|
# test require file generation but it complains about a missing file mypy
|
|
doCheck = false;
|
|
# preCheck = ''
|
|
# substituteInPlace Makefile \
|
|
# --replace "PYTHONPATH=." "" \
|
|
# --replace "mypy" "${mypy}/bin/mypy"
|
|
# make generate-test-api
|
|
# '';
|
|
|
|
nativeCheckInputs = [
|
|
pytestCheckHook
|
|
black
|
|
coverage
|
|
flake8
|
|
httpx
|
|
ipython
|
|
pytest-cov
|
|
requests
|
|
requests-toolbelt
|
|
nbdev
|
|
pytest-mock
|
|
];
|
|
|
|
meta = with lib; {
|
|
description = "";
|
|
mainProgram = "unstructured_api_tools";
|
|
homepage = "https://github.com/Unstructured-IO/unstructured-api-tools";
|
|
changelog = "https://github.com/Unstructured-IO/unstructured-api-tools/blob/${version}/CHANGELOG.md";
|
|
license = licenses.asl20;
|
|
maintainers = with maintainers; [ happysalada ];
|
|
};
|
|
}
|