From 4a57291ba0c527e1ee4c6794edc9239cdd1b6e0c Mon Sep 17 00:00:00 2001 From: omicron Date: Tue, 24 Oct 2023 01:29:58 +0200 Subject: [PATCH] Fix several issues revealed by testing and static analysis - Fix type annotations in d2warehouse.stash - Fix invalid escape sequences in d2warehouse.item - Bump the minimum supported version of python to 3.10 - Fix ambiguous variable name in d2warehouse.huffman --- d2warehouse/huffman.py | 6 +++--- d2warehouse/item.py | 2 +- d2warehouse/stash.py | 2 +- pyproject.toml | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/d2warehouse/huffman.py b/d2warehouse/huffman.py index fec76ae..2f2e37d 100644 --- a/d2warehouse/huffman.py +++ b/d2warehouse/huffman.py @@ -62,9 +62,9 @@ decode_tree = decodetree(code) def decode(bits: bitarray, n) -> tuple[str, int]: - s = "".join(itertools.islice(bits.iterdecode(decode_tree), n)) - l = len(encode(s)) - return s, l + text = "".join(itertools.islice(bits.iterdecode(decode_tree), n)) + length = len(encode(text)) + return text, length def encode(s: str) -> bitarray: diff --git a/d2warehouse/item.py b/d2warehouse/item.py index d98b814..d8cd087 100644 --- a/d2warehouse/item.py +++ b/d2warehouse/item.py @@ -62,7 +62,7 @@ class Stat: for val in self.values: subst_text = subst_text.replace("#", str(val), 1) if self.parameter: - subst_text = re.sub("\[[^\]]*\]", str(self.parameter), subst_text, 1) + subst_text = re.sub(r"\[[^\]]*\]", str(self.parameter), subst_text, 1) print(" " * indent, subst_text) diff --git a/d2warehouse/stash.py b/d2warehouse/stash.py index c043aba..ff04afd 100644 --- a/d2warehouse/stash.py +++ b/d2warehouse/stash.py @@ -14,7 +14,7 @@ # # You should have received a copy of the GNU General Public License along with # Mercator. If not, see . -from bitarray import bitarray +from d2warehouse.item import Item class Stash: diff --git a/pyproject.toml b/pyproject.toml index 45206c2..3f02014 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,7 +14,7 @@ classifiers = [ "Environment :: Console", ] -requires-python = ">=3.9" +requires-python = ">=3.10" license = {text = "GPLv3 License"} dependencies = [ "bitarray",