Gregory Szorc <gregory.szorc@gmail.com> [Fri, 30 Mar 2018 13:39:06 -0700] rev 37210
zope: force module import by importing symbols
Previously, we tried to import a module and handle the ImportError.
Our lazy module importer doesn't verify the module exists and returns
a dummy object representing the module. Only once we attempt to load
a symbol in the module does the ImportError get raises.
This means that simple imports inside `try..except ImportError` don't
detect missing modules.
This commit changes imports in zope.interface to access symbols, thus
forcing module load and triggering ImportError.
This fixes zope.interface for pure builds.
Differential Revision: https://phab.mercurial-scm.org/D2980
Danny Hooper <hooper@google.com> [Fri, 30 Mar 2018 13:17:20 -0700] rev 37209
fix: remove unused imports
Differential Revision: https://phab.mercurial-scm.org/D2977
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 27 Mar 2018 17:26:43 +0530] rev 37208
infinitepush: introduce server option to route every push to bundlestore
This patch introduces a new config option for server
`infinitepush.pushtobundlestore` which if sets to True, the server will route
each incoming push to the bundlestore and store all the parts i.e. changegroups,
phases, obsmarkers in the bundlestore and won't be applied to the revlog.
This config option does not need any client side wrapping and does not need any
custom bundle2 part or stream level parameter to decide where the push should
go.
This is very useful for Mozilla CI use case where they have a central server
that recieves pushes to trigger code-reviews, trigger a test run of CI, run
static analysis etc. The server using the new config option can stash standalone
bundles to the bundlestore and server can get access to individual revisions on
demand.
A new test file which has related tests are added for the config option.
Differential Revision: https://phab.mercurial-scm.org/D2958
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 27 Mar 2018 17:19:02 +0530] rev 37207
infinitepush: don't wrap bundle2.processparts while calling `hg unbundle`
This patch adds dirty logic to check whether we are processing `hg unbundle`
instead of an `hg incoming` to prevent the wrapping of bundle2.processparts
function.
Differential Revision: https://phab.mercurial-scm.org/D2957
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 27 Mar 2018 14:15:42 +0530] rev 37206
inifnitepush: use utils.{stringutil|procutil}.* instead of util.*
Recently in core, util.py is splitted into various modules in mercurial/utils/.
Differential Revision: https://phab.mercurial-scm.org/D2956
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 30 Mar 2018 12:50:06 -0700] rev 37205
infinitepush: delete the non-forward-move flag for hg push
Differential Revision: https://phab.mercurial-scm.org/D2955
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 21 Mar 2018 19:23:10 +0530] rev 37204
infinitepush: drop the wrapping of update command on client side
The extension wraps update command to client side to add functionality to pull
and checkout to a revision if it does not present locally. There is a twist to
that, only changesets which can resolve to remotenames can be pulled using this.
Differential Revision: https://phab.mercurial-scm.org/D2954
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 30 Mar 2018 12:49:50 -0700] rev 37203
infinitepush: delete infinitepushcommands.py and related tests
This patch drops infinitepushcommands.py and the tests which were related to the
command `debugfillinfinitepushmetadata` introduced in the commit.
The patch also drops a config option which was related to
debuginfinitepushmetadata command.
Differential Revision: https://phab.mercurial-scm.org/D2953
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 27 Mar 2018 18:04:05 +0530] rev 37202
infinitepush: delete infinitepush.fillmetadatabranchpattern config option
This patch deletes the config option infinitepush.fillmetadatabranchpattern
which if set to true sets a background process which will save metadata in
infinitepush index.
This series is meant to have a state where we can use it for CI purposes.
Differential Revision: https://phab.mercurial-scm.org/D2952
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 09 Feb 2018 15:49:46 +0530] rev 37201
infinitepush: drop the `--to` flag to push and use `-B` instead
The extension added a `--to` flag to specify the bookmark to which revs should
be pushed. This patch deletes that flag and instead uses the `-B` flag. After
this patch, bookmark passed as `-B` is parsed and if it matches the infinitepush
bookmark pattern, we consider that push as infinitepush.
This is still not the best of what we can do. Later patches in the series will
drop the use of `-B` flag and will instead handle things at bookmark bundle2
part. Plugging these logic to bookmark bundle2 part will also get rid of the
scratchbranchparttype bundle2 part.
Differential Revision: https://phab.mercurial-scm.org/D2108
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 09 Feb 2018 14:16:03 +0530] rev 37200
infinitepush: drop the `--create` flag to push command
The extension added a `--create` flag for creating a new bookmark on the
bundlestore. This patch changes the bahviour to create a bookmark if it does not
exists and removes the requirement of the `--create` and then drop the logic
around the `--create` flag.
Tests are changed to drop the usage of `--create` flag.
Differential Revision: https://phab.mercurial-scm.org/D2107
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 09 Feb 2018 14:02:03 +0530] rev 37199
infinitepush: drop logic related to treemanifest extension
treemanifest is another facebook's extension which is not in core. Let's drop
the logic related to infinitepush extension which is now ported to core.
Differential Revision: https://phab.mercurial-scm.org/D2106
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 09 Feb 2018 13:56:09 +0530] rev 37198
infinitepush: drop hack related to --to, --create flags of remotenames-ext
The remotenames extension has --to, --create. --allow-anon flags which won't be
ported to core. This patch drops the hack which fixes the interaction with
remotenames-ext during push.
In upcoming patches, --to and --create extensions will be removed from
infinitepush also.
Differential Revision: https://phab.mercurial-scm.org/D2105
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 09 Feb 2018 13:50:16 +0530] rev 37197
infinitepush: drop error handling while pushing to svn server
This is something which is internal to Facebook and we don't want in core.
Differential Revision: https://phab.mercurial-scm.org/D2104
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 09 Feb 2018 13:36:50 +0530] rev 37196
infinitepush: drop `--list-remote`, `--remote-path` flags to bookmark cmd
The extension adds these two flags to list remote bookmarks using the `hg
bookmark` command. These are not required in core currently and needs some
discussion before getting them in, so let's drop them for now. This makes us
deleting the wrapping of `hg bookmark` command on client side.
The end goal here is to have minimal or no wrapping at client side.
Differential Revision: https://phab.mercurial-scm.org/D2103