copies: add a config to limit the number of candidates to check in heuristics
The heuristics algorithm find possible candidates for move/copy and then check
whether they are actually a copy or move. In some cases, there can be lot of
candidates possible which can actually slow down the algorithm.
This patch introduces a config option
`experimental.copytrace.movecandidateslimit` using which one can limit the
candidates to check. The limit defaults to 100.
Thanks to Yuya for suggesting to skip copytracing for that file with a
warning.
Differential Revision: https://phab.mercurial-scm.org/D987
#!/bin/bash -eu
. $(dirname $0)/dockerlib.sh
. $(dirname $0)/packagelib.sh
BUILDDIR=$(dirname $0)
export ROOTDIR=$(cd $BUILDDIR/.. > /dev/null; pwd)
checkdocker
DISTID="$1"
CODENAME="$2"
PLATFORM="$1-$2"
shift; shift # extra params are passed to build process
OUTPUTDIR=${OUTPUTDIR:=$ROOTDIR/packages/$PLATFORM}
initcontainer $PLATFORM
# debuild only appears to be able to save built debs etc to .., so we
# have to share the .. of the current directory with the docker
# container and hope it's writable. Whee.
dn=$(basename $PWD)
if [ $(uname) = "Darwin" ] ; then
$DOCKER run -u $DBUILDUSER --rm -v $PWD/..:/mnt $CONTAINER \
sh -c "cd /mnt/$dn && make clean && make local"
fi
$DOCKER run -u $DBUILDUSER --rm -v $PWD/..:/mnt $CONTAINER \
sh -c "cd /mnt/$dn && DEB_BUILD_OPTIONS='${DEB_BUILD_OPTIONS:=}' contrib/builddeb --build --distid $DISTID --codename $CODENAME $@"
contrib/builddeb --cleanup --distid $DISTID --codename $CODENAME
if [ $(uname) = "Darwin" ] ; then
$DOCKER run -u $DBUILDUSER --rm -v $PWD/..:/mnt $CONTAINER \
sh -c "cd /mnt/$dn && make clean"
fi