diff --git a/pkgs/development/python-modules/openstackdocstheme/default.nix b/pkgs/development/python-modules/openstackdocstheme/default.nix index 7391fb37ba7a..c0e75fcab9b9 100644 --- a/pkgs/development/python-modules/openstackdocstheme/default.nix +++ b/pkgs/development/python-modules/openstackdocstheme/default.nix @@ -14,8 +14,7 @@ buildPythonPackage rec { version = "3.4.0"; pyproject = true; - # breaks on import due to distutils import through pbr.packaging - disabled = pythonAtLeast "3.12"; + disabled = pythonAtLeast "3.13"; src = fetchPypi { inherit pname version; diff --git a/pkgs/development/python-modules/pbr/default.nix b/pkgs/development/python-modules/pbr/default.nix index bd45d03af892..d500a215be11 100644 --- a/pkgs/development/python-modules/pbr/default.nix +++ b/pkgs/development/python-modules/pbr/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, callPackage, + distutils, fetchPypi, setuptools, six, @@ -20,6 +21,7 @@ buildPythonPackage rec { build-system = [ setuptools ]; dependencies = [ + distutils # for distutils.command in pbr/packaging.py setuptools # for pkg_resources six ]; diff --git a/pkgs/development/tools/reno/default.nix b/pkgs/development/python-modules/reno/default.nix similarity index 66% rename from pkgs/development/tools/reno/default.nix rename to pkgs/development/python-modules/reno/default.nix index c5d79f3badf6..556374be3251 100644 --- a/pkgs/development/tools/reno/default.nix +++ b/pkgs/development/python-modules/reno/default.nix @@ -1,42 +1,48 @@ { + buildPythonApplication, + dulwich, + docutils, lib, - fetchPypi, + fetchFromGitHub, git, - gnupg1, - python3Packages, + gnupg, + pbr, + pyyaml, + setuptools, + sphinx, + stestr, + testtools, + testscenarios, }: -python3Packages.buildPythonApplication rec { +buildPythonApplication rec { pname = "reno"; version = "4.1.0"; pyproject = true; - # Must be built from python sdist because of versioning quirks - src = fetchPypi { - inherit pname version; - hash = "sha256-+ZLx/b0WIV7J3kevCBMdU6KDDJ54Q561Y86Nan9iU3A="; + src = fetchFromGitHub { + owner = "openstack"; + repo = "reno"; + rev = "refs/tags/${version}"; + hash = "sha256-le9JtE0XODlYhTFsrjxFXG/Weshr+FyN4M4S3BMBLUE="; }; - # remove b/c doesn't list all dependencies, and requires a few packages not in nixpkgs - postPatch = '' - rm test-requirements.txt - ''; + env.PBR_VERSION = version; - build-system = with python3Packages; [ + build-system = [ setuptools ]; - dependencies = with python3Packages; [ + dependencies = [ dulwich pbr pyyaml - setuptools # required for finding pkg_resources at runtime + setuptools ]; - nativeCheckInputs = with python3Packages; [ + nativeCheckInputs = [ # Python packages docutils - fixtures sphinx stestr testtools @@ -44,12 +50,12 @@ python3Packages.buildPythonApplication rec { # Required programs to run all tests git - gnupg1 + gnupg ]; checkPhase = '' runHook preCheck - export HOME=$TMPDIR + export HOME=$(mktemp -d) stestr run -e <(echo " # Expects to be run from a git repository reno.tests.test_cache.TestCache.test_build_cache_db @@ -79,6 +85,6 @@ python3Packages.buildPythonApplication rec { mainProgram = "reno"; homepage = "https://docs.openstack.org/reno/latest"; license = licenses.asl20; - maintainers = teams.openstack.members ++ (with maintainers; [ drewrisinger guillaumekoenig ]); + maintainers = teams.openstack.members; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cbc53530fc3d..5aa6a260ebff 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8432,9 +8432,7 @@ with pkgs; inherit (regclient) regbot regctl regsync; - reno = callPackage ../development/tools/reno { - python3Packages = python311Packages; - }; + reno = with python311Packages; toPythonApplication reno; replace-secret = callPackage ../build-support/replace-secret/replace-secret.nix { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 046aa93cb66f..ac88c26442f4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13845,6 +13845,8 @@ self: super: with self; { rencode = callPackage ../development/python-modules/rencode { }; + reno = callPackage ../development/python-modules/reno { }; + renson-endura-delta = callPackage ../development/python-modules/renson-endura-delta { }; reorder-python-imports = callPackage ../development/python-modules/reorder-python-imports { };