summaryrefslogtreecommitdiff
path: root/server
AgeCommit message (Collapse)Author
2015-10-14Use sandbox for testing Python programsTimotej Lazar
Use interpreter.py for running tests as well as interactive sessions. Signals are now sent with "sandbox <user> kill", so terminator is not needed anymore.
2015-10-13Use identifiers instead of names in get_statTimotej Lazar
Names have been removed from the database. This code will be updated when we decide what statistics to present to the user.
2015-10-13Store robot's address in settingsTimotej Lazar
2015-10-12Rename lang setting to gui_langTimotej Lazar
2015-10-12get basic user statisticsMarko Pušnik
2015-10-12Merge branch 'master' of ssh://212.235.189.51:22122/codeq-serverMarko Pušnik
2015-10-12attributes for profile pageMarko Pušnik
2015-10-12Remove unused server.problems.list_problemsTimotej Lazar
2015-10-12signup: +name +emailMarko Pušnik
2015-10-10Use a selector instead of polling Python interpreterTimotej Lazar
2015-10-08Reworked session handling.Aleš Smodiš
* All requests have a session ID, except for the initial create_session system messages. * User session can be in an authenticated or anonymous state. * In anonymous state it is not possible to perform user actions. * Logout has been implemented. * Sessions timeout and are cleared after a period of inactivity (1 hour). * Bugfixed the lang setting handling. * Renamed get_problem -> get_current_solution, return only the user's current solution, not the whole problem data.
2015-10-07Bugfix: make the as yet unimplemented meta protocol not generate errors on ↵Aleš Smodiš
the Python side.
2015-10-07Add a sandbox for Python interpreterTimotej Lazar
Switch to user "nobody" and set additional limits.
2015-10-06Test user's program before looking for hintsTimotej Lazar
2015-10-06Bugfix: revert to request.session.update_settings() in the Settings class.Aleš Smodiš
2015-10-06sign up, update last_loginMarko Pušnik
2015-10-06change passwordMarko Pušnik
2015-10-05Add logging to file to python server. Configure logfile paths from ↵Aleš Smodiš
environment variables CODEQ_SERVER_LOG and CODEQ_WEB_LOG.
2015-10-05Bugfix: correctly handle python-nodejs transport using bytes.Aleš Smodiš
2015-10-04Unification of language session implementations. Added load_problem and ↵Aleš Smodiš
end_problem actions so handlers get appropriately created and destroyed upon loading and unloading the problem solving screen.
2015-09-30Add RobotSessionTimotej Lazar
Currently it does nothing useful.
2015-09-29removed some debug output and actually enabled writing into the DBRobert Zorko
2015-09-29added support to save settings, currently only 'lang' will actually be ↵Robert Zorko
saved, since it is the only one already in the database
2015-09-29Merge branch 'master' of ssh://212.235.189.51:22122/codeq-serverRobert Zorko
2015-09-29added settings to the user session and the login function now also returns ↵Robert Zorko
those settings - currently only gui language is implemented. The create.sql script is updated for that change as well.
2015-09-29Add HintPopup and set hint_type on Hint* classesTimotej Lazar
2015-09-23Kill Python interpreter on excessive outputTimotej Lazar
2015-09-22Merge branch 'master' of ssh://212.235.189.51:22122/codeq-serverMartin
2015-09-22Fix an inconsequential typoTimotej Lazar
2015-09-22Oops, overzealous copy/pasteTimotej Lazar
2015-09-22Create the hint-list in individual test functionsTimotej Lazar
This will allow us to add more hints, for example "did you know?"-type information when the program is correct.
2015-09-22Add support for execing the user's Python programTimotej Lazar
2015-09-21Merge branch 'master' of ssh://212.235.189.51:22122/codeq-serverMartin
2015-09-21Changed testing in util.pyMartin
Changed output when timeout occurs in Python
2015-09-18Set problems path via CODEQ_PROBLEMS environment variable.Aleš Smodiš
2015-09-18added a parameter to the get problems python function, which accepts the ↵Robert Zorko
language (either 'prolog' or 'python')
2015-09-18Send the plan definition in get_problem_dataTimotej Lazar
2015-09-18Simplify exceptions returned by PythonSession.runTimotej Lazar
Don't include the first stack entry or the filename (which is <string>).
2015-09-16Implement async. comm. with Python interpreterTimotej Lazar
Creating, destroying and communicationg with the interpreter subprocess is now handled by a thread attached to PythonSession. Interpreter is sandboxed using libseccomp.
2015-09-15Add handlers for python_{push,pull} requestsTimotej Lazar
Will be reimplemented asynchronously.
2015-09-15Bugfix: invert the packet length comparison in the TCP packet decode loop.Aleš Smodiš
2015-09-15Removed WSGI parts. They've been supplanted with the node app and the TCP ↵Aleš Smodiš
communication with the node app.
2015-09-15Augmented the readme with apache directives for proxying websocket directives.Aleš Smodiš
2015-09-14Add SID to JSON object in UserSession.sendTimotej Lazar
2015-09-14Reimplemented communication with the client side.Aleš Smodiš
* Implemented a node web server supporting asynchronous websocket and long-polling communication with clients. * Implemented TCP communication between python middleware and node web server.
2015-09-11Pass a list of solved problems to Prolog hint/testTimotej Lazar
This replaces the session parameter that was passed before but not used. Especially in the hint functions it will be useful in some cases to handle user's current code, previous solutions, and the facts library separately.
2015-09-11Pass PythonSession.run to hint and test functionsTimotej Lazar
No other session stuff is needed (for now).
2015-09-11Use Hint classes in PythonSessionTimotej Lazar
2015-09-11s/hint_defs/hint_type/gTimotej Lazar
2015-09-10Remove unneeded importTimotej Lazar