sympy/sympy-live — pull request #47 by madnutter56 (2012-01-08 21:07:57+00:00)
Title: Sympy Live: Errors are not displayed on Mobile Shell

http://www.google-melange.com/gci/task/view/google/gci2011/7230277

Here's what I've gone for:

- The code I found to do with timing in the sympy test runner wouldn't work for the purpose I needed it for, as this was simply starting the timer, running some code, stopping the timer (couldn't find any reference to the alarm function). We, however needed it to be able to interrupt half way through and as the code isn't 'moving on' it would never get to the if statement or whatever to check the timeout.

- I stopped and thought for a while that it would be much better to do this in JS on the client itself. So what I've done is check if it is an iOS device (as I don't know/cannot find out what version before 5.0 they changed the 60 second behaviour) and if it is, set the timeout on the AJAX request to /evaluate to 58 seconds. Otherwise, set the timeout to 61 seconds to allow the python timeout server-side to take effect normally on desktop machines (note this will still work in the desktop version forced onto mobile devices via the setting).

- I've also added the documentation into the about dropdown (which now scrolls on desktop), and added an about dropdown to the mobile shell.

Sorry it's taken me 4 days to get this done, I'm a bit snowed under with revision for 5 exams coming up in the next 2 weeks.

Testing Instance up here (this was before I rebased but you'll get the idea)
http://sympy-live-testing-madnutter56.appspot.com