diff options
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/pendulum')
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/pendulum/3.nix | 99 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/pendulum/default.nix | 99 |
2 files changed, 81 insertions, 117 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/pendulum/3.nix b/nixpkgs/pkgs/development/python-modules/pendulum/3.nix deleted file mode 100644 index 78e9c675ea8d..000000000000 --- a/nixpkgs/pkgs/development/python-modules/pendulum/3.nix +++ /dev/null @@ -1,99 +0,0 @@ -{ lib -, stdenv -, buildPythonPackage -, fetchFromGitHub -, pythonOlder -, isPyPy - -# build-system -, poetry-core -, rustPlatform - -# native dependencies -, iconv - -# dependencies -, backports-zoneinfo -, importlib-resources -, python-dateutil -, time-machine -, tzdata - -# tests -, pytestCheckHook -, pytz -}: - -buildPythonPackage rec { - pname = "pendulum"; - version = "3.0.0"; - pyproject = true; - - src = fetchFromGitHub { - owner = "sdispater"; - repo = "pendulum"; - rev = "refs/tags/${version}"; - hash = "sha256-v0kp8dklvDeC7zdTDOpIbpuj13aGub+oCaYz2ytkEpI="; - }; - - postPatch = '' - substituteInPlace rust/Cargo.lock \ - --replace "3.0.0-beta-1" "3.0.0" - ''; - - cargoRoot = "rust"; - cargoDeps = rustPlatform.fetchCargoTarball { - inherit src; - sourceRoot = "source/rust"; - name = "${pname}-${version}"; - hash = "sha256-6fw0KgnPIMfdseWcunsGjvjVB+lJNoG3pLDqkORPJ0I="; - postPatch = '' - substituteInPlace Cargo.lock \ - --replace "3.0.0-beta-1" "3.0.0" - ''; - }; - - nativeBuildInputs = [ - poetry-core - rustPlatform.maturinBuildHook - rustPlatform.cargoSetupHook - ]; - - buildInputs = lib.optionals stdenv.isDarwin [ - iconv - ]; - - propagatedBuildInputs = [ - python-dateutil - tzdata - ] ++ lib.optional (!isPyPy) [ - time-machine - ] ++ lib.optionals (pythonOlder "3.9") [ - backports-zoneinfo - importlib-resources - ]; - - pythonImportsCheck = [ - "pendulum" - ]; - - nativeCheckInputs = [ - pytestCheckHook - pytz - ]; - - disabledTestPaths = [ - "tests/benchmarks" - ] ++ lib.optionals stdenv.isDarwin [ - # PermissionError: [Errno 1] Operation not permitted: '/etc/localtime' - "tests/testing/test_time_travel.py" - ]; - - meta = with lib; { - description = "Python datetimes made easy"; - homepage = "https://github.com/sdispater/pendulum"; - changelog = "https://github.com/sdispater/pendulum/blob/${src.rev}/CHANGELOG.md"; - license = licenses.mit; - maintainers = with maintainers; [ ]; - }; -} diff --git a/nixpkgs/pkgs/development/python-modules/pendulum/default.nix b/nixpkgs/pkgs/development/python-modules/pendulum/default.nix index 631494a1d9a3..78e9c675ea8d 100644 --- a/nixpkgs/pkgs/development/python-modules/pendulum/default.nix +++ b/nixpkgs/pkgs/development/python-modules/pendulum/default.nix @@ -1,36 +1,99 @@ -{ lib, fetchPypi, buildPythonPackage, pythonOlder -, python-dateutil -, importlib-metadata +{ lib +, stdenv +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, isPyPy + +# build-system , poetry-core -, pytzdata -, typing +, rustPlatform + +# native dependencies +, iconv + +# dependencies +, backports-zoneinfo +, importlib-resources +, python-dateutil +, time-machine +, tzdata + +# tests +, pytestCheckHook +, pytz }: buildPythonPackage rec { pname = "pendulum"; - version = "2.1.2"; - format = "pyproject"; + version = "3.0.0"; + pyproject = true; - src = fetchPypi { - inherit pname version; - sha256 = "b06a0ca1bfe41c990bbf0c029f0b6501a7f2ec4e38bfec730712015e8860f207"; + src = fetchFromGitHub { + owner = "sdispater"; + repo = "pendulum"; + rev = "refs/tags/${version}"; + hash = "sha256-v0kp8dklvDeC7zdTDOpIbpuj13aGub+oCaYz2ytkEpI="; }; - preBuild = '' - export HOME=$TMPDIR + postPatch = '' + substituteInPlace rust/Cargo.lock \ + --replace "3.0.0-beta-1" "3.0.0" ''; - build-system = [ poetry-core ]; - dependencies = [ python-dateutil pytzdata ] - ++ lib.optional (pythonOlder "3.5") typing - ++ lib.optionals (pythonOlder "3.8") [ importlib-metadata ]; + cargoRoot = "rust"; + cargoDeps = rustPlatform.fetchCargoTarball { + inherit src; + sourceRoot = "source/rust"; + name = "${pname}-${version}"; + hash = "sha256-6fw0KgnPIMfdseWcunsGjvjVB+lJNoG3pLDqkORPJ0I="; + postPatch = '' + substituteInPlace Cargo.lock \ + --replace "3.0.0-beta-1" "3.0.0" + ''; + }; + + nativeBuildInputs = [ + poetry-core + rustPlatform.maturinBuildHook + rustPlatform.cargoSetupHook + ]; + + buildInputs = lib.optionals stdenv.isDarwin [ + iconv + ]; + + propagatedBuildInputs = [ + python-dateutil + tzdata + ] ++ lib.optional (!isPyPy) [ + time-machine + ] ++ lib.optionals (pythonOlder "3.9") [ + backports-zoneinfo + importlib-resources + ]; + + pythonImportsCheck = [ + "pendulum" + ]; + + nativeCheckInputs = [ + pytestCheckHook + pytz + ]; - # No tests - doCheck = false; + disabledTestPaths = [ + "tests/benchmarks" + ] ++ lib.optionals stdenv.isDarwin [ + # PermissionError: [Errno 1] Operation not permitted: '/etc/localtime' + "tests/testing/test_time_travel.py" + ]; meta = with lib; { description = "Python datetimes made easy"; homepage = "https://github.com/sdispater/pendulum"; + changelog = "https://github.com/sdispater/pendulum/blob/${src.rev}/CHANGELOG.md"; license = licenses.mit; + maintainers = with maintainers; [ ]; }; } |