move lib to core, no more sys.path fucking @cybojenix

This commit is contained in:
Luke Rogers 2013-10-02 12:01:46 +13:00
parent ef48b81924
commit 7dc1daa69f
14 changed files with 911 additions and 4 deletions

30
util/execute.py Normal file
View file

@ -0,0 +1,30 @@
import http, web
def eval_py(code, paste_multiline=True):
attempts = 0
while True:
try:
output = http.get("http://eval.appspot.com/eval", statement=code).rstrip('\n')
# sometimes the API returns a blank string on first attempt, lets try again
# and make sure it is actually supposed to be a blank string. ._.
if output == "":
output = http.get("http://eval.appspot.com/eval", statement=code).rstrip('\n')
break
except http.HTTPError:
if attempts > 2:
return "Failed to execute code."
else:
attempts += 1
continue
if "Traceback (most recent call last):" in output:
status = "Python error: "
else:
status = "Code executed sucessfully: "
if "\n" in output and paste_multiline:
return status + web.haste(output)
else:
return output