1
0
mirror of https://github.com/python-escpos/python-escpos synced 2025-09-13 09:09:58 +00:00

start removal of six and improve type annotation (#607)

* fix unfinished Python2 -> 3 translation
* remove some six usage
* annotate
* fix regression in Six removal
* mypy: self.enf is always defined
* fix return type of cups.py
* Usb idVendor/idProduct are integers
* self.default_args is always defined
* tweak usb_args, PEP589 is better
* lp.py: reassure mypy
* correctly cast call to CashDrawerError()
* update CUPS test
* add missing close() method in metaclass
* document a bug in typeshed
* query_status() returns bytes as seen in constants.py
* remove more SIX usage
* test examples too
* remove type comment where type is annotated
* adapt behavior of cups printer to match other implementations

---------

Co-authored-by: Patrick Kanzler <dev@pkanzler.de>
Co-authored-by: Patrick Kanzler <4189642+patkan@users.noreply.github.com>
This commit is contained in:
Alexandre Detiste
2023-12-16 22:02:24 +01:00
committed by GitHub
parent 06bdb56937
commit 66a2e78e16
31 changed files with 245 additions and 237 deletions

View File

@@ -23,7 +23,7 @@ from .constants import CODEPAGE_CHANGE
from .exceptions import Error
class Encoder(object):
class Encoder:
"""Take available code spaces and pick the right one for a given character.
Note: To determine the code page, it needs to do the conversion, and
@@ -202,7 +202,7 @@ def split_writable_text(encoder, text, encoding):
return text, None
class MagicEncode(object):
class MagicEncode:
"""Help switching to the right code page.
A helper that helps us to automatically switch to the right
@@ -292,7 +292,7 @@ class MagicEncode(object):
def write_with_encoding(self, encoding, text):
"""Write the text and inject necessary codepage switches."""
if text is not None and type(text) is not six.text_type:
if text is not None and type(text) is not str:
raise Error(
f"The supplied text has to be unicode, but is of type {type(text)}."
)