changelog in magic_mirror-0.1.1 vs changelog in magic_mirror-0.1.2

- old
+ new

@@ -3,13 +3,19 @@ future. - Test against port in use problem. - How do you tell the host gem to just 'listen for commands' and idle there? - (so the reverse usage of trtl) - possible do a .join() on the sinatra thread? + > Call @magic_mirror.gaze_into to start event machine, + create a defered faye client, + make a subscription with said client + then block with EM.run + When a message is published to the subscribed channel, ruby can + respond accordingly, with full access to the gem and ruby landscape... + but ppl shouldn't directly eval the strings coming in over httpPost... + - limitation: Can only have one rendering display at a time *per computer* > Solution: Clean up the output and make ports random - Bug: If faye server goes offline for a second, and misses commands, then comes back online, the command_cache variable will be out of sync with that of the server @@ -18,17 +24,59 @@ it performs a reset - Think of other popular uses for rendering... - secure by making servers listen only on localhost - - Hide the STDOUT from starting the servers and print the - address of the listening http server in a pretty manor that links + - I noticed some missing parts to the tree... + > Oh... right when you load the page, you'll get + [command_cache] - [changes to command_cache since page load innitated] + so a small gap in commands will exist... + SOLUTION - - Write wrapper for TkcOval, btw... + * Architecturally: add an index number to each message sent over faye + * Client-wise: Calculate + [Index of first faye message] - [length of the command cache] = [gap] + * request the gap from the server on receipt of first message from faye /gap?command_cache=95&first_faye=100 + + Currently: + - The tree example takes forever to draw + > Cache commands before sending through websockets: + cache websockets commands and wait 0.1 seconds between each + message sent... + ... it's also just a hell of a lot of data... + > Compress the command_cache: if the commands can be condensed so they + take up fewer characters, performance will improve dramatically. + * + * + + > Dynamically build the tree function in javascript and reduce the command + to 1 function definition plus an invocation... + + > What if command_cache SVG data instead of function calls? + + - The javascript chokes up... possibly because it's iterating over the command cache, + and also responding to the websocket requests at the same time? + + - Use webworker?? + + - Small discrepencies in bigish trtl lines in the tree example + + + - Hmmm.... why don't I steam the command_cache over websockets? + > The reason this is good is that it allows the client to get the data + in incriments and then deal with the data, and then wait for more. + This way the data never exceedes more than several kilobytes in memory... + + - EFFICIENTLY TRANSFER THE COMMAND_CACHE ARRAY: + * embedded in html + + * embedded in html, but split into chunks!!! after each chunk is finished and + processed/ deleted, the next chunk is gotten to until all the chunks are + deleted!!!!!!! !!!!!!!!!!!!!!!!!!!! Finished: ** 0.1.1 **