Details

    • Type: New Feature New Feature
    • Status: Open Open
    • Priority: Minor Minor
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Model
    • Labels:
      None
    • keywords:
      DBImprovement
    • Similar issues:
      XWIKI-11841Allow specifying "latest" and "previous" pseudoversions to the /deleteversions/ and /rollback/ actions
      XWIKI-501Wiki Doodle

      Description

      Right now, each change in the document creates a new version.

      The save and continue action, future AJAX improvements of the editor, collaborative tools (wiki doodle or collaborative editing) with frequent postbacks, and other actions will cause the documents to have very many final versions, when all these actions create versions with minor changes which shouldn't be notified (via RSS) or displayed, since this is work in progress.

      Pseudoversions are temporar versions of a document being edited, and can be seen as short-lived versioning branches, resulting in a one official version when the user finishes editing the document.

      A chain of pseudoversions is tied to a user, meaning that by default the user's changes are saved as pseudoversions in a private branch. When the user finishes editing the page, either by clicking "save" or returning to "view", the last pseudoversion is saved as a full version, and the branch is deleted.

        Issue Links

          Activity

          Hide
          Vincent Massol added a comment -

          Sergiu, could you please edit the description to explain what "pseudoversions" are? Thanks.

          Show
          Vincent Massol added a comment - Sergiu, could you please edit the description to explain what "pseudoversions" are? Thanks.
          Hide
          jeremi Joslin added a comment -

          that could be great.

          Show
          jeremi Joslin added a comment - that could be great.
          Hide
          Ludovic Dubost added a comment -

          Yes ! This is a great feature..
          A good question is going to be how to implement this. I believe just an XML field in the document table should allow this.

          You could also image that the document is really save so that it is the last one, but that subsequent save would remove the previous versioning made so that there are not tones of different versions. Maybe we need both.

          Show
          Ludovic Dubost added a comment - Yes ! This is a great feature.. A good question is going to be how to implement this. I believe just an XML field in the document table should allow this. You could also image that the document is really save so that it is the last one, but that subsequent save would remove the previous versioning made so that there are not tones of different versions. Maybe we need both.
          Hide
          Jérôme Delacroix added a comment -

          Maybe another way would be to implement the notion of "minor edit" to xwiki. When saving, a user could check a "minor edit" box, such as his edit does not appear in WhatsNew, by default, unless to check a "show minor edits" box in WhatsNew.

          The way MediaWiki works.

          What do you think ?

          Show
          Jérôme Delacroix added a comment - Maybe another way would be to implement the notion of "minor edit" to xwiki. When saving, a user could check a "minor edit" box, such as his edit does not appear in WhatsNew, by default, unless to check a "show minor edits" box in WhatsNew. The way MediaWiki works. What do you think ?
          Hide
          Artem Melentev added a comment -

          2Jérôme Delacroix: see XWIKI-1447

          Show
          Artem Melentev added a comment - 2Jérôme Delacroix: see XWIKI-1447
          Hide
          Vincent Massol added a comment -

          Note: We really need to be able to support lots of revisions in a document and we need to make XWiki scalable WRT this (especially exports/imports).

          Now here's an idea that would solve some of the mentioned use cases:

          • Have a special internal user that represents the System. Let's call it "System"
          • Whenever a change is done by the system then it's done under the "System" user.
          • When displaying changes we can have options to filter out changes done by the System (be in the Activity Stream, RSS feed, Watchlist email, etc)

          All that said we still need to be able to collapse multiple revisions into one; not only for frequent system changes but also for example for realtime editing use cases where several users edit the same document and the diffs are sent frequently. Another use case is autosave.

          Show
          Vincent Massol added a comment - Note: We really need to be able to support lots of revisions in a document and we need to make XWiki scalable WRT this (especially exports/imports). Now here's an idea that would solve some of the mentioned use cases: Have a special internal user that represents the System. Let's call it "System" Whenever a change is done by the system then it's done under the "System" user. When displaying changes we can have options to filter out changes done by the System (be in the Activity Stream, RSS feed, Watchlist email, etc) All that said we still need to be able to collapse multiple revisions into one; not only for frequent system changes but also for example for realtime editing use cases where several users edit the same document and the diffs are sent frequently. Another use case is autosave.

            People

            • Assignee:
              Unassigned
              Reporter:
              Sergiu Dumitriu
            • Votes:
              6 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Date of First Response: