diff --git a/pkgs/development/tools/reno/default.nix b/pkgs/development/tools/reno/default.nix index 2b082d03b5f3..b05bb2cd26a3 100644 --- a/pkgs/development/tools/reno/default.nix +++ b/pkgs/development/tools/reno/default.nix @@ -1,27 +1,58 @@ -{ stdenv, fetchurl, pythonPackages }: +{ stdenv +, git +, gnupg1 +, python3Packages +}: -with pythonPackages; buildPythonApplication rec { +with python3Packages; buildPythonApplication rec { pname = "reno"; - version = "2.3.2"; + version = "3.1.0"; - src = fetchurl { - url = "mirror://pypi/r/reno/${pname}-${version}.tar.gz"; - sha256 = "018vl9fj706jjf07xdx8q6761s53mrihjn69yjq09gp0vmp1g7i4"; + # Must be built from python sdist because of versioning quirks + src = fetchPypi { + inherit pname version; + sha256 = "2510e3aae4874674187f88f22f854e6b0ea1881b77039808a68ac1a5e8ee69b6"; }; - # Don't know how to make tests pass - doCheck = false; + propagatedBuildInputs = [ + dulwich + pbr + pyyaml + setuptools # required for finding pkg_resources at runtime + ]; - # Nothing to strip (python files) - dontStrip = true; + checkInputs = [ + # Python packages + pytestCheckHook + docutils + fixtures + sphinx + testtools + testscenarios - propagatedBuildInputs = [ pbr six pyyaml dulwich ]; - buildInputs = [ Babel ]; + # Required programs to run all tests + git + gnupg1 + ]; + + # remove b/c doesn't list all dependencies, and requires a few packages not in nixpkgs + postPatch = '' + rm test-requirements.txt + ''; + + disabledTests = [ + "test_build_cache_db" # expects to be run from a git repository + ]; + + # verify executable + postCheck = '' + $out/bin/reno -h + ''; meta = with stdenv.lib; { description = "Release Notes Manager"; - homepage = "http://docs.openstack.org/developer/reno/"; - license = licenses.asl20; - maintainers = with maintainers; [ guillaumekoenig ]; + homepage = "https://docs.openstack.org/reno/latest"; + license = licenses.asl20; + maintainers = with maintainers; [ drewrisinger guillaumekoenig ]; }; }