nixpkgs/pkgs/tools/misc/parquet-tools/default.nix
Guillaume Girol 33afbf39f6 treewide: switch to nativeCheckInputs
checkInputs used to be added to nativeBuildInputs. Now we have
nativeCheckInputs to do that instead. Doing this treewide change allows
to keep hashes identical to before the introduction of
nativeCheckInputs.
2023-01-21 12:00:00 +00:00

70 lines
1.6 KiB
Nix

{ lib
, fetchFromGitHub
, fetchpatch
, python3Packages
}:
with python3Packages;
buildPythonApplication rec {
pname = "parquet-tools";
version = "0.2.9";
disabled = pythonOlder "3.8";
format = "pyproject";
src = fetchFromGitHub {
owner = "ktrueda";
repo = "parquet-tools";
rev = version;
sha256 = "0aw0x7lhagp4dwis09fsizr7zbhdpliav0ns5ll5qny7x4m6rkfy";
};
patches = [
(fetchpatch {
url = "https://github.com/ktrueda/parquet-tools/commit/1c70a07e1c9f17c8890d23aad3ded5dd6c706cb3.patch";
sha256 = "08j1prdqj8ksw8gwiyj7ivshk82ahmywbzmywclw52nlnniig0sa";
})
];
postPatch = ''
substituteInPlace pyproject.toml \
--replace 'thrift = "^0.13.0"' 'thrift = "*"' \
--replace 'halo = "^0.0.29"' 'halo = "*"'
substituteInPlace tests/test_inspect.py \
--replace "parquet-cpp-arrow version 5.0.0" "parquet-cpp-arrow version ${pyarrow.version}" \
--replace "serialized_size: 2222" "serialized_size: 2221" \
--replace "format_version: 1.0" "format_version: 2.6"
'';
nativeBuildInputs = [ poetry-core ];
propagatedBuildInputs = [
boto3
colorama
halo
pandas
pyarrow
tabulate
thrift
];
nativeCheckInputs = [
pytestCheckHook
moto
pytest-mock
];
disabledTests = [
# these tests try to read python code as parquet and fail
"test_local_wildcard"
"test_local_and_s3_wildcard_files"
];
meta = with lib; {
description = "A CLI tool for parquet files";
homepage = "https://github.com/ktrueda/parquet-tools";
license = licenses.mit;
maintainers = with maintainers; [ cpcloud ];
};
}