Edgewall Software
Modify

Opened 16 years ago

Last modified 7 months ago

#7276 new defect

wiki page versions start with 1, but Initial Version links to 0

Reported by: Eli Carter Owned by:
Priority: normal Milestone: next-stable-1.6.x
Component: general Version: 0.11-stable
Severity: normal Keywords: diff
Cc: Branch:
Release Notes:
API Changes:
Internal Changes:

Description

In the heading of http://trac.edgewall.org/wiki/EliCarter?action=diff&version=1 , the words "Initial Version" link to http://trac.edgewall.org/wiki/EliCarter?version=0 which gives a Trac error saying No version "0" for Wiki page "EliCarter".

This also occurs for newly created pages.

Attachments (0)

Change History (13)

comment:1 by Christian Boos, 16 years ago

Keywords: diff added

Well, the "Initial Version" is actually the universal "null" version, i.e. no content at all. Of course there should be no link in that case. This has to be handled in a more sensible way, and then we can support #4887 as well.

in reply to:  1 ; comment:2 by Eli Carter, 16 years ago

Replying to cboos:

Well, the "Initial Version" is actually the universal "null" version, i.e. no content at all. Of course there should be no link in that case. This has to be handled in a more sensible way, and then we can support #4887 as well.

Hmm. That's inconsistent with how tickets are versioned. For instance, http://trac.edgewall.org/ticket/4895?action=diff&version=1 has a 'Initial Version' link to http://trac.edgewall.org/ticket/4895?version=0 and that link does not yield an error. That said, I think a version of 0 indicating "before existence" and a version of 1 indicating the initial version would be unsurprising for our users.

If we want version=0 to be "does not exist", then I think we need to make the ticket version numbers work the same way. But I don't think that people will expect the "initial version" of something to be "before it was created".

comment:3 by Christian Boos, 16 years ago

Milestone: 0.11.10.11.2

comment:4 by AdrianFritz, 13 years ago

#8734 looks like related

in reply to:  2 comment:5 by Carsten Klein <carsten.klein@…>, 13 years ago

Replying to ecarter:

Hmm. That's inconsistent with how tickets are versioned. For instance, http://trac.edgewall.org/ticket/4895?action=diff&version=1 has a 'Initial Version' link to http://trac.edgewall.org/ticket/4895?version=0 and that link does not yield an error. That said, I think a version of 0 indicating "before existence" and a version of 1 indicating the initial version would be unsurprising for our users.

I agree. For Wiki pages the initial version should be that when the page was first created.

in reply to:  description ; comment:6 by Carsten Klein <carsten.klein@…>, 13 years ago

Replying to ecarter:

In the heading of http://trac.edgewall.org/wiki/EliCarter?action=diff&version=1 , the words "Initial Version" link to http://trac.edgewall.org/wiki/EliCarter?version=0 which gives a Trac error saying No version "0" for Wiki page "EliCarter".

This also occurs for newly created pages.

On t.e.o the link to "initial" was replaced by "v1".

Now, when entering the URL http://trac.edgewall.org/wiki/EliCarter?version=0, Trac lets you create the same page twice, as I does not realize that it already exists.

This might be related to the issue discussed in comment:2

in reply to:  6 comment:7 by Christian Boos, 10 years ago

Replying to Carsten Klein <carsten.klein@…>:

Now, when entering the URL http://trac.edgewall.org/wiki/EliCarter?version=0, Trac lets you create the same page twice, as I does not realize that it already exists.

It's not really that the page will be created twice, you'll just get to edit the page and will be able to save a new version. The only problem is a possible confusion if you really think you're about to create a page. That certainly won't be the case if you come from such a diff page and you follow the link to ?version=0.

But the same thing could happen in the case of concurrent page creation:

  1. User A follows a SomePage? link, lands on the page creation form
  2. User B does the same
  3. User A press "Create this page", goes to the editor

Now at this point we have 2 scenarios depending on what happens next:

  1. User B press "Create this page", goes to the editor
    1. User A saves → version 1
    2. User B saves → conflict detection triggers, all is fine as B is asked to merge or restart; similar situation with the sequence b., a.
  1. Use A saves → version 1
    1. User B now press "Create this page" (no page template selected), goes to the editor
      • now B sees the content for version 1 and the version info box hints about "Change information for future version 2"; B will possibly be a little surprised but will quickly realize that someone else has created the page just before him
    2. alternatively, User B press "Create this page" with a page template selected, goes to the editor
      • here B sees the content of the page template and the only hint that he's about to replace all the content written by A in version 1 is the "Change information for future version 2" hint, clearly easily missed. (this was the scenario I came across in ticket:8734#comment:6)

Of course, starting with ?version=0 is wrong in the first place, we shouldn't create links like that.

I propose that we change the phrasing when displaying the diff for the first version, from "Changes between Initial Version and Version 1 of EliCarter" to just "Changes for Version 1 of EliCarter", so we don't generate this ?version=0 anymore.

Also, for clearing the confusion that could happen in scenario 2. presented above, we should have a warning in the editor when we're coming from the page creation dialog and we end up not editing version 1 (something like "Someone already created that page before you and you're now editing version N").

comment:8 by Ryan J Ollos, 10 years ago

#11527 reports some of the same issues.

comment:9 by Ryan J Ollos, 9 years ago

Milestone: next-minor-0.12.xnext-stable-1.0.x

comment:10 by Ryan J Ollos, 9 years ago

Owner: Jonas Borgström removed

comment:11 by Ryan J Ollos, 7 years ago

Milestone: next-stable-1.0.xnext-stable-1.2.x

Moved ticket assigned to next-stable-1.0.x since maintenance of 1.0.x is coming to a close. Please move the ticket back if it's critical to fix on 1.0.x.

comment:12 by Ryan J Ollos, 4 years ago

Milestone: next-stable-1.2.xnext-stable-1.4.x

comment:13 by Ryan J Ollos, 7 months ago

Milestone: next-stable-1.4.xnext-stable-1.6.x

Milestone renamed

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The ticket will remain with no owner.
The ticket will be disowned.
as The resolution will be set. Next status will be 'closed'.
The owner will be changed from (none) to anonymous. Next status will be 'assigned'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.