phabricator: introduce a `phabricator.retry` option
For the past 2 days, my connection to phab.mercurial-scm.org became extremely
poor. In practice this mean that any conduit call has a fairly high change to
hang and die. Giving the amount of call done by the phabricator extension, it
means the when I am lucky I can get 1 or 2 Diff to update after a few try, but
anything sizeable doesn't have any hope to get through.
This changesets introduce a new option for the fabricator extension to try retry
failed command itself. So that I can get Diff through.
As you can guess, this changeset managed to reach Phabricator thanks to itself.
Differential Revision: https://phab.mercurial-scm.org/D9449
packaging: drop Disco (19.04) and add Focal (20.04)
Disco support ended in January 2020, and Focal does not have an announced EOL.
Something is now installing and configuring `tzdata`, which was throwing up an
interactive prompt to configure the timezone. Aside from being hostile to
automation, the prompt didn't actually accept input and hung the process. This
propagates the host's timezone into the image via environment variable in order
to skip the prompt, and avoid hardcoding a value.
Differential Revision: https://phab.mercurial-scm.org/D9396
make: drop Trusty and Artful targets
These were removed from the packaging makefile in
0363bb086c57.
Differential Revision: https://phab.mercurial-scm.org/D9395
packaging: add `HG_DOCKER_OWN_USER` to `dockerdeb` like exists in `dockerrpm`
I was getting build failures when it was trying to write to the working
directory on CentOS 7 without this. It is basically the same as was added to
the RPM builder in
4c0d4bbdc395.
For some reason, this doesn't work with Xenial, and the only solution I found
was to invoke it with UID 1000 on the host side. It doesn't EOL until April
2024, but it also has python 3.5.2, so this build complication is the least of
the problems with supporting it after py2 is dropped.
Differential Revision: https://phab.mercurial-scm.org/D9394
heptapod-ci: do not publish changeset when doing the local clone
Otherwise, checks and script relying on some changeset being draft fails.
Differential Revision: https://phab.mercurial-scm.org/D9461
copies-rust: pre-indent some code to clarify the next changeset
The next changeset will massively rewrite the next function. However having a
clear diff on the core semantic of the function will help making the next
changesets clearer. So we do most of the churn beforehand.
Differential Revision: https://phab.mercurial-scm.org/D9301