diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py --- a/mercurial/localrepo.py +++ b/mercurial/localrepo.py @@ -608,13 +608,11 @@ storevfs, requirements, ) - elif ui.configbool( - b'experimental', b'sharesafe-warn-outdated-shares' - ): - ui.warn( + else: + raise error.Abort( _( - b'warning: source repository supports share-safe functionality.' - b' Reshare to upgrade.\n' + b'version mismatch: source uses share-safe' + b' functionality while the current share does not' ) ) diff --git a/tests/test-share-safe.t b/tests/test-share-safe.t --- a/tests/test-share-safe.t +++ b/tests/test-share-safe.t @@ -392,20 +392,11 @@ o f3ba8b99bb6f897c87bbc1c07b75c6ddf43a4f77: added foo -Make sure existing shares still works - - $ hg log -GT "{node}: {desc}\n" -R ../nss-share --config experimental.sharesafe-warn-outdated-shares=false - @ f63db81e6dde1d9c78814167f77fb1fb49283f4f: added bar - | - o f3ba8b99bb6f897c87bbc1c07b75c6ddf43a4f77: added foo - +Make sure existing shares dont work with default config $ hg log -GT "{node}: {desc}\n" -R ../nss-share - warning: source repository supports share-safe functionality. Reshare to upgrade. - @ f63db81e6dde1d9c78814167f77fb1fb49283f4f: added bar - | - o f3ba8b99bb6f897c87bbc1c07b75c6ddf43a4f77: added foo - + abort: version mismatch: source uses share-safe functionality while the current share does not + [255] Create a safe share from upgrade one @@ -538,11 +529,8 @@ sparserevlog store $ hg log -GT "{node}: {desc}\n" -R ../nss-share - warning: source repository supports share-safe functionality. Reshare to upgrade. - @ f63db81e6dde1d9c78814167f77fb1fb49283f4f: added bar - | - o f3ba8b99bb6f897c87bbc1c07b75c6ddf43a4f77: added foo - + abort: version mismatch: source uses share-safe functionality while the current share does not + [255] Check that if lock is taken, upgrade fails but read operation are successful $ touch ../nss-share/.hg/wlock