From ecfff3680244b47bee62560f39659e82221ea90b Mon Sep 17 00:00:00 2001 From: emaryn Date: Sun, 8 Jun 2025 12:10:52 +0800 Subject: [PATCH] python312Packages.rbtools: fix --- .../python-modules/rbtools/default.nix | 74 +++++++++++++++---- 1 file changed, 59 insertions(+), 15 deletions(-) diff --git a/pkgs/development/python-modules/rbtools/default.nix b/pkgs/development/python-modules/rbtools/default.nix index 9b244c769e03..3ce319fe3786 100644 --- a/pkgs/development/python-modules/rbtools/default.nix +++ b/pkgs/development/python-modules/rbtools/default.nix @@ -1,43 +1,87 @@ { lib, buildPythonPackage, - fetchurl, + fetchFromGitHub, isPy3k, setuptools, colorama, - six, texttable, tqdm, + certifi, + housekeeping, + puremagic, + pydiffx, + typing-extensions, + importlib-metadata, + importlib-resources, + packaging, + pytestCheckHook, + pytest-env, + kgb, + gitSetupHook, + gitFull, + subversion, }: buildPythonPackage rec { pname = "rbtools"; version = "5.2.1"; - format = "setuptools"; - + pyproject = true; disabled = !isPy3k; - src = fetchurl { - url = "https://downloads.reviewboard.org/releases/RBTools/${lib.versions.majorMinor version}/RBTools-${version}.tar.gz"; - sha256 = "f2863515ef6ff1cfcd3905d5f409ab8c4d12878b364d6f805ba848dcaecb97f2"; + src = fetchFromGitHub { + owner = "reviewboard"; + repo = "rbtools"; + tag = "release-${version}"; + hash = "sha256-Ci9lHlP2X95y7ldHBbqb5qWozPj3TJ0AxeVhqzVsdFA="; }; - propagatedBuildInputs = [ - six + build-system = [ setuptools ]; + + dependencies = [ texttable tqdm colorama - setuptools + certifi + housekeeping + puremagic + pydiffx + typing-extensions + importlib-metadata + importlib-resources + packaging ]; - # The kgb test dependency is not in nixpkgs - doCheck = false; + pythonRelaxDeps = [ "pydiffx" ]; - meta = with lib; { + nativeCheckInputs = [ + pytestCheckHook + pytest-env + kgb + gitSetupHook + gitFull + subversion + ]; + + disabledTestPaths = [ + "rbtools/utils/tests/test_repository.py::RepositoryMatchTests::test_find_matching_server_repository_no_match" # AttributeError: 'APICache' object has no attribute 'db' + # kgb.errors.ExistingSpyError + "rbtools/utils/tests/test_repository.py::RepositoryMatchTests::test_find_matching_server_repository_with_mirror_path_match" + "rbtools/utils/tests/test_repository.py::RepositoryMatchTests::test_find_matching_server_repository_with_multiple_matches" + "rbtools/utils/tests/test_repository.py::RepositoryMatchTests::test_find_matching_server_repository_with_path_match" + "rbtools/diffs/tests/test_apple_diff_tool.py::AppleDiffToolTests::test_run_diff_file_with_text_differences" # AssertionError: b'---[38 chars]0000 +0000\n+++ /path2.txt\t2022-09-26 10:20:3[42 chars]ar\n' != b'---[38 chars]0000 -0700\n+++ /path2.txt\t2022-09-26 10:20:3[42 chars]ar\n' + # rbtools.utils.process.RunProcessError: Unexpected error executing the command: svn co file:///build/source/rbtools/clients/tests/testdata/svn-repo /build/rbtools._bw2ih4g/working/svn-repo + "rbtools/clients/tests/test_svn.py" + "rbtools/utils/tests/test_source_tree.py" + "rbtools/clients/tests/test_scanning.py::ScanningTests::test_scanning_nested_repos_1" + "rbtools/clients/tests/test_scanning.py::ScanningTests::test_scanning_nested_repos_2" + ]; + + meta = { homepage = "https://www.reviewboard.org/docs/rbtools/dev/"; description = "RBTools is a set of command line tools for working with Review Board and RBCommons"; mainProgram = "rbt"; - license = licenses.mit; - maintainers = with maintainers; [ domenkozar ]; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ domenkozar ]; }; }