From 91c8d16838b39c7726f6c0a0fb333f5ba38d2494 Mon Sep 17 00:00:00 2001 From: Rogan Creswick Date: Wed, 2 Jan 2013 15:31:43 -0800 Subject: updated addon-sdk to 1.12 --- .../python-lib/markdown/etree_loader.py | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 tools/addon-sdk-1.12/python-lib/markdown/etree_loader.py (limited to 'tools/addon-sdk-1.12/python-lib/markdown/etree_loader.py') diff --git a/tools/addon-sdk-1.12/python-lib/markdown/etree_loader.py b/tools/addon-sdk-1.12/python-lib/markdown/etree_loader.py new file mode 100644 index 0000000..e2599b2 --- /dev/null +++ b/tools/addon-sdk-1.12/python-lib/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 + -- cgit v1.2.3