Skip to content

Commit 74ed3a7

Browse files
committed
substitute more .format() with f-strings
1 parent 7bb786c commit 74ed3a7

1 file changed

Lines changed: 22 additions & 27 deletions

File tree

version_query/version.py

Lines changed: 22 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -110,15 +110,15 @@ def _parse_local_str(cls, local: str) -> tuple:
110110
_re_sep, _re_letters, _re_number)
111111
_re_local = r'(?P<local>\+{0}([\.-]{0})*)'.format(_re_alphanumeric)
112112
# _re_named_parts_count = 3 + 3
113-
_re_version = r'{}{}?{}?'.format(_re_release, _re_pre_release, _re_local)
113+
_re_version = rf'{_re_release}{_re_pre_release}?{_re_local}?'
114114
_pattern_version = re.compile(_re_version)
115115

116116
@classmethod
117117
def from_str(cls, version_str: str):
118118
"""Create version from string."""
119119
match = cls._pattern_version.fullmatch(version_str) # type: t.Optional[t.Match[str]]
120120
if match is None:
121-
raise ValueError('version string {} is invalid'.format(repr(version_str)))
121+
raise ValueError(f'version string {repr(version_str)} is invalid')
122122
_LOG.debug('version_query parsed version string %s into %s: %s %s',
123123
repr(version_str), type(match), match.groupdict(), match.groups())
124124

@@ -381,23 +381,20 @@ def local(self, local: t.Optional[t.Sequence[str]]):
381381
return
382382

383383
if not isinstance(local, collections.abc.Sequence):
384-
raise TypeError('local={} is of wrong type {} in {}'
385-
.format(repr(local), type(local), repr(self)))
384+
raise TypeError(f'local={repr(local)} is of wrong type {type(local)} in {repr(self)}')
386385

387386
if len(local) % 2 != 1:
388-
raise ValueError('local={} has wrong length {} in {}'
389-
.format(repr(local), len(local), repr(self)))
387+
raise ValueError(f'local={repr(local)} has wrong length {len(local)} in {repr(self)}')
390388

391389
for i, part in enumerate(local):
392390
if not isinstance(part, str):
393-
raise TypeError('local_part or local_separator {} is of wrong type {} in {}'
394-
.format(repr(part), type(part), repr(self)))
395-
if i % 2 == 0 and type(self)._pattern_alphanumeric.fullmatch(part) is None:
396-
raise ValueError('local_part={} has wrong value in {}'
397-
.format(repr(part), repr(self)))
398-
if i % 2 == 1 and part not in ('-', '.'):
399-
raise ValueError('local_separator={} has wrong value in {}'
400-
.format(repr(part), repr(self)))
391+
raise TypeError(f'local_part or local_separator {repr(part)} is of wrong type'
392+
f' {type(part)} in {repr(self)}')
393+
if i % 2 == 0:
394+
if type(self)._pattern_alphanumeric.fullmatch(part) is None:
395+
raise ValueError(f'local_part={repr(part)} has wrong value in {repr(self)}')
396+
elif part not in ('-', '.'):
397+
raise ValueError(f'local_separator={repr(part)} has wrong value in {repr(self)}')
401398

402399
self._local = tuple(local)
403400

@@ -408,12 +405,11 @@ def has_local(self):
408405
def increment(self, component: VersionComponent, amount: int = 1) -> 'Version':
409406
"""Increment a selected version component and return self."""
410407
if not isinstance(component, VersionComponent):
411-
raise TypeError('component={} is of wrong type {}'
412-
.format(repr(component), type(component)))
408+
raise TypeError(f'component={repr(component)} is of wrong type {type(component)}')
413409
if not isinstance(amount, int):
414-
raise TypeError('amount={} is of wrong type {}'.format(repr(amount), type(amount)))
410+
raise TypeError(f'amount={repr(amount)} is of wrong type {type(amount)}')
415411
if amount < 1:
416-
raise ValueError('amount={} has wrong value'.format(amount))
412+
raise ValueError(f'amount={amount} has wrong value')
417413

418414
if component in (VersionComponent.Major, VersionComponent.Minor, VersionComponent.Patch):
419415
self._increment_release(component, amount)
@@ -434,7 +430,7 @@ def increment(self, component: VersionComponent, amount: int = 1) -> 'Version':
434430
pre_patch += amount
435431
self._pre_release[-1] = (pre_sep, pre_type, pre_patch)
436432
else:
437-
raise ValueError('incrementing component={} is not possible'.format(repr(component)))
433+
raise ValueError(f'incrementing component={repr(component)} is not possible')
438434

439435
return self
440436

@@ -497,18 +493,18 @@ def release_to_str(self) -> str:
497493
return '.'.join(str(_) for _ in version_tuple[:2])
498494
if _version_tuple_checker(version_tuple, (True, True, True)):
499495
return '.'.join(str(_) for _ in version_tuple[:3])
500-
raise ValueError('cannot generate valid version string from {}'.format(repr(self)))
496+
raise ValueError(f'cannot generate valid version string from {repr(self)}')
501497

502498
def _pre_release_segment_to_str(self, segment: int) -> str:
503499
assert self._pre_release is not None
504500
version_tuple = self._pre_release[segment]
505501
if _version_tuple_checker(version_tuple, (True, True, False)):
506502
return '{}{}'.format(*version_tuple[:2])
507503
if _version_tuple_checker(version_tuple, (True, False, True)):
508-
return '{}{}'.format(version_tuple[0], version_tuple[2])
504+
return f'{version_tuple[0]}{version_tuple[2]}'
509505
if _version_tuple_checker(version_tuple, (True, True, True)):
510506
return '{}{}{}'.format(*version_tuple)
511-
raise ValueError('cannot generate valid version string from {}'.format(repr(self)))
507+
raise ValueError(f'cannot generate valid version string from {repr(self)}')
512508

513509
def pre_release_to_str(self) -> str:
514510
if self._pre_release is None:
@@ -519,11 +515,10 @@ def pre_release_to_str(self) -> str:
519515
def local_to_str(self) -> str:
520516
if not self._local:
521517
return ''
522-
return '+{}'.format(''.join(self._local))
518+
return f'+{"".join(self._local)}'
523519

524520
def to_str(self) -> str:
525-
return '{}{}{}'.format(self.release_to_str(), self.pre_release_to_str(),
526-
self.local_to_str())
521+
return f'{self.release_to_str()}{self.pre_release_to_str()}{self.local_to_str()}'
527522

528523
def release_to_tuple(self, sort: bool = False) -> tuple:
529524
return (0 if sort else None) if self._major is None else self._major, \
@@ -567,8 +562,8 @@ def to_sem_version(self) -> dict:
567562
return semver.parse(self.to_str())
568563

569564
def __repr__(self):
570-
return '{}({})'.format(type(self).__name__, ', '.join(
571-
'{}: {}'.format(field[1:], repr(value)) for field, value in vars(self).items()))
565+
fields = ', '.join(f'{field[1:]}: {repr(value)}' for field, value in vars(self).items())
566+
return f'{type(self).__name__}({fields})'
572567

573568
def __str__(self):
574569
return self.to_str()

0 commit comments

Comments
 (0)