rebase: clear merge state when aborting in-memory merge on dirty working copy
Differential Revision: https://phab.mercurial-scm.org/D9509
tests: show that in-memory rebase leaves state when working copy is dirty
When in-memory rebase falls back to on-disk rebase, it checks if the
working copy is dirty. If it is, it aborts the rebase. However, it
leaves the rebase state on disk. I broke it in
feffeb18d412 (rebase:
teach in-memory rebase to not restart with on-disk rebase on conflict,
2020-09-18).
Differential Revision: https://phab.mercurial-scm.org/D9508
helptext: document share safe functionality in `hg help config -v`
If share safe functionality is enabled, we read `.hg/hgrc' of shared source.
Differential Revision: https://phab.mercurial-scm.org/D9413
helptext: mention in `hg help config` that `.hg/hgrc-not-shared` is consulted
Recently we added `.hg/hgrc-not-shared` which is a config file which won't be
shared with shares when share-safe mode is enabled. Irrespective of whether
we are using share-safe or not, we consult this file now.
Let's document that.
Differential Revision: https://phab.mercurial-scm.org/D9412
share: add documentation about share-safe mode in `hg help -e share`
Differential Revision: https://phab.mercurial-scm.org/D9411
helptext: update first hg version when share-safe will be released
I authored the patch which added the helptext before 5.6 release hoping that my
patches will make it. However they didn't before the release and were pushed
after the release only.
Differential Revision: https://phab.mercurial-scm.org/D9410
share: show warning if share is outdated while source supports share-safe
Previous patches in the series and some which are already committed implements
share safe functionality where config and requirements will be shared too.
Rolling this feature has a problem that existing shares may never upgrade as
they will never learn about the new config. To help the transition, we show a
warning message if the share source supports share-safe mechanism. This provides
the source repo ability to upgrade and pass on the message to shares that you
should reshare and upgrade too.
Differential Revision: https://phab.mercurial-scm.org/D9369
upgrade: add support to downgrade share safe mode
In previous patch we added support to upgrade current repository to use share
safe mode. This patch adds support to downgrade to remove share-safe mode.
Differential Revision: https://phab.mercurial-scm.org/D9358
upgrade: add support for experimental safe share mode
Recently we introduce the share-safe functionality which makes shares share
requirements and config of share source. This patch adds support to
`debugupgraderepo` command to upgrade repository to share-safe mode when
`format.exp-share-safe` config is enabled.
Differential Revision: https://phab.mercurial-scm.org/D9144
chgserver: catch RepoError while loading configuration
Recent share safe work introduced functionality to read share source config file
on dispatch. This can result in RepoError while reading config file as the
shared source might not be present.
`test-share.t#safe` was failing with chg earlier because of this.
Differential Revision: https://phab.mercurial-scm.org/D9462