[Python-checkins] bpo-37760: Avoid cluttering work tree with downloaded Unicode files. (GH-15128)

Benjamin Peterson webhook-mailer at python.org
Wed Aug 14 21:19:00 EDT 2019


https://github.com/python/cpython/commit/3e4498d35c34aeaf4a9c3d57509b0d3277048ac6
commit: 3e4498d35c34aeaf4a9c3d57509b0d3277048ac6
branch: master
author: Greg Price <gnprice at gmail.com>
committer: Benjamin Peterson <benjamin at python.org>
date: 2019-08-14T18:18:53-07:00
summary:

bpo-37760: Avoid cluttering work tree with downloaded Unicode files. (GH-15128)

files:
M .gitignore
M Tools/unicode/makeunicodedata.py

diff --git a/.gitignore b/.gitignore
index 9445ef1e2c52..5f1ba0b92ceb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -74,6 +74,7 @@ PCbuild/arm32/
 PCbuild/arm64/
 PCbuild/obj/
 PCbuild/win32/
+Tools/unicode/data/
 .purify
 __pycache__
 autom4te.cache
diff --git a/Tools/unicode/makeunicodedata.py b/Tools/unicode/makeunicodedata.py
index cc2b2981ef5b..464a4ebf7722 100644
--- a/Tools/unicode/makeunicodedata.py
+++ b/Tools/unicode/makeunicodedata.py
@@ -887,15 +887,18 @@ class Difference(Exception):pass
                         normalization_changes))
 
 
+DATA_DIR = os.path.join('Tools', 'unicode', 'data')
+
 def open_data(template, version):
-    local = template % ('-'+version,)
+    local = os.path.join(DATA_DIR, template % ('-'+version,))
     if not os.path.exists(local):
         import urllib.request
         if version == '3.2.0':
             # irregular url structure
-            url = 'http://www.unicode.org/Public/3.2-Update/' + local
+            url = ('http://www.unicode.org/Public/3.2-Update/'+template) % ('-'+version,)
         else:
             url = ('http://www.unicode.org/Public/%s/ucd/'+template) % (version, '')
+        os.makedirs(DATA_DIR, exist_ok=True)
         urllib.request.urlretrieve(url, filename=local)
     if local.endswith('.txt'):
         return open(local, encoding='utf-8')



More information about the Python-checkins mailing list