Compare commits

..

No commits in common. "d6da31b6ffef3c1a163e1fd8c2f6a04cdfd6e421" and "30947769e1612af4314ce150d2c9adad4e4e47ec" have entirely different histories.

4 changed files with 8 additions and 26 deletions

View File

@ -10,13 +10,13 @@ jobs:
strategy: strategy:
matrix: matrix:
python-version: [ "3.8", "3.9", "3.10", "3.11", "3.12" ] python-version: [ "3.8", "3.9", "3.10", "3.11", "3.12" ]
click-version: [ "click~=8.0" ] click-version: [ "click~=7.0", "click~=8.0" ]
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }} - name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5.1.1 uses: actions/setup-python@v5.1.0
with: with:
python-version: ${{ matrix.python-version }} python-version: ${{ matrix.python-version }}
@ -48,7 +48,7 @@ jobs:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v5.1.1 uses: actions/setup-python@v5.1.0
with: with:
python-version: '>=3.8' python-version: '>=3.8'

View File

@ -2,17 +2,6 @@
All notable changes to this project will be documented in this file All notable changes to this project will be documented in this file
## Version 1.3.0 - 2024-08-08
### Added
- added a `--version` option to `yaclog show` that prints just the version number
### Changed
- removed support for Click 7 as a dependency
## Version 1.2.0 - 2024-04-16 ## Version 1.2.0 - 2024-04-16
### Added ### Added

View File

@ -1,7 +1,7 @@
[build-system] [build-system]
requires = [ requires = [
"setuptools>=64", "setuptools>=61",
"setuptools_scm>=8", "setuptools_scm>=6.2",
"wheel" "wheel"
] ]
build-backend = "setuptools.build_meta" build-backend = "setuptools.build_meta"
@ -29,7 +29,7 @@ classifiers = [
requires-python = ">= 3.8" requires-python = ">= 3.8"
dependencies = [ dependencies = [
"Click >= 8.0", "Click >= 7.0",
"GitPython >= 3", "GitPython >= 3",
"packaging >= 20", "packaging >= 20",
"tomlkit >= 0.11" "tomlkit >= 0.11"

View File

@ -70,8 +70,6 @@ def reformat(obj: Changelog):
help='Show only the version body.') help='Show only the version body.')
@click.option('--header', '-h', 'mode', flag_value='header', @click.option('--header', '-h', 'mode', flag_value='header',
help='Show only the version header.') help='Show only the version header.')
@click.option('--version', '-v', 'mode', flag_value='version', help='Show only the version number. If the current version is unreleased, '
'this is inferred by incrementing the patch number of the last released version')
@click.argument('version_names', metavar='VERSIONS', type=str, nargs=-1) @click.argument('version_names', metavar='VERSIONS', type=str, nargs=-1)
@click.pass_obj @click.pass_obj
def show(obj: Changelog, all_versions, markdown, mode, version_names): def show(obj: Changelog, all_versions, markdown, mode, version_names):
@ -86,22 +84,15 @@ def show(obj: Changelog, all_versions, markdown, mode, version_names):
'name': (lambda v, k: v.name), 'name': (lambda v, k: v.name),
'body': (lambda v, k: v.body(**k)), 'body': (lambda v, k: v.body(**k)),
'header': (lambda v, k: v.header(**k)), 'header': (lambda v, k: v.header(**k)),
'version': (lambda v, k: str(v.version))
} }
str_func = functions[mode] str_func = functions[mode]
kwargs = {'md': markdown, 'color': True}
try: try:
if all_versions: if all_versions:
versions = obj.versions versions = obj.versions
elif len(version_names) == 0: elif len(version_names) == 0:
versions = [obj.current_version()] versions = [obj.current_version()]
if mode == 'version' and versions[0].name == 'Unreleased':
latest = obj.current_version(released=True).version
inferred = yaclog.version.increment_version(str(latest), 2, '')
print(str(inferred))
return
else: else:
versions = [obj.get_version(name) for name in version_names] versions = [obj.get_version(name) for name in version_names]
except KeyError as k: except KeyError as k:
@ -109,6 +100,8 @@ def show(obj: Changelog, all_versions, markdown, mode, version_names):
except ValueError as v: except ValueError as v:
raise click.ClickException(str(v)) raise click.ClickException(str(v))
kwargs = {'md': markdown, 'color': True}
sep = '\n\n' if mode == 'body' or mode == 'full' else '\n' sep = '\n\n' if mode == 'body' or mode == 'full' else '\n'
click.echo(sep.join([str_func(v, kwargs) for v in versions])) click.echo(sep.join([str_func(v, kwargs) for v in versions]))