summary refs log tree commit diff
path: root/gnu/packages/version-control.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/version-control.scm')
-rw-r--r--gnu/packages/version-control.scm41
1 files changed, 27 insertions, 14 deletions
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 567e5e3818..a798892e40 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -1341,7 +1341,7 @@ also walk each side of a merge and test those changes individually.")
     (propagated-inputs
      `(("git" ,git)
        ("openssh" ,openssh)))
-    (home-page "http://gitolite.com")
+    (home-page "https://gitolite.com")
     (synopsis "Git access control layer")
     (description
      "Gitolite is an access control layer on top of Git, providing fine access
@@ -1351,39 +1351,51 @@ control to Git repositories.")
 (define-public mercurial
   (package
     (name "mercurial")
-    (version "5.2.1")
+    (version "5.3.1")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://www.mercurial-scm.org/"
                                  "release/mercurial-" version ".tar.gz"))
              (sha256
               (base32
-               "1pxkd37b0a1mi2zakk1hi122lgz1ffy2fxdnbs8acwlqpw55bc8q"))))
+               "1nbjpzjrzgql4hrvslpxwbcgn885ikq6ba1yb4w6p78rw9nzkhgp"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'patch-tests
+           (lambda _
+             (substitute* '("tests/test-extdiff.t"
+                            "tests/test-logtoprocess.t"
+                            "tests/test-patchbomb.t"
+                            "tests/test-run-tests.t"
+                            "tests/test-transplant.t")
+               (("/bin/sh")
+                (which "sh")))
+             #t))
          (replace 'check
            (lambda* (#:key tests? #:allow-other-keys)
              (with-directory-excursion "tests"
                ;; The following tests are known to fail.
-               (for-each (lambda (file)
-                           (delete-file file))
-                         '("test-extdiff.t"
+               (for-each delete-file
+                         '(;; XXX: This test calls 'run-tests.py --with-hg=
+                           ;; `which hg`' and fails because there is no hg on
+                           ;; PATH from before (that's why we are building it!)?
                            "test-hghave.t"
+
+                           ;; FIXME: Why does this fail in the build container, but
+                           ;; not in 'guix environment -C' (even without /bin/sh)?
+                           "test-nointerrupt.t"
+
+                           ;; TODO: the fqaddr() call fails in the build
+                           ;; container, causing these server tests to fail.
                            "test-hgwebdir.t"
                            "test-http-branchmap.t"
-                           "test-logtoprocess.t"
-                           "test-merge-combination.t"
-                           "test-nointerrupt.t"
-                           "test-patchbomb.t"
                            "test-pull-bundle.t"
                            "test-push-http.t"
-                           "test-run-tests.t"
                            "test-serve.t"
                            "test-subrepo-deep-nested-change.t"
-                           "test-subrepo-recursion.t"
-                           "test-transplant.t"))
+                           "test-subrepo-recursion.t"))
                (when tests?
                  (invoke "./run-tests.py"
                          ;; ‘make check’ does not respect ‘-j’.
@@ -1400,7 +1412,8 @@ control to Git repositories.")
     ;; The following inputs are only needed to run the tests.
     (native-inputs
      `(("python-nose" ,python-nose)
-       ("unzip" ,unzip)))
+       ("unzip" ,unzip)
+       ("which" ,which)))
     (home-page "https://www.mercurial-scm.org/")
     (synopsis "Decentralized version control system")
     (description