From fa6d48fd9ff1883729dc7a76a002a87a68525ff7 Mon Sep 17 00:00:00 2001 From: Manuel Barkhau Date: Fri, 1 Jul 2022 22:34:59 +0000 Subject: [PATCH] remove regex chars: ^ and $ during replacement --- src/bumpver/v2version.py | 4 ++++ test/test_rewrite.py | 8 ++++++++ test/test_version.py | 1 - 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/bumpver/v2version.py b/src/bumpver/v2version.py index 692ecb0..56a8f39 100644 --- a/src/bumpver/v2version.py +++ b/src/bumpver/v2version.py @@ -433,6 +433,10 @@ def _format_segment(seg: Segment, part_values: PartValues) -> FormatedSeg: zero_part_count += 1 result = seg + # remove regex chars + result = result.replace(r"^", r"") + result = result.replace(r"$", r"") + # unescape braces result = result.replace(r"\[", r"[") result = result.replace(r"\]", r"]") diff --git a/test/test_rewrite.py b/test/test_rewrite.py index b3e8a7c..3962989 100644 --- a/test/test_rewrite.py +++ b/test/test_rewrite.py @@ -336,3 +336,11 @@ def test_v2_diff(): lines = diff_str.split("\n") assert lines[3].startswith("-MIT License Copyright (c) 2018-20") assert lines[4].startswith("+MIT License Copyright (c) 2018-2019") + + +def test_remove_regex_chars(): + version_pattern = "YYYY.BUILD[-TAG]" + new_vinfo = v2version.parse_version_info("2018.0123-beta", version_pattern) + patterns = [v2patterns.compile_pattern(version_pattern, '^__version__ = "{version}"')] + lines = v2rewrite.rewrite_lines(patterns, new_vinfo, ['__version__ = "2018.0002-alpha" ']) + assert lines == ['__version__ = "2018.0123-beta" '] diff --git a/test/test_version.py b/test/test_version.py index 40b3da1..270c838 100644 --- a/test/test_version.py +++ b/test/test_version.py @@ -39,7 +39,6 @@ def test_bump_final_v1(): def test_bump_final_v2(): - print() raw_pattern = "vMAJOR.MINOR.PATCH[PYTAGNUM]" cur_version = "v0.1.4b1" assert v2version.incr(cur_version, raw_pattern, major=True ) == "v1.0.0b0"