summaryrefslogtreecommitdiff
path: root/extra
diff options
context:
space:
mode:
authorAsk Solem <ask@celeryproject.org>2016-04-07 18:59:49 -0700
committerAsk Solem <ask@celeryproject.org>2016-04-07 18:59:49 -0700
commite5e631cc4cf85c39ce27f6e8b2fdecc46611f12f (patch)
tree7cb059fb73a38e21717d1de349fe9cd4307d0833 /extra
parentb1707d091a16ab22b7ae942310032eb0c8f5e2ff (diff)
downloadkombu-e5e631cc4cf85c39ce27f6e8b2fdecc46611f12f.tar.gz
Removes unused bump_version
Diffstat (limited to 'extra')
-rwxr-xr-xextra/release/bump_version.py169
1 files changed, 0 insertions, 169 deletions
diff --git a/extra/release/bump_version.py b/extra/release/bump_version.py
deleted file mode 100755
index dc38b674..00000000
--- a/extra/release/bump_version.py
+++ /dev/null
@@ -1,169 +0,0 @@
-#!/usr/bin/env python
-from __future__ import absolute_import, unicode_literals
-
-import errno
-import os
-import re
-import sys
-import subprocess
-
-from contextlib import contextmanager
-from tempfile import NamedTemporaryFile
-
-str_t = str if sys.version_info[0] >= 3 else basestring
-
-
-def rq(s):
- return s.strip("\"'")
-
-
-def cmd(*args):
- return subprocess.Popen(args, stdout=subprocess.PIPE).communicate()[0]
-
-
-@contextmanager
-def no_enoent():
- try:
- yield
- except OSError as exc:
- if exc.errno != errno.ENOENT:
- raise
-
-
-class StringVersion(object):
-
- def decode(self, s):
- s = rq(s)
- text = ''
- major, minor, release = s.split('.')
- if not release.isdigit():
- pos = release.index(re.split('\d+', release)[1][0])
- release, text = release[:pos], release[pos:]
- return int(major), int(minor), int(release), text
-
- def encode(self, v):
- return '.'.join(map(str, v[:3])) + v[3]
-to_str = StringVersion().encode
-from_str = StringVersion().decode
-
-
-class TupleVersion(object):
-
- def decode(self, s):
- v = list(map(rq, s.split(', ')))
- return (tuple(map(int, v[0:3])) +
- tuple([''.join(v[3:])]))
-
- def encode(self, v):
- v = list(v)
-
- def quote(lit):
- if isinstance(lit, str_t):
- return '"%s"' % (lit,)
- return str(lit)
-
- if not v[-1]:
- v.pop()
- return ', '.join(map(quote, v))
-
-
-class VersionFile(object):
-
- def __init__(self, filename):
- self.filename = filename
- self._kept = None
-
- def _as_orig(self, version):
- return self.wb % {'version': self.type.encode(version),
- 'kept': self._kept}
-
- def write(self, version):
- pattern = self.regex
- with no_enoent():
- with NamedTemporaryFile() as dest:
- with open(self.filename) as orig:
- for line in orig:
- if pattern.match(line):
- dest.write(self._as_orig(version))
- else:
- dest.write(line)
- os.rename(dest.name, self.filename)
-
- def parse(self):
- pattern = self.regex
- gpos = 0
- with open(self.filename) as fh:
- for line in fh:
- m = pattern.match(line)
- if m:
- if '?P<keep>' in pattern.pattern:
- self._kept, gpos = m.groupdict()['keep'], 1
- return self.type.decode(m.groups()[gpos])
-
-
-class PyVersion(VersionFile):
- regex = re.compile(r'^VERSION\s*=\s*\((.+?)\)')
- wb = 'VERSION = (%(version)s)\n'
- type = TupleVersion()
-
-
-class SphinxVersion(VersionFile):
- regex = re.compile(r'^:[Vv]ersion:\s*(.+?)$')
- wb = ':Version: %(version)s\n'
- type = StringVersion()
-
-
-class CPPVersion(VersionFile):
- regex = re.compile(r'^\#\s*define\s*(?P<keep>\w*)VERSION\s+(.+)')
- wb = '#define %(kept)sVERSION "%(version)s"\n'
- type = StringVersion()
-
-
-_filetype_to_type = {'py': PyVersion,
- 'rst': SphinxVersion,
- 'c': CPPVersion,
- 'h': CPPVersion}
-
-
-def filetype_to_type(filename):
- _, _, suffix = filename.rpartition('.')
- return _filetype_to_type[suffix](filename)
-
-
-def bump(*files, **kwargs):
- version = kwargs.get('version')
- files = [filetype_to_type(f) for f in files]
- versions = [v.parse() for v in files]
- current = list(reversed(sorted(versions)))[0] # find highest
-
- if version:
- next = from_str(version)
- else:
- major, minor, release, text = current
- if text:
- raise Exception("Can't bump alpha releases")
- next = (major, minor, release + 1, text)
-
- print('Bump version from %s -> %s' % (to_str(current), to_str(next)))
-
- for v in files:
- print(' writing %r...' % (v.filename,))
- v.write(next)
-
- print(cmd('git', 'commit', '-m', 'Bumps version to %s' % (to_str(next),),
- *[f.filename for f in files]))
- print(cmd('git', 'tag', 'v%s' % (to_str(next),)))
-
-
-def main(argv=sys.argv, version=None):
- if not len(argv) > 1:
- print('Usage: distdir [docfile] -- <custom version>')
- sys.exit(0)
- if '--' in argv:
- c = argv.index('--')
- version = argv[c + 1]
- argv = argv[:c]
- bump(*argv[1:], version=version)
-
-if __name__ == '__main__':
- main()