##// END OF EJS Templates
bookmarks: cache reverse mapping (issue5868)...
bookmarks: cache reverse mapping (issue5868) I chose a simpler implementation. If the initial cost of building reverse mapping is significant, we'll have to move it under @propertycache. The nodemap could be a dict of sets, but I think keeping a sorted list is better since each node is likely to have zero/one bookmark. Micro-benchmark with 1001 bookmarks and 1001 revisions: $ for n in `seq 0 1000`; do touch $n; hg book book$n; hg ci -qAm$n; done $ hg bookmarks --time > /dev/null (orig) time: real 0.040 secs (user 0.050+0.000 sys 0.000+0.000) (new) time: real 0.040 secs (user 0.040+0.000 sys 0.010+0.000) $ hg log -T '{bookmarks}\n' --time > /dev/null (orig) time: real 0.160 secs (user 0.160+0.000 sys 0.000+0.000) (new) time: real 0.090 secs (user 0.100+0.000 sys 0.000+0.000)

File last commit:

r33598:a3ac1ea6 stable
r37869:04ceb267 @26 default
Show More
dockerrpm
37 lines | 970 B | text/plain | TextLexer
Mads Kiilerich
dockerrpm: check that docker is running correctly before building
r22438 #!/bin/bash -e
Matt Mackall
build: initial support for in-tree autobuilding recipes
r21255
Augie Fackler
dockerlib: start extracting common functions for setting up docker...
r24968 . $(dirname $0)/dockerlib.sh
Matt Mackall
build: initial support for in-tree autobuilding recipes
r21255 BUILDDIR=$(dirname $0)
Augie Fackler
dockerlib: extract initcontainer() method...
r24969 export ROOTDIR=$(cd $BUILDDIR/..; pwd)
Matt Mackall
build: initial support for in-tree autobuilding recipes
r21255
Augie Fackler
dockerlib: start extracting common functions for setting up docker...
r24968 checkdocker
Mads Kiilerich
dockerrpm: check that docker is running correctly before building
r22438
Mads Kiilerich
dockerrpm: better handling of specification of docker name
r22439 PLATFORM="$1"
Mads Kiilerich
docker: add CentOS 5...
r22443 shift # extra params are passed to buildrpm
Mads Kiilerich
dockerrpm: better handling of specification of docker name
r22439
Augie Fackler
dockerlib: extract initcontainer() method...
r24969 initcontainer $PLATFORM
Mads Kiilerich
dockerrpm: run docker build process as the current user, not as root...
r22440
Mads Kiilerich
dockerrpm: prepare source outside docker and just run rpmbuild inside docker...
r22441 RPMBUILDDIR=$ROOTDIR/packages/$PLATFORM
Mads Kiilerich
docker: add CentOS 5...
r22443 contrib/buildrpm --rpmbuilddir $RPMBUILDDIR --prepare $*
Mads Kiilerich
dockerrpm: prepare source outside docker and just run rpmbuild inside docker...
r22441
DSHARED=/mnt/shared
Mathias De Maré
docker: pass proxy arguments to docker process...
r33598 $DOCKER run -e http_proxy -e https_proxy -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \
Mads Kiilerich
dockerrpm: prepare source outside docker and just run rpmbuild inside docker...
r22441 rpmbuild --define "_topdir $DSHARED" -ba $DSHARED/SPECS/mercurial.spec --clean
Mads Kiilerich
dockerrpm: create a yum/dnf repo from the generated rpms...
r22444
Mathias De Maré
docker: pass proxy arguments to docker process...
r33598 $DOCKER run -e http_proxy -e https_proxy -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \
Mads Kiilerich
dockerrpm: create a yum/dnf repo from the generated rpms...
r22444 createrepo $DSHARED
cat << EOF > $RPMBUILDDIR/mercurial.repo
# Place this file in /etc/yum.repos.d/mercurial.repo
[mercurial]
Mads Kiilerich
buildrpm: fix use of invalid $PLATFORM in mercurial.repo
r23124 name=Mercurial packages for $PLATFORM
Mads Kiilerich
dockerrpm: create a yum/dnf repo from the generated rpms...
r22444 # baseurl=file://$RPMBUILDDIR/
Mads Kiilerich
buildrpm: fix use of invalid $PLATFORM in mercurial.repo
r23124 baseurl=http://hg.example.com/build/$PLATFORM/
Mads Kiilerich
dockerrpm: create a yum/dnf repo from the generated rpms...
r22444 skip_if_unavailable=True
gpgcheck=0
enabled=1
EOF
echo
echo "Build complete - results can be found in $RPMBUILDDIR"