fold: require --from flag for folding revisions to working copy
It's very easy to think that "hg fold 4::6" will fold exactly those
revisions. In reality, it will fold those *and* any revisions between
them and the working copy. To prevent users from making that mistake,
require the use of a new --from flag for folding revisions from the
given set to the working copy. With this change, I'm sure some users
will be surprised that the command can not be run without either
--from or --exact, but at least the consequences will be smaller (the
command simply aborts and the user can try again).
# Copied from histedit setup.py
# Credit to Augie Fackler <durin42@gmail.com>
import os
from distutils.core import setup
from os.path import dirname, join
def get_version(relpath):
'''Read version info from a file without importing it'''
for line in open(join(dirname(__file__), relpath), 'rb'):
# Decode to a fail-safe string for PY3
# (gives unicode object in PY2)
line = line.decode('utf8')
if '__version__' in line:
if "'" in line:
return line.split("'")[1]
py_modules = [
'hgext.evolve',
]
if os.environ.get('INCLUDE_INHIBIT'):
py_modules.append('hgext.inhibit')
py_modules.append('hgext.directaccess')
setup(
name='hg-evolve',
version=get_version('hgext/evolve.py'),
author='Pierre-Yves David',
maintainer='Pierre-Yves David',
maintainer_email='pierre-yves.david@ens-lyon.org',
url='https://www.mercurial-scm.org/doc/evolution/',
description='Flexible evolution of Mercurial history.',
long_description=open('README').read(),
keywords='hg mercurial',
license='GPLv2+',
py_modules=py_modules
)