diff --git a/autorelease-travis.yml b/autorelease-travis.yml index 7b723e4..9662793 100644 --- a/autorelease-travis.yml +++ b/autorelease-travis.yml @@ -1,6 +1,8 @@ -# AUTORELEASE v0.1.0 +# AUTORELEASE v0.1.1 +# for nonrelease, use @master +# for release, use v${VERSION}, e.g., v1.0.0 import: - - dwhswenson/autorelease:travis_stages/deploy_testpypi.yml@v0.1.0 - - dwhswenson/autorelease:travis_stages/cut_release.yml@v0.1.0 - - dwhswenson/autorelease:travis_stages/deploy_pypi.yml@v0.1.0 - - dwhswenson/autorelease:travis_stages/test_testpypi.yml@v0.1.0 + - dwhswenson/autorelease:travis_stages/deploy_testpypi.yml@v0.1.1 + - dwhswenson/autorelease:travis_stages/cut_release.yml@v0.1.1 + - dwhswenson/autorelease:travis_stages/deploy_pypi.yml@v0.1.1 + - dwhswenson/autorelease:travis_stages/test_testpypi.yml@v0.1.1 diff --git a/autorelease/git_repo_checks.py b/autorelease/git_repo_checks.py index b37a81f..5371a9b 100644 --- a/autorelease/git_repo_checks.py +++ b/autorelease/git_repo_checks.py @@ -45,7 +45,16 @@ def _versions_from_tags(self): # this takes the version (before the '_') and drops the preceding v tag_versions = [t.name.split('_')[0][1:] for t in self.repo.tags] # TODO: may be better to replace with regex for reusability - return [vers.Version(v) for v in tag_versions] + versions = [] + for version in tag_versions: + try: + v = vers.Version(version) + except vers.InvalidVersion: + pass + else: + versions.append(v) + return versions + # return [vers.Version(v) for v in tag_versions] def reasonable_desired_version(self, desired_version, allow_equal=False, allow_patch_skip=False): @@ -69,8 +78,9 @@ def reasonable_desired_version(self, desired_version, allow_equal=False, # no tags yet, and legal version is legal! return "" max_version = max(self._versions_from_tags()).base_version - (old_major, old_minor, old_patch) = \ - map(int, str(max_version).split('.')) + parts = list(map(int, str(max_version).split('.'))) + parts += [0] * (3 - len(parts)) + old_major, old_minor, old_patch = parts update_str = str(max_version) + " -> " + str(desired_version) diff --git a/autorelease/utils.py b/autorelease/utils.py index 2cfbf74..aee9614 100644 --- a/autorelease/utils.py +++ b/autorelease/utils.py @@ -3,7 +3,7 @@ def conda_recipe_version(recipe_file): with open(recipe_file) as f: - dct = yaml.load(f.read()) + dct = yaml.load(f.read(), Loader=yaml.FullLoader) return dct['package']['version'] def github_url_to_owner_repo(url): diff --git a/devtools/conda-recipe/meta.yaml b/devtools/conda-recipe/meta.yaml index 2479bbf..73c1ed1 100644 --- a/devtools/conda-recipe/meta.yaml +++ b/devtools/conda-recipe/meta.yaml @@ -1,7 +1,7 @@ package: name: autorelease # add ".dev0" for unreleased versions - version: "0.1.0" + version: "0.1.1" source: path: ../../ diff --git a/setup.cfg b/setup.cfg index 22ce2d1..15c870d 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,6 +1,6 @@ [metadata] name = autorelease -version = 0.1.0 +version = 0.1.1 # version should end in .dev0 if this isn't to be released short_description = Tools to keep the release process clean. description = Tools to keep the release process clean. diff --git a/setup.py b/setup.py index 2a7d0df..2937037 100644 --- a/setup.py +++ b/setup.py @@ -115,6 +115,8 @@ def write_installed_version_py(filename="_installed_version.py", version = conf.get('metadata', 'version') git_rev = get_git_version() + # TODO: shouldn't vwe just use the directory found by the + # VersionPyFinder? if src_dir is None: src_dir = conf.get('metadata', 'name')