Re: Importing directly from string

Claude Paroz <[email protected]> Mon, 14 Feb 2022 17:35:02 +0100
Newsgroups gmane.comp.python.reportlab.user
Message-ID <[email protected]>
Le 14.02.22 à 17:28, Claude Paroz a écrit :
> Hello,
> 
> The attached patch import ascii_uppercase, ascii_lowercase directly from 
> the string module. It also fixes a test currently failing 
> (test_docs_build.ManualTestCase.test0).

Sorry, the patch was forgotten. Here it is.

Claude
-- 
www.2xlibre.net
0001-Import-directly-from-string.patch (text/x-patch, 3.5 KB)
From c2064df3f3e713c400c3eed0da41441ac5d48075 Mon Sep 17 00:00:00 2001
From: Claude Paroz <[email protected]>
Date: Mon, 14 Feb 2022 17:24:08 +0100
Subject: [PATCH] Import directly from string

---
 src/reportlab/graphics/barcode/code39.py | 3 +--
 src/reportlab/graphics/barcode/common.py | 3 +--
 src/reportlab/graphics/barcode/lto.py    | 3 +--
 src/reportlab/lib/utils.py               | 2 --
 tools/docco/t_parse.py                   | 3 +--
 5 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/src/reportlab/graphics/barcode/code39.py b/src/reportlab/graphics/barcode/code39.py
index 386c16f7..65fd99d4 100644
--- a/src/reportlab/graphics/barcode/code39.py
+++ b/src/reportlab/graphics/barcode/code39.py
@@ -33,7 +33,7 @@
 from reportlab.lib.units import inch
 from reportlab.lib.utils import asNative
 from reportlab.graphics.barcode.common import Barcode
-from string import digits as string_digits
+from string import ascii_uppercase, ascii_lowercase, digits as string_digits
 
 _patterns = {
     '0':    ("bsbSBsBsb", 0),       '1': ("BsbSbsbsB", 1),
@@ -60,7 +60,6 @@ _patterns = {
     '+':    ("bSbsbSbSb", 41),      '%': ("bsbSbSbSb", 42)
     }
 
-from reportlab.lib.utils import ascii_uppercase, ascii_lowercase
 _stdchrs = string_digits + ascii_uppercase + "-. $/+%"
 
 _extended = {
diff --git a/src/reportlab/graphics/barcode/common.py b/src/reportlab/graphics/barcode/common.py
index 91bdfc52..3d9655cd 100644
--- a/src/reportlab/graphics/barcode/common.py
+++ b/src/reportlab/graphics/barcode/common.py
@@ -32,8 +32,7 @@
 
 from reportlab.platypus.flowables import Flowable
 from reportlab.lib.units import inch
-from reportlab.lib.utils import ascii_uppercase, ascii_lowercase
-from string import digits as string_digits
+from string import ascii_lowercase, ascii_uppercase, digits as string_digits
 
 class Barcode(Flowable):
     """Abstract Base for barcodes. Includes implementations of
diff --git a/src/reportlab/graphics/barcode/lto.py b/src/reportlab/graphics/barcode/lto.py
index 4de040f1..2b4756f9 100644
--- a/src/reportlab/graphics/barcode/lto.py
+++ b/src/reportlab/graphics/barcode/lto.py
@@ -4,8 +4,7 @@
 from reportlab.graphics.barcode.code39 import Standard39
 from reportlab.lib import colors
 from reportlab.lib.units import cm
-from string import digits as string_digits
-from reportlab.lib.utils import ascii_uppercase
+from string import ascii_uppercase, digits as string_digits
 
 class BaseLTOLabel(Standard39) :
     """
diff --git a/src/reportlab/lib/utils.py b/src/reportlab/lib/utils.py
index c14e7a09..5e768691 100644
--- a/src/reportlab/lib/utils.py
+++ b/src/reportlab/lib/utils.py
@@ -113,8 +113,6 @@ def isNonPrimitiveInstance(x):
 def instantiated(v):
     return not isinstance(v,type)
 
-from string import ascii_letters, ascii_uppercase, ascii_lowercase
-
 from io import BytesIO, StringIO
 def getBytesIO(buf=None):
     '''unified StringIO instance interface'''
diff --git a/tools/docco/t_parse.py b/tools/docco/t_parse.py
index 9da69693..b81e7aae 100644
--- a/tools/docco/t_parse.py
+++ b/tools/docco/t_parse.py
@@ -80,7 +80,6 @@ Template directives:
 """
 
 import re, string
-from reportlab.lib.utils import ascii_letters
 
 #
 # template parsing
@@ -215,7 +214,7 @@ class Template:
 
 # some useful regular expressions
 USERNAMEREGEX = \
-  "["+ascii_letters+"]["+ascii_letters+string.digits+"_]*"
+  "["+string.ascii_letters+"]["+string.ascii_letters+string.digits+"_]*"
 STRINGLITREGEX = "'[^\n']*'"
 SIMPLEINTREGEX = "["+string.digits+"]+"
 id = re.compile(USERNAMEREGEX)
-- 
2.30.2