Mercurial > evolve
view contrib/nopushpublish.py @ 6848:e823d9117a68
tests: further relax the number of files check in test-check-sdist.t
A previous patch bumped this number due to a different version of setuptools or
distutils or some other package that we don't control, which made it pretty
obvious that this check is not really practical. We need a better way to check
that all needed files are present in the tarball.
I have some ideas, but this patch can be applied without further waiting, and
it'll already bring the benefit of not annoying developers or contributors
while at the same time still keeping the test somewhat useful.
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Mon, 16 Sep 2024 17:22:23 +0400 |
parents | 4f5e915ddb71 |
children |
line wrap: on
line source
# Extension which prevent changeset to be turn public by push operation # # Copyright 2011 Logilab SA <contact@logilab.fr> # # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. from mercurial import extensions, util from mercurial import discovery def checkpublish(orig, repo, remote, outgoing, *args): # is remote publishing? publish = True if 'phases' in remote.listkeys('namespaces'): remotephases = remote.listkeys('phases') publish = remotephases.get('publishing', False) npublish = 0 if publish: for rev in outgoing.missing: if repo[rev].phase(): npublish += 1 if npublish: repo.ui.warn("Push would publish %s changesets" % npublish) ret = orig(repo, remote, outgoing, *args) if npublish: raise util.Abort("Publishing push forbidden", hint="Use `hg phase -p <rev>` to manually publish them") return ret def uisetup(ui): extensions.wrapfunction(discovery, 'checkheads', checkpublish)