3434from jinja2 import Environment , PackageLoader
3535
3636from commitizen import defaults
37+ from commitizen .bump import normalize_tag
3738from commitizen .exceptions import InvalidConfigurationError
3839from commitizen .git import GitCommit , GitTag
3940
@@ -284,22 +285,22 @@ def incremental_build(new_content: str, lines: List, metadata: Dict) -> List:
284285
285286
286287def get_smart_tag_range (
287- tags : List [GitTag ], start : str , end : Optional [str ] = None
288+ tags : List [GitTag ], newest : str , oldest : Optional [str ] = None
288289) -> List [GitTag ]:
289290 """Smart because it finds the N+1 tag.
290291
291292 This is because we need to find until the next tag
292293 """
293294 accumulator = []
294295 keep = False
295- if not end :
296- end = start
296+ if not oldest :
297+ oldest = newest
297298 for index , tag in enumerate (tags ):
298- if tag .name == start :
299+ if tag .name == newest :
299300 keep = True
300301 if keep :
301302 accumulator .append (tag )
302- if tag .name == end :
303+ if tag .name == oldest :
303304 keep = False
304305 try :
305306 accumulator .append (tags [index + 1 ])
@@ -309,43 +310,43 @@ def get_smart_tag_range(
309310 return accumulator
310311
311312
312- def get_start_and_end_rev (
313- tags : List [GitTag ], version : str , tag_format : str , create_tag : Callable
313+ def get_oldest_and_newest_rev (
314+ tags : List [GitTag ], version : str , tag_format : str
314315) -> Tuple [Optional [str ], Optional [str ]]:
315316 """Find the tags for the given version.
316317
317318 `version` may come in different formats:
318319 - `0.1.0..0.4.0`: as a range
319320 - `0.3.0`: as a single version
320321 """
321- start : Optional [str ] = None
322- end : Optional [str ] = None
322+ oldest : Optional [str ] = None
323+ newest : Optional [str ] = None
323324 try :
324- start , end = version .split (".." )
325+ oldest , newest = version .split (".." )
325326 except ValueError :
326- end = version
327+ newest = version
327328
328- end_tag = create_tag ( end , tag_format = tag_format )
329+ newest_tag = normalize_tag ( newest , tag_format = tag_format )
329330
330- start_tag = None
331- if start :
332- start_tag = create_tag ( start , tag_format = tag_format )
331+ oldest_tag = None
332+ if oldest :
333+ oldest_tag = normalize_tag ( oldest , tag_format = tag_format )
333334
334- tags_range = get_smart_tag_range (tags , start = end_tag , end = start_tag )
335- if len ( tags_range ) == 0 :
335+ tags_range = get_smart_tag_range (tags , newest = newest_tag , oldest = oldest_tag )
336+ if not tags_range :
336337 return None , None
337338
338- start_rev : Optional [str ] = tags_range [- 1 ].name
339- end_rev = end_tag
339+ oldest_rev : Optional [str ] = tags_range [- 1 ].name
340+ newest_rev = newest_tag
340341
341342 # check if it's the first tag created
342343 # and it's also being requested as part of the range
343- if start_rev == tags [- 1 ].name and start_rev == start_tag :
344- return None , end_rev
344+ if oldest_rev == tags [- 1 ].name and oldest_rev == oldest_tag :
345+ return None , newest_rev
345346
346347 # when they are the same, and it's also the
347- # first tag crated
348- if start_rev == end_rev :
349- return None , end_rev
348+ # first tag created
349+ if oldest_rev == newest_rev :
350+ return None , newest_rev
350351
351- return start_rev , end_rev
352+ return oldest_rev , newest_rev
0 commit comments