diff --git a/pkgs/development/python-modules/aioridwell/default.nix b/pkgs/development/python-modules/aioridwell/default.nix new file mode 100644 index 000000000000..2b3bc08d1d9f --- /dev/null +++ b/pkgs/development/python-modules/aioridwell/default.nix @@ -0,0 +1,73 @@ +{ lib +, aiohttp +, aresponses +, buildPythonPackage +, fetchFromGitHub +, freezegun +, poetry-core +, pyjwt +, pytest-aiohttp +, pytest-asyncio +, pytestCheckHook +, pythonOlder +, pytz +, titlecase +, types-pytz +}: + +buildPythonPackage rec { + pname = "aioridwell"; + version = "0.2.0"; + format = "pyproject"; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "bachya"; + repo = pname; + rev = version; + sha256 = "0kzxh1igncql1rwh12n42qahlc94z0fsd344d1vgni50jg7i34v7"; + }; + + nativeBuildInputs = [ + poetry-core + ]; + + propagatedBuildInputs = [ + aiohttp + pyjwt + pytz + titlecase + ]; + + checkInputs = [ + aresponses + freezegun + pytest-aiohttp + pytest-asyncio + pytestCheckHook + types-pytz + ]; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace 'titlecase = "^2.3"' 'titlecase = "*"' \ + --replace 'pytz = "^2021.3"' 'pytz = "*"' + ''; + + disabledTestPaths = [ + # Ignore the examples directory as the files are prefixed with test_ + "examples/" + ]; + + pythonImportsCheck = [ + "aioridwell" + ]; + + meta = with lib; { + description = "Python library for interacting with Ridwell waste recycling"; + homepage = "https://github.com/bachya/aioridwell"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/titlecase/default.nix b/pkgs/development/python-modules/titlecase/default.nix index 48fbf84e93a9..0b9e6547dee6 100644 --- a/pkgs/development/python-modules/titlecase/default.nix +++ b/pkgs/development/python-modules/titlecase/default.nix @@ -1,24 +1,44 @@ -{ buildPythonPackage, lib, fetchPypi, regex }: +{ lib +, buildPythonPackage +, fetchFromGitHub +, pytestCheckHook +, pythonOlder +, regex +}: buildPythonPackage rec { pname = "titlecase"; version = "2.3"; + format = "setuptools"; - src = fetchPypi { - inherit pname version; - sha256 = "9a1595ed9b88f3ce4362a7602ee63cf074e10ac80d1256b32ea1ec5ffa265fa0"; + disabled = pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = "ppannuto"; + repo = "python-titlecase"; + rev = "v${version}"; + sha256 = "169ywzn5wfzwyknqavspkdpwbx31nycxsxkl7iywwk71gs1lskkw"; }; - propagatedBuildInputs = [ regex ]; + propagatedBuildInputs = [ + regex + ]; - # no tests run - doCheck = false; + checkInputs = [ + pytestCheckHook + ]; - pythonImportsCheck = [ "titlecase" ]; + pytestFlagsArray = [ + "titlecase/tests.py" + ]; + + pythonImportsCheck = [ + "titlecase" + ]; meta = with lib; { + description = "Python library to capitalize strings as specified by the New York Times"; homepage = "https://github.com/ppannuto/python-titlecase"; - description = "Python Port of John Gruber's titlecase.pl"; license = licenses.mit; maintainers = with maintainers; [ ]; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 87950c216889..31d442227442 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -365,6 +365,8 @@ in { aioresponses = callPackage ../development/python-modules/aioresponses { }; + aioridwell = callPackage ../development/python-modules/aioridwell { }; + aiorpcx = callPackage ../development/python-modules/aiorpcx { }; aiorun = callPackage ../development/python-modules/aiorun { };