depot/third_party/nixpkgs/pkgs/development/python-modules/pysqueezebox/default.nix
Default email 555cd8a8f9 Project import generated by Copybara.
GitOrigin-RevId: 5633bcff0c6162b9e4b5f1264264611e950c8ec7
2024-10-09 18:51:18 +02:00

59 lines
1.3 KiB
Nix

{
lib,
aiohttp,
async-timeout,
buildPythonPackage,
fetchFromGitHub,
pytest-asyncio,
pytestCheckHook,
pythonAtLeast,
pythonOlder,
setuptools,
}:
buildPythonPackage rec {
pname = "pysqueezebox";
version = "0.9.4";
pyproject = true;
disabled = pythonOlder "3.10";
src = fetchFromGitHub {
owner = "rajlaud";
repo = "pysqueezebox";
rev = "refs/tags/v${version}";
hash = "sha256-xi+mjrEF581NL8iRlEijKEO1CgXUr+u5hgq6UJWfoXA=";
};
build-system = [ setuptools ];
dependencies = [
async-timeout
aiohttp
];
nativeCheckInputs = [
pytest-asyncio
pytestCheckHook
];
pythonImportsCheck = [ "pysqueezebox" ];
disabledTests = lib.optionals (pythonAtLeast "3.12") [
# AttributeError: 'has_calls' is not a valid assertion. Use a spec for the mock if 'has_calls' is meant to be an attribute.
"test_verified_pause"
];
disabledTestPaths = [
# Tests require network access
"tests/test_integration.py"
];
meta = with lib; {
description = "Asynchronous library to control Logitech Media Server";
homepage = "https://github.com/rajlaud/pysqueezebox";
changelog = "https://github.com/rajlaud/pysqueezebox/releases/tag/v${version}";
license = licenses.asl20;
maintainers = with maintainers; [ nyanloutre ];
};
}