Jun Wu <quark@fb.com> [Thu, 17 Dec 2015 10:30:17 +0000] rev 27660
mercurial: pass ui to extensions.load (issue5007)
extensions.load does need ui argument to print error if an extension
fails to load.
Bryan O'Sullivan <bos@serpentine.com> [Mon, 04 Jan 2016 21:54:46 -0800] rev 27659
test-patchbomb.t: drop a number of now-redundant uses of "-n"
Bryan O'Sullivan <bos@serpentine.com> [Mon, 04 Jan 2016 21:54:46 -0800] rev 27658
test-patchbomb.t: test use of sendmail program
Siddharth Agarwal <sid0@fb.com> [Sat, 02 Jan 2016 03:11:52 -0800] rev 27657
merge: add options to warn or ignore on colliding unknown files
A 'colliding unknown file' is a file that meets all of the following
conditions:
- is untracked or ignored on disk
- is present in the changeset being merged or updated to
- has different contents
Previously, we would always abort whenever we saw such files. With this config
option we can choose to warn and back the unknown files up instead, or even
forgo the warning entirely and silently back the unknown files up.
Common use cases for this configuration include a large scale transition of
formerly ignored unknown files to tracked files. In some cases the files can be
given new names, but in other cases, external "convention over configuration"
constraints have determined that the file must retain the same name as before.
Siddharth Agarwal <sid0@fb.com> [Sat, 02 Jan 2016 03:21:01 -0800] rev 27656
batchget: add support for backing up files
We're going to use this in an upcoming feature.
Siddharth Agarwal <sid0@fb.com> [Sat, 02 Jan 2016 03:02:57 -0800] rev 27655
merge: add a new 'backup' argument to get actions
We're going to use this in an upcoming patch to back untracked files up when
they're replaced by tracked ones.
Siddharth Agarwal <sid0@fb.com> [Sat, 02 Jan 2016 03:02:57 -0800] rev 27654
_checkunknownfiles: turn 'conflicts' into a set
We'll check for membership in this set in an upcoming patch.
Siddharth Agarwal <sid0@fb.com> [Sat, 02 Jan 2016 03:02:57 -0800] rev 27653
checkunknownfiles: make control flow clearer
In particular, make it clear that we only check for and abort on conflicts if
force is not true.
Siddharth Agarwal <sid0@fb.com> [Sat, 02 Jan 2016 03:02:57 -0800] rev 27652
_checkunknownfiles: rename 'aborts' to 'conflicts'
In upcoming patches we'll be able to do more useful things than aborting.
Siddharth Agarwal <sid0@fb.com> [Sat, 02 Jan 2016 03:02:57 -0800] rev 27651
origpath: move from cmdutil to scmutil
This is a lower-level function so it doesn't need to be in cmdutil, and putting
it here avoids a bunch of potential import cycle issues.
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 22 Nov 2015 17:57:35 -0800] rev 27650
revlog: remove unnecessary cache validation in _chunks
Previously, we likely called _chunkraw() multiple times in order to
ensure it didn't change out from under us. I'm pretty certain this code
had its origins in the days where we attempted to have thread safety of
localrepository and thus revlog instances.
revlog instances are already not thread safe for writing. And, as of
Mercurial 3.6, hgweb uses a separate localrepository instance per
request, so there should only be a single thread reading a revlog at
a time. We more or less decided that attempting to make classes like
revlog thread safe is a lost cause.
So, this patch removes thread safety from _chunks. As a result, we make
one less call into _chunkraw() when the initial read isn't serviced
by the cache. This translates to savings of 4 function calls overall
and possibly prevents the creation of an additional buffer view into the
cache. I doubt this translates into any real world performance wins
because decompression will almost certainly dwarf time spent in
_chunks(). But it does make the code simpler, so it is an improvement.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 05 Jan 2016 19:51:51 -0800] rev 27649
revlog: return offset from _chunkraw()
A subsequent patch will refactor _chunks() and the calculation of the
offset will no longer occur in that function. Prepare by returning the
offset from _chunkraw().
Durham Goode <durham@fb.com> [Tue, 05 Jan 2016 17:08:14 -0800] rev 27648
verify: get rid of some unnecessary local variables
Now that all the major functionality has been refactored out, we can delete some
unused local variables.
Durham Goode <durham@fb.com> [Tue, 05 Jan 2016 17:08:14 -0800] rev 27647
verify: move changelog verificaiton to its own function
This makes verify more modular so extensions can hook into it.
Durham Goode <durham@fb.com> [Tue, 05 Jan 2016 18:34:39 -0800] rev 27646
verify: move manifest verification to its own function
This makes verify more modular, making it easier for extensions to extend.
Durham Goode <durham@fb.com> [Tue, 05 Jan 2016 18:31:51 -0800] rev 27645
verify: move file cross checking to its own function
This is part of making verify more modular so extensions can hook into it.
Durham Goode <durham@fb.com> [Tue, 05 Jan 2016 18:28:46 -0800] rev 27644
verify: move filelog verification to its own function
This makes verify more modular so extensions can hook in more easily.
Durham Goode <durham@fb.com> [Tue, 05 Jan 2016 17:08:14 -0800] rev 27643
verify: move checkentry() to be a class function
This is part of making verify more modular so extensions can hook into it.
Durham Goode <durham@fb.com> [Tue, 05 Jan 2016 17:08:14 -0800] rev 27642
verify: move checklog() onto class
This is part of an effort to make verify more modular so extensions can hook
into it.
Mathias De Maré <mathias.demare@gmail.com> [Mon, 04 Jan 2016 21:21:59 +0100] rev 27641
dockerrpm: fix CentOS 5 RPMs (issue4977)
The older rpmbuild in CentOS 5 fails if some of the output directories
have not been created yet. This change results in creating those directories.
timeless <timeless@mozdev.org> [Thu, 31 Dec 2015 17:41:59 +0000] rev 27640
check-code: enforce strict spacing around assignment
timeless <timeless@mozdev.org> [Thu, 31 Dec 2015 08:17:28 +0000] rev 27639
cleanup: remove superfluous space after space after equals (tests)
timeless <timeless@mozdev.org> [Thu, 31 Dec 2015 08:17:15 +0000] rev 27638
cleanup: remove superfluous space after space after equals (C)
timeless <timeless@mozdev.org> [Thu, 31 Dec 2015 08:16:59 +0000] rev 27637
cleanup: remove superfluous space after space after equals (python)
Bryan O'Sullivan <bos@serpentine.com> [Mon, 04 Jan 2016 21:54:46 -0800] rev 27636
tests: make a stab at approximating wall-clock times
Vaguely empirical observations:
* ".py" tests are about an order of magnitude faster than ".t" tests
* dividing size by 1000 gives an approximation to wall-clock
run time (in seconds) that is not completely ridiculous.
Bryan O'Sullivan <bos@serpentine.com> [Mon, 04 Jan 2016 21:54:46 -0800] rev 27635
tests: only stat a test file if we don't already know its "cost"
Bryan O'Sullivan <bos@serpentine.com> [Mon, 04 Jan 2016 21:54:44 -0800] rev 27634
tests: write recent run times to a file named tests/.testtimes
This is an effortless way to track how long each test takes without
having to pass any extra command line options.
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Dec 2015 11:56:24 -0800] rev 27633
wireproto: support disabling bundle1 only if repo is generaldelta
I recently implemented the server.bundle1* options to control whether
bundle1 exchange is allowed.
After thinking about Mozilla's strategy for handling generaldelta
rollout a bit more, I think server operators need an additional
lever: disable bundle1 if and only if the repo is generaldelta.
bundle1 exchange for non-generaldelta repos will not have the potential
for CPU explosion that generaldelta repos do. Therefore, it makes sense
for server operators to continue to allow bundle1 exchange for
non-generaldelta repos without having to set a per-repo hgrc option
to change the policy depending on whether the repo is generaldelta.
This patch introduces a new set of options to control bundle1 behavior
for generaldelta repos. These options enable server operators to limit
bundle1 restrictions to the class of repos that can be performance
issues. It also allows server operators to tie bundle1 access to store
format. In many server environments (including Mozilla's), legacy repos
will not be generaldelta and new repos will or might be. New repos often
aren't bound by legacy access requirements, so setting a global policy
that disallows access to new/generaldelta repos via bundle1 could be a
reasonable policy in many server environments. This patch makes this
policy very easy to implement (modify global hgrc, add options to
existing generaldelta repos to grandfather them in).
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 02 Jan 2016 15:14:55 -0800] rev 27632
streamclone: use read()
We have a convenience API for reading the full contents of a file.
Use it.
Gregory Szorc <gregory.szorc@gmail.com> [Wed, 30 Dec 2015 16:21:57 -0700] rev 27631
internals: document revlog format
It seems like a good idea to document the revlog format.
There is a lot more that could be added to this documentation.
But you have to start somewhere.
timeless <timeless@mozdev.org> [Tue, 22 Dec 2015 23:25:17 +0000] rev 27630
histedit: hide --outgoing warnings
timeless <timeless@mozdev.org> [Wed, 23 Dec 2015 08:57:04 +0000] rev 27629
histedit: list action when intervention is required