summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormilde <milde@929543f6-e4f2-0310-98a6-ba3bd3dd1d04>2013-04-18 07:36:22 +0000
committermilde <milde@929543f6-e4f2-0310-98a6-ba3bd3dd1d04>2013-04-18 07:36:22 +0000
commitbbe2301aff249a1091f2319cfe9eebbdbab37798 (patch)
tree6f8fbbcee198010d083a4231f2da24f64b7ee5fb
parent0fb16cadb043097d21c6a882e7ff5cb21e88bf8f (diff)
downloaddocutils-bbe2301aff249a1091f2319cfe9eebbdbab37798.tar.gz
Fix [ 228 ], part II.
Try local import of docutils components (reader, writer, parser, language module) before global search. git-svn-id: http://svn.code.sf.net/p/docutils/code/trunk/docutils@7648 929543f6-e4f2-0310-98a6-ba3bd3dd1d04
-rw-r--r--HISTORY.txt7
-rw-r--r--docutils/languages/__init__.py4
-rw-r--r--docutils/parsers/rst/languages/__init__.py4
-rw-r--r--docutils/readers/__init__.py4
-rw-r--r--docutils/writers/__init__.py4
5 files changed, 10 insertions, 13 deletions
diff --git a/HISTORY.txt b/HISTORY.txt
index 1e70a2269..17f639217 100644
--- a/HISTORY.txt
+++ b/HISTORY.txt
@@ -20,16 +20,13 @@ Changes Since 0.10
- Apply [ 2714873 ] Fix for the overwritting of document attributes.
- Support embedded aliases within hyperlink references.
+ - Fix [ 228 ] try local import of docutils components (reader, writer, parser,
+ language module) before global search.
* docutils/nodes.py
- Fix [ 3601607 ] node.__repr__() must return `str` instance.
-* docutils/parsers/rst/__init__.py
-
- - Fix [ 228 ] search docutils components (reader, writer, parser)
- first locally then globally.
-
* docutils/parsers/rst/directives/__init__.py
- Fix [ 3606028 ] ``assert`` is skipped with ``python -O``.
diff --git a/docutils/languages/__init__.py b/docutils/languages/__init__.py
index 47d896851..b22747d33 100644
--- a/docutils/languages/__init__.py
+++ b/docutils/languages/__init__.py
@@ -31,10 +31,10 @@ def get_language(language_code, reporter=None):
if tag in _languages:
return _languages[tag]
try:
- module = __import__(tag, globals(), locals(), level=0)
+ module = __import__(tag, globals(), locals(), level=1)
except ImportError:
try:
- module = __import__(tag, globals(), locals(), level=1)
+ module = __import__(tag, globals(), locals(), level=0)
except ImportError:
continue
_languages[tag] = module
diff --git a/docutils/parsers/rst/languages/__init__.py b/docutils/parsers/rst/languages/__init__.py
index c52989a4d..e1985afe4 100644
--- a/docutils/parsers/rst/languages/__init__.py
+++ b/docutils/parsers/rst/languages/__init__.py
@@ -26,10 +26,10 @@ def get_language(language_code):
if tag in _languages:
return _languages[tag]
try:
- module = __import__(tag, globals(), locals(), level=0)
+ module = __import__(tag, globals(), locals(), level=1)
except ImportError:
try:
- module = __import__(tag, globals(), locals(), level=1)
+ module = __import__(tag, globals(), locals(), level=0)
except ImportError:
continue
_languages[tag] = module
diff --git a/docutils/readers/__init__.py b/docutils/readers/__init__.py
index c2e4ce6c1..4702e1a3f 100644
--- a/docutils/readers/__init__.py
+++ b/docutils/readers/__init__.py
@@ -107,7 +107,7 @@ def get_reader_class(reader_name):
if reader_name in _reader_aliases:
reader_name = _reader_aliases[reader_name]
try:
- module = __import__(reader_name, globals(), locals(), level=0)
- except ImportError:
module = __import__(reader_name, globals(), locals(), level=1)
+ except ImportError:
+ module = __import__(reader_name, globals(), locals(), level=0)
return module.Reader
diff --git a/docutils/writers/__init__.py b/docutils/writers/__init__.py
index 5a7a943ce..52f3fa900 100644
--- a/docutils/writers/__init__.py
+++ b/docutils/writers/__init__.py
@@ -134,7 +134,7 @@ def get_writer_class(writer_name):
if writer_name in _writer_aliases:
writer_name = _writer_aliases[writer_name]
try:
- module = __import__(writer_name, globals(), locals(), level=0)
- except ImportError:
module = __import__(writer_name, globals(), locals(), level=1)
+ except ImportError:
+ module = __import__(writer_name, globals(), locals(), level=0)
return module.Writer