depot/third_party/nixpkgs/pkgs/development/python-modules/crate/default.nix

82 lines
1.8 KiB
Nix

{
lib,
fetchPypi,
buildPythonPackage,
fetchpatch,
dask,
urllib3,
geojson,
verlib2,
pueblo,
pandas,
pythonOlder,
sqlalchemy,
pytestCheckHook,
pytz,
}:
buildPythonPackage rec {
pname = "crate";
version = "0.35.2";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-4hGACtsK71hvcn8L9ggID7zR+umtTwvskBxSHBpLyME=";
};
patches = [
# Fix a pandas issue https://github.com/crate/crate-python/commit/db7ba4d0e1f4f4087739a8f9ebe1d71946333979
(fetchpatch {
url = "https://github.com/crate/crate-python/commit/db7ba4d0e1f4f4087739a8f9ebe1d71946333979.patch";
hash = "sha256-20g8T0t5gPMbK6kRJ2bzc4BNbB1Dg4hvngXNUPvxi5I=";
name = "python-crate-fix-pandas-error.patch";
# Patch doesn't apply due to other changes to these files
excludes = [
"setup.py"
"docs/by-example/sqlalchemy/dataframe.rst"
];
})
];
propagatedBuildInputs = [
urllib3
sqlalchemy
geojson
verlib2
pueblo
];
nativeCheckInputs = [
dask
pandas
pytestCheckHook
pytz
];
disabledTests = [
# the following tests require network access
"test_layer_from_uri"
"test_additional_settings"
"test_basic"
"test_cluster"
"test_default_settings"
"test_dynamic_http_port"
"test_environment_variables"
"test_verbosity"
];
disabledTestPaths = [
# imports setuptools.ssl_support, which doesn't exist anymore
"src/crate/client/test_http.py"
];
meta = with lib; {
homepage = "https://github.com/crate/crate-python";
description = "Python client library for CrateDB";
changelog = "https://github.com/crate/crate-python/blob/${version}/CHANGES.txt";
license = licenses.asl20;
maintainers = with maintainers; [ doronbehar ];
};
}