Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 04 Sep 2019 03:20:55 +0200] rev 43037
sidedata: register the flag processors if the repository allows for it
Differential Revision: https://phab.mercurial-scm.org/D6893
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 04 Sep 2019 03:19:58 +0200] rev 43036
sidedata: add a function for _processflagsraw usage
Entry with side data cannot directly validate their rawtext
Differential Revision: https://phab.mercurial-scm.org/D6892
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 04 Sep 2019 01:20:54 +0200] rev 43035
sidedata: add a function to write sidedata into a raw text
Differential Revision: https://phab.mercurial-scm.org/D6891
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 04 Sep 2019 00:59:15 +0200] rev 43034
sidedata: add a function to read sidedata from revlog raw text
This implement the "reading" part of a `sidedata` flag processor.
Differential Revision: https://phab.mercurial-scm.org/D6890
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 09 Sep 2019 14:03:12 +0200] rev 43033
sidedata: add a new module with basic documentation
For now the storage strategy is very simple. We can augment it in the future if
needed.
Code to actually support what is described will be introduced in later
changesets.
Differential Revision: https://phab.mercurial-scm.org/D6889
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 07 Aug 2019 17:55:44 +0200] rev 43032
sidedata: add a new revision flag constant for side data
Small step first.
Differential Revision: https://phab.mercurial-scm.org/D6888
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 04 Sep 2019 02:43:17 +0200] rev 43031
upgrade: detect the side-data format variants
Note that for now we cannot upgrade/downgrade to it.
Differential Revision: https://phab.mercurial-scm.org/D6887
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 09 Sep 2019 22:42:55 +0200] rev 43030
sidedata: introduce a new requirement to protect the feature
The feature will be usable only within repository supported by version of
Mercurial with the support.
Since the support is not fully implemented yet, the requirement has a temporary,
experimental name.
Differential Revision: https://phab.mercurial-scm.org/D6886
Augie Fackler <raf@durin42.com> [Wed, 02 Oct 2019 12:20:36 -0400] rev 43029
Added signature for changeset
181e52f2b62f
Augie Fackler <raf@durin42.com> [Wed, 02 Oct 2019 12:20:35 -0400] rev 43028
Added tag 5.1.2 for changeset
181e52f2b62f
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Sep 2019 03:58:46 +0200] rev 43027
copies: move file input processsing early
If we are to store the same kind of data outside of extra, we need to explicitly
prepare them before that.
On the long run, other storage (eg: sidedata) might use a different encoding to store this
information, since the constraint from extra does not apply to it.
Differential Revision: https://phab.mercurial-scm.org/D6937
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Sep 2019 03:48:41 +0200] rev 43026
copies: prepare changelog for more copies storage mode
We want to store copies information in sidedata, the logic will be quite similar
to the one used for extra, but sightly different (not in extra, no hash impact).
We start with small refactoring to make our work easier and the coming changesets
cleaners.
Differential Revision: https://phab.mercurial-scm.org/D6936
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 05:17:30 +0200] rev 43025
vfs: give all vfs an options attribute by default
Multiple code path assume vfs have an options attribute, including the vfs module
itself. So for consistency we explicitly add one to all vfs.
This will prevent various crash in the next changesets.
Differential Revision: https://phab.mercurial-scm.org/D6935
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 06:24:42 +0200] rev 43024
revlog: explicitly set revlogv0 in vfs options
Relying on having an attribute or not for something so fundamental seems too
fragile to me. (And indeed I had issue with that later in this series). So we
explicitly record the fact the repository use revlog-v0.
Differential Revision: https://phab.mercurial-scm.org/D6934
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 00:11:03 +0200] rev 43023
context: clarify the various mode in the _copies property cache
The previous code was compact but a bit dense. The new proposed code deal with
each mode separately, there are some duplicated lines, but the meaning of each
mode stand out.
One of the benefit it to make it simpler to add further mode in the future.
Differential Revision: https://phab.mercurial-scm.org/D6933
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 00:09:43 +0200] rev 43022
context: clarify the various mode in the filesremoved method
The previous code was compact but a bit dense. The new proposed code deal with
each mode separately, there are some duplicated lines, but the meaning of each
mode stand out.
One of the benefit it to make it simpler to add further mode in the future.
Differential Revision: https://phab.mercurial-scm.org/D6932
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 00:06:02 +0200] rev 43021
context: clarify the various mode in the filesadded method
The previous code was compact but a bit dense. The new proposed code deal with
each mode separately, there are some duplicated lines, but the meaning of each
mode stand out.
One of the benefit it to make it simpler to add further mode in the future.
Differential Revision: https://phab.mercurial-scm.org/D6931
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 26 Sep 2019 23:43:32 +0200] rev 43020
copies: expand the logic of usechangesetcentricalgo
Using intermediate variable is clearer and will make is simple to expand the
logic.
Differential Revision: https://phab.mercurial-scm.org/D6930
Floris Bruynooghe <flub@google.com> [Mon, 30 Sep 2019 00:01:58 +0200] rev 43019
patchbomb: protect email addresses from shell
When patchbomb sends email via a sendmail-like program it invokes this
using procutil.popen which passes the string to a shell to be parsed.
To protect any special characters in the email addresses on the
command line from being interpretered by the shell they must be
quoted.
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 11:29:25 -0700] rev 43018
automation: support and use Debian Buster by default
While Debian Buster (Debian 10) was released in July, the
AWS AMIs were not published until mid September.
This commit teaches the automation system to create AMIs for
Debian Buster. Since Debian Buster is the new stable Debian
release, we make it the default distribution for automation.
Differential Revision: https://phab.mercurial-scm.org/D6917
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 11:24:14 -0700] rev 43017
automation: use latest AMIs
This cuts down on the overhead to create a new AMI, as we don't
have to install as many package upgrades.
Differential Revision: https://phab.mercurial-scm.org/D6916
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 11:06:45 -0700] rev 43016
automation: increase size of Linux AMI build volume
I ran out of space attempting to build a few AMIs. Let's give
the environment an extra 2 GB to utilize.
Differential Revision: https://phab.mercurial-scm.org/D6915
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 10:37:38 -0700] rev 43015
automation: install awscli and python3-boto3 packages
This provides the `aws` command-line utility as well as a Python
library for interacting with AWS. It is useful to have these packages
installed in AMIs so you can easily interact with other AWS services.
Differential Revision: https://phab.mercurial-scm.org/D6914
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 10:28:01 -0700] rev 43014
automation: upgrade packages in Linux environment
Let's stay modern.
Differential Revision: https://phab.mercurial-scm.org/D6913
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 10:21:18 -0700] rev 43013
automation: remove Ubuntu 18.10
It reached end of life on July 18, 2019. I don't think we
should care about supporting it.
Differential Revision: https://phab.mercurial-scm.org/D6912
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 10:19:02 -0700] rev 43012
automation: always install docker-ce
Docker has published packages for Ubuntu Disco and we no longer
need this one-off.
Differential Revision: https://phab.mercurial-scm.org/D6911
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 10:17:20 -0700] rev 43011
automation: use LSB_RELEASE instead of DEBIAN_VERSION
This should be more robust since I believe the minor version can
change mid release.
Differential Revision: https://phab.mercurial-scm.org/D6910
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 12:34:52 -0700] rev 43010
tests: use silenttestrunner in test-simplemerge.py
The time monkeypatching doesn't appear to work reliably in
Python 3, possibly due to unittest using a different time
function. This makes the test intermittent due to the
execution time not always being `0.00s`.
We have our own wrapper around unittest for more deterministic
test output. So let's use it.
As a bonus, all test output disappeared, so we can remove the
.out file!
Differential Revision: https://phab.mercurial-scm.org/D6921
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 12:25:29 -0700] rev 43009
contrib: use pycompat.xrange in bdiff-torture.py
For Python 3 compatibility.
Differential Revision: https://phab.mercurial-scm.org/D6920
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 12:22:21 -0700] rev 43008
interfaces: use triple quotes for Attribute value
Otherwise the source transformer converts it to bytes and
test-check-interfaces.py complains on Python 3.
Differential Revision: https://phab.mercurial-scm.org/D6919