depot/third_party/nixpkgs/pkgs/development/python-modules/chacha20poly1305-reuseable/default.nix
Default email f34ce41345 Project import generated by Copybara.
GitOrigin-RevId: b73c2221a46c13557b1b3be9c2070cc42cf01eb3
2024-07-27 08:49:29 +02:00

61 lines
1.2 KiB
Nix

{
lib,
buildPythonPackage,
fetchFromGitHub,
pythonOlder,
# build-system
cython,
poetry-core,
setuptools,
# propagates
cryptography,
# tests
pytestCheckHook,
}:
let
pname = "chacha20poly1305-reuseable";
version = "0.12.2";
in
buildPythonPackage {
inherit pname version;
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "bdraco";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-RESSkMWkmlmYarLOI8pX5mwgcr8xAigbp1mrAQP/QNU=";
};
nativeBuildInputs = [
cython
poetry-core
setuptools
];
propagatedBuildInputs = [ cryptography ];
pythonImportsCheck = [ "chacha20poly1305_reuseable" ];
preCheck = ''
substituteInPlace pyproject.toml \
--replace "--cov=chacha20poly1305_reuseable --cov-report=term-missing:skip-covered" ""
'';
nativeCheckInputs = [ pytestCheckHook ];
meta = with lib; {
description = "ChaCha20Poly1305 that is reuseable for asyncio";
homepage = "https://github.com/bdraco/chacha20poly1305-reuseable";
changelog = "https://github.com/bdraco/chacha20poly1305-reuseable/blob/v${version}/CHANGELOG.md";
license = licenses.asl20;
maintainers = with maintainers; [ hexa ];
};
}