diff options
-rw-r--r-- | docutils/docutils/parsers/rst/directives/misc.py | 11 | ||||
-rw-r--r-- | docutils/docutils/parsers/rst/directives/tables.py | 11 |
2 files changed, 5 insertions, 17 deletions
diff --git a/docutils/docutils/parsers/rst/directives/misc.py b/docutils/docutils/parsers/rst/directives/misc.py index 26446e5cc..10619dac5 100644 --- a/docutils/docutils/parsers/rst/directives/misc.py +++ b/docutils/docutils/parsers/rst/directives/misc.py @@ -9,10 +9,8 @@ __docformat__ = 'reStructuredText' from pathlib import Path import re import time -# from urllib.request import urlopen -# from urllib.error import URLError -# deferred to Raw.run() because import may fail due to broken SSL dependencies -# and it took about 0.15 seconds to load. Update: < 0.03s with Py3k. +from urllib.request import urlopen +from urllib.error import URLError from docutils import io, nodes, statemachine, utils from docutils.parsers.rst import Directive, convert_directive_function @@ -271,11 +269,6 @@ class Raw(Directive): attributes['source'] = path elif 'url' in self.options: source = self.options['url'] - # Do not import urllib at the top of the module because - # it may fail due to broken SSL dependencies, and it takes - # about 0.15 seconds to load. Update: < 0.03s with Py3k. - from urllib.request import urlopen - from urllib.error import URLError try: raw_text = urlopen(source).read() except (URLError, OSError) as error: diff --git a/docutils/docutils/parsers/rst/directives/tables.py b/docutils/docutils/parsers/rst/directives/tables.py index 8ba858a9a..328554da1 100644 --- a/docutils/docutils/parsers/rst/directives/tables.py +++ b/docutils/docutils/parsers/rst/directives/tables.py @@ -17,6 +17,8 @@ from docutils import io, nodes, statemachine, utils from docutils.utils import SystemMessagePropagation from docutils.parsers.rst import Directive from docutils.parsers.rst import directives +from urllib.request import urlopen +from urllib.error import URLError def align(argument): @@ -351,13 +353,6 @@ class CSVTable(Table): else: self.state.document.settings.record_dependencies.add(source) elif 'url' in self.options: - # CSV data is from a URL. - # Do not import urllib at the top of the module because - # it may fail due to broken SSL dependencies, and it takes - # about 0.15 seconds to load. Update: < 0.03s with Py3k. - from urllib.request import urlopen - from urllib.error import URLError - source = self.options['url'] try: with urlopen(source) as response: @@ -400,7 +395,7 @@ class CSVTable(Table): return s def parse_csv_data_into_rows(self, csv_data, dialect, source): - csv_reader = csv.reader([line + '\n' for line in csv_data], + csv_reader = csv.reader((line + '\n' for line in csv_data), dialect=dialect) rows = [] max_cols = 0 |