- Completely rewritten Stomp Library - Message Processor and Stomp Client adjusted to comply to OTP design principles - Implemented Erlang supervisor and Erlang application - New Makefile and scripts to compile and install nicely - Now uses sha-1 from Erlang's builtin crypto library - Settings moved out of include file and into the Erlang application script - Created generic and Arch Linux start script
- The RPC Server, the OT algorithm and parts of the data model have been ported to Erlang/OTP, a functional programming language for concurrent, distributed systems. - Also some small fixes have been applied to the existing RPC server and data model. - Note: Currently no proper start script for linux servers is provided, the Erlang port is still in testing stage, though it should be fully functional.
- Fixes for django-registration - Removed debugging print in stomp_client - Gadget list now retrieved via manager connection - Renamed events to comply with the desktop client onInsertText -> onInsertedText onDeleteText -> onDeletedText onInsertElement -> onInsertedElement onDeleteElement -> onDeletedElement - Delete box for Gadgets now only displayed on editing - Cursor placement on editing fixed on firefox and others - Shift+Enter shortcut (finishes Blip editing) - Statistics for RPC-Server - Unicode problems fixed (also switched to simplejson) - Gadget wrapper script URL now configurable on the http query - Problem with same URL of hosted gadgets fixed (now the first one is taken)
Restructured: - Moved pygowave_server html templates into app directory - Recreated localization files - settings.py replaced by two templates; for development and production use - pygowave_client now stores cached files outside of its app directory; PyCow translated files put into "shipped" folder - controller.js: ParticipantProvider class introduced for better handling of Participant objects Cleaned up: - Frontpage text now more serious :) - Notice for development mode or production mode added - Google Analytics tracking now configurable - Setup scripts now just installs the project's apps - Cleaned the settings files New features: - Multiple Blips now possible (one dimension; child Blips not yet implemented) - Contributors and time of last modification shown - Blip controls (Edit, Done, Delete) - Draft feature for Blips And also: - Fixed issues with navigation bar translation - Gadget support now optional (depends on availability of lxml) - Adjustments to the protocol have been done: Every message bundle now contains a timestamp and the contributor ID; the ACK message contains a "newblips" field to assign valid Blip IDs to newly created Blips - Added "Change password" to settings page - Removed browser compatibility list - Included orbited configuration file
- Connection keys are now generated via uuid - Methods for creating new Wavelets via client protocol added - Some client model methods backported from desktop client - Implemented error messages (removed TODOs) - Implemented manager messages: allows monitoring of Wavelets which are not opened - Implemented login messages: authentication via STOMP protocol now possible - Moved WAVELET_ADD_PARTICIPANT and WAVELET_REMOVE_SELF into OPERATION_MESSAGE_BUNDLE, modified model and controller for this
- Fixed bug on duplicate Gadget titles, you now can change the title or overwrite the Gadget, if it previously belonged to you - A Gadget title can now be entered before uploading, reading it from the Gadget header is now optional - Revised rc-scripts for Arch Linux - Added code for gadgets.flash enabling the Flash feature in Gadgets
- The twisted/STOMP-based RPC server can now be used directly without a seperate message broker - If you switch django's database engine to sqlite you would only need to start PyGoWave's web and rpc process to get it running (setup script coming soon)
RPC Server: - Restructured RPC server code (split into modules) - There are two flavors now: the legacy carrot/AMQP-based server and the new twisted/STOMP-based server - RabbitMQ is still needed; a pure twisted STOMP server will be implemented in near future so a ready-to-go PyGoWave server can be set up in minutes Ping feature: - The client now periodically sends a Ping to server in order to check the connection on the client side and to cleanup closed connections on the server side - The latency can be seen in the debug window; note that a Ping is only sent, if no interactions are taken Note for upgraders: You may need to drop the table "pygowave_server_participantconn" and rebuild it using "python manage.py syncdb", because a field was added.
- Created pygowave.wsgi script for apache. - Settings do now reflect a root-installation (site is reached at / not at /pygowave anymore). - Created pygowave.tac, a twistd application script, which runs PyGoWave's Django backend via twisted.wsgi and also integrates Orbited under one process. Some workarounds were neccessary. Next step is "twisting" the RPC script. - Added some missing .gitignore files.
…for Opera; all in all v0.3 is ready for public testing, setup and migration will be tomorrow.
…implemented Gadget deletion; reactivated mouse-over tooltips in "All Gadgets"
… RPC class (not yet implemented)
… statusbar; window resizing now handeled
…ome more testing & bugfixes needed; fixed nasty linebreak problem; added rudimentary checksumming; added some error messages for the editor; added development status page; gadget support still missing
…periments with placeholders for empty lines
…g participants and leaving the wave was reimplemented. The client code was split up into smaller modules and is now handeled via a view function that does translation (PyCow), compressing (gzip) and caching. I have to rewrite parts of the Blip editor for cross-browser compatibility and reimplement adding Gadgets.
…f bit shifting throughout the project