diff options
author | Jean-Baptiste Queru <jbq@google.com> | 2011-02-04 14:12:08 -0800 |
---|---|---|
committer | Jean-Baptiste Queru <jbq@google.com> | 2011-02-04 14:12:08 -0800 |
commit | 6516b99bb74dfb7187a08f7090bf7ca22a006f15 (patch) | |
tree | 2cda04a3eee460c97f0411722bce3e9d9e54663d /markdown/etree_loader.py | |
parent | e46e2414e0d5f0405da714c6531c176643aed09c (diff) | |
download | markdown-6516b99bb74dfb7187a08f7090bf7ca22a006f15.tar.gz |
Import python-markdown
This is from git://gitorious.org/python-markdown/mainline.git
at tag 2.0.3 (commit 067d88bc41c7924c9087b724ff5247235243ce6b)
Change-Id: I5091438ce3243b87a099b8a75dd6307921966e76
Diffstat (limited to 'markdown/etree_loader.py')
-rw-r--r-- | markdown/etree_loader.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/markdown/etree_loader.py b/markdown/etree_loader.py new file mode 100644 index 0000000..e2599b2 --- /dev/null +++ b/markdown/etree_loader.py @@ -0,0 +1,33 @@ + +from markdown import message, CRITICAL +import sys + +## Import +def importETree(): + """Import the best implementation of ElementTree, return a module object.""" + etree_in_c = None + try: # Is it Python 2.5+ with C implemenation of ElementTree installed? + import xml.etree.cElementTree as etree_in_c + except ImportError: + try: # Is it Python 2.5+ with Python implementation of ElementTree? + import xml.etree.ElementTree as etree + except ImportError: + try: # An earlier version of Python with cElementTree installed? + import cElementTree as etree_in_c + except ImportError: + try: # An earlier version of Python with Python ElementTree? + import elementtree.ElementTree as etree + except ImportError: + message(CRITICAL, "Failed to import ElementTree") + sys.exit(1) + if etree_in_c and etree_in_c.VERSION < "1.0": + message(CRITICAL, "For cElementTree version 1.0 or higher is required.") + sys.exit(1) + elif etree_in_c : + return etree_in_c + elif etree.VERSION < "1.1": + message(CRITICAL, "For ElementTree version 1.1 or higher is required") + sys.exit(1) + else : + return etree + |