##// END OF EJS Templates
Cleanup
Jonathan Frederic -
Show More
@@ -23,8 +23,9 b' from io import TextIOWrapper, BytesIO'
23 23 # IPython imports
24 24 from IPython.nbconvert.utils.pandoc import pandoc
25 25 from IPython.nbconvert.utils.exceptions import ConversionException
26 from IPython.utils.process import find_cmd, FindCmdError, getoutput
26 from IPython.utils.process import get_output_error_code
27 27 from IPython.utils.py3compat import cast_bytes
28 from IPython.utils.version import check_version
28 29
29 30 #-----------------------------------------------------------------------------
30 31 # Functions
@@ -100,7 +101,7 b' def markdown2rst(source):'
100 101 return pandoc(source, 'markdown', 'rst')
101 102
102 103 def _verify_node(cmd):
103 """Verify that the node command exists and is atleast the minimum supported
104 """Verify that the node command exists and is at least the minimum supported
104 105 version of node.
105 106
106 107 Parameters
@@ -108,23 +109,13 b' def _verify_node(cmd):'
108 109 cmd : string
109 110 Node command to verify (i.e 'node')."""
110 111 try:
111 find_cmd(node_cmd)
112 except FindCmdError:
112 out, err, return_code = get_output_error_code([cmd, '--version'])
113 except OSError:
114 # Command not found
113 115 return False
114 else:
115 # Remove the version 'v' prefix from the output and strip whitespace.
116 version_str = getoutput(cmd + ' --version').replace('v', '').strip()
117 try:
118 # Make sure the node version is atleast 0.9.12
119 version_numbers = [int(x) for x in version_str.split('.')]
120 if version_numbers[0] > 0 or version_numbers[1] > 9 or (version_numbers[1] == 9 and version_numbers[2] >= 12):
121 return True
122 else:
123 return False
124 except:
125 return False
126
127 # prefer md2html via marked if node.js is available
116 return return_code == 0 and check_version(out.lstrip('v'), '0.9.12')
117
118 # prefer md2html via marked if node.js >= 0.9.12 is available
128 119 # node is called nodejs on debian, so try that first
129 120 node_cmd = 'nodejs'
130 121 if _verify_node(node_cmd):
General Comments 0
You need to be logged in to leave comments. Login now