From: Luke Shumaker <[email protected]>

Without --stream, `hg clone` reencodes+recompresses the entire repository,
to the storage settings of the host.  But download_hg() already did that
on the initial network clone, and it is 100% pointless duplicated work for
the local clone.

The work that this saves is CPU-bound (not disk-bound), and is restricted
to a single core.

The --stream flag has only existed since Mercurial 4.4 (2017-11-01).  Prior
to that, it was named --uncompressed.  --uncompressed still exists as a
compatibility alias for --stream, and marked deprecated, though there is
currently no schedule for its removal.
---
 scripts/libmakepkg/source/hg.sh.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/libmakepkg/source/hg.sh.in 
b/scripts/libmakepkg/source/hg.sh.in
index ae9aed3b..7346e1e3 100644
--- a/scripts/libmakepkg/source/hg.sh.in
+++ b/scripts/libmakepkg/source/hg.sh.in
@@ -94,7 +94,7 @@ extract_hg() {
                        plain "$(gettext "Aborting...")"
                        exit 1
                fi
-       elif ! hg clone -u "$ref" "$dir" "${dir##*/}"; then
+       elif ! hg clone -u "$ref" --stream "$dir" "${dir##*/}"; then
                error "$(gettext "Failure while creating working copy of %s %s 
repo")" "${repo}" "hg"
                plain "$(gettext "Aborting...")"
                exit 1
-- 
2.18.0

Reply via email to