2024-05-18 14:56:44 +02:00
|
|
|
{
|
|
|
|
lib,
|
|
|
|
buildPythonPackage,
|
|
|
|
chardet,
|
|
|
|
diff-match-patch,
|
|
|
|
django,
|
|
|
|
fetchFromGitHub,
|
|
|
|
psycopg2,
|
|
|
|
python,
|
|
|
|
pythonOlder,
|
|
|
|
pytz,
|
|
|
|
setuptools-scm,
|
|
|
|
tablib,
|
2022-12-22 15:31:53 +01:00
|
|
|
}:
|
|
|
|
|
|
|
|
buildPythonPackage rec {
|
|
|
|
pname = "django-import-export";
|
2024-07-14 20:43:26 +00:00
|
|
|
version = "4.1.1";
|
2024-05-18 14:56:16 +02:00
|
|
|
pyproject = true;
|
2023-01-10 14:43:31 +01:00
|
|
|
|
|
|
|
disabled = pythonOlder "3.7";
|
2022-12-22 15:31:53 +01:00
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "django-import-export";
|
2024-05-18 14:56:16 +02:00
|
|
|
repo = "django-import-export";
|
2023-01-10 14:43:31 +01:00
|
|
|
rev = "refs/tags/${version}";
|
2024-07-14 20:43:26 +00:00
|
|
|
hash = "sha256-kD/9cpFqjipP3onMHCfimu0ffzGQAoEspjc4IfyuZak=";
|
2022-12-22 15:31:53 +01:00
|
|
|
};
|
|
|
|
|
2024-05-18 14:56:44 +02:00
|
|
|
pythonRelaxDeps = [ "tablib" ];
|
2024-05-18 14:56:16 +02:00
|
|
|
|
2024-05-18 14:56:44 +02:00
|
|
|
build-system = [ setuptools-scm ];
|
2024-05-18 14:47:18 +02:00
|
|
|
|
2024-05-18 14:56:16 +02:00
|
|
|
|
|
|
|
dependencies = [
|
2023-01-10 14:43:31 +01:00
|
|
|
diff-match-patch
|
|
|
|
django
|
|
|
|
tablib
|
2024-05-18 14:52:44 +02:00
|
|
|
];
|
|
|
|
|
|
|
|
passthru.optional-dependencies = {
|
2024-05-18 14:56:44 +02:00
|
|
|
all = [ tablib ] ++ tablib.optional-dependencies.all;
|
|
|
|
cli = [ tablib ] ++ tablib.optional-dependencies.cli;
|
|
|
|
ods = [ tablib ] ++ tablib.optional-dependencies.ods;
|
|
|
|
pandas = [ tablib ] ++ tablib.optional-dependencies.pandas;
|
|
|
|
xls = [ tablib ] ++ tablib.optional-dependencies.xls;
|
|
|
|
xlsx = [ tablib ] ++ tablib.optional-dependencies.xlsx;
|
|
|
|
yaml = [ tablib ] ++ tablib.optional-dependencies.yaml;
|
2024-05-18 14:52:44 +02:00
|
|
|
};
|
2022-12-22 15:31:53 +01:00
|
|
|
|
2023-01-21 12:00:00 +00:00
|
|
|
nativeCheckInputs = [
|
2023-01-10 14:43:31 +01:00
|
|
|
chardet
|
2023-05-01 14:40:00 +02:00
|
|
|
psycopg2
|
2023-01-10 14:43:31 +01:00
|
|
|
pytz
|
2024-05-18 14:52:44 +02:00
|
|
|
] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
|
2022-12-22 15:31:53 +01:00
|
|
|
|
|
|
|
checkPhase = ''
|
|
|
|
runHook preCheck
|
|
|
|
${python.interpreter} tests/manage.py test core --settings=settings
|
|
|
|
runHook postCheck
|
|
|
|
'';
|
|
|
|
|
2024-05-18 14:56:44 +02:00
|
|
|
pythonImportsCheck = [ "import_export" ];
|
2022-12-22 15:31:53 +01:00
|
|
|
|
|
|
|
meta = with lib; {
|
|
|
|
description = "Django application and library for importing and exporting data with admin integration";
|
|
|
|
homepage = "https://github.com/django-import-export/django-import-export";
|
2023-01-10 14:43:31 +01:00
|
|
|
changelog = "https://github.com/django-import-export/django-import-export/blob/${version}/docs/changelog.rst";
|
2022-12-22 15:31:53 +01:00
|
|
|
license = licenses.bsd2;
|
|
|
|
maintainers = with maintainers; [ sephi ];
|
|
|
|
};
|
|
|
|
}
|