Ticket #104 (new enhancement)

Opened 8 years ago

Last modified 4 years ago

Wiki style reverts

Reported by: ejewel@… Owned by: armin
Priority: normal Milestone:
Component: Gobby Version:
Severity: normal Keywords:
Cc: Launchpad Bug:

Description

In the HowToTryOutGobby page it mentions that before a server obby is implemented "there should be some privileges implemented first". An alternative to this approach would be to treat the documents like a wiki page, i.e. anyone can edit it but its easy to see who made what changes and revert out those changes. I'm thinking of an interface similar to the drop down menu on the undo button in MS Word. For those who aren't familiar, the drop down contains a history of all of the previous changes that have been made and then selects everything above and including the item as your drag your mouse over them.

  • Insert text "printf( "Debug: %i\n", lard );"
  • Delete text "/* Gnarly comment */"

Change History

Changed 8 years ago by armin

Well, there actually is a server obby (called sobby). "There should be some privileges implemented first" before we would run one somewhere publicly available.

Currently it is easy to see who made what (user colours...), but to undo (some?) of them is quite non-trivial and is the reason why #39 has not yet been implemented and most likely even will not for 0.3.0 :/

Changed 4 years ago by armin

Hm, so is this about being able to revert to a previous "global" version of the document or to revert specific user's changes invidually? At least the latter is likely to be very (computationally) expensive for more than a few operations. The problem of the former is that there is no such thing as a "global" version because there is no total order of operations - the order can be different for different users. But it can still be possible to reset everything to an earlier version of the "local" history of course.

Both cases should be quite simple as long as the revision to revert to is still contained in the request log for every user (which is 2048 operations currently if I remember correctly) but otherwise it gets more complicated protocol-wise because one would have to re-transmit the document content.

Note: See TracTickets for help on using tickets.