Edgewall Software
Modify

Opened 14 years ago

Last modified 7 years ago

#5821 new enhancement

Wiki blame support

Reported by: Tim Hatch Owned by:
Priority: low Milestone: next-major-releases
Component: wiki system Version: devel
Severity: normal Keywords: blame annotate
Cc: a.a.vykhodtsev@…, dkg@…, Jun Omae Branch:
Release Notes:
API Changes:
Internal Changes:

Description

One feature we never got implemented into the blame branch from 2006 was blame support for wiki pages. I now have a straw-man implementation for review. Please give this patch a try on your 0.11-dev install and specifically let me know:

  • Does it produce correct blames on your pages?
  • Is it fast enough?
  • Should there be a new permission for annotations? some meta tags to disallow robots?
  • Should there be something more like an IBlameAnnotator with callbacks for rev links, or is this best handled through the existing IHTMLPreviewAnnotator? I could see a lot of possibility for reuse if we eventually have versioned tickets and vc backends that don't support blames natively.

Attachments (1)

wiki-blame-r5892.diff (12.8 KB ) - added by Tim Hatch 14 years ago.

Download all attachments as: .zip

Change History (12)

by Tim Hatch, 14 years ago

Attachment: wiki-blame-r5892.diff added

comment:1 by Christian Boos, 14 years ago

Keywords: blame annotate added
Milestone: 0.11.1

Glad to see you've resumed work on that!

  • correct blame - hm, difficult question, maybe even out of scope ;-) If needed, the blame algorithm could always be fixed/improved later on, let's focus on the integration of what we have now.
  • fast enough - seems to be. On a medium-sized page with 130 revisions, the rendering speed of normal vs. annotate is quite the same. On a pathologically big page with 50 revisions, the slow down is acceptable (comparable to what we have for versioncontrol annotate).
  • new permission? no, I don't think so. meta tags? yes, the same as for versioncontrol annotate
  • IBlameAnnotator - I'd prefer generalizing the BlameAnnotator from browser.py and make it work on other versioned resources (would be a 0.12 topic)

comment:2 by Alec Thomas, 14 years ago

From an IRC discussion:

thatch: some way to navigate through the page history would be good i think
and it'd be nice if the version links had title="author + comment" or similar
which are all minor nits really

<thatch> you say "navigate", like a prev/next link up top, or something like "re-annotate before this rev" in the left column?

prev/next links, but maintaining the annotation view
also, i'd ditch the other links like "start page", "index", etc. similar to how it works when you're browsing the page history

comment:3 by Christian Boos, 14 years ago

Tim, was it task on purpose? I'd rather see this as being an enhancement.

comment:4 by Tim Hatch, 14 years ago

Status: newassigned
Type: taskenhancement

Alright, enhancement it is. I'm working on this in source:/sandbox/wiki-blame to take care of the additional suggestions in this ticket.

comment:5 by Christian Boos, 14 years ago

Where's the WikiBlame page? :-)

comment:6 by Christian Boos, 14 years ago

Milestone: 0.11.10.12

in reply to:  5 comment:7 by Tim Hatch, 14 years ago

Replying to cboos:

Where's the WikiBlame page? :-)

Try TracDev/Branches/WikiBlame as of today.

comment:8 by a.a.vykhodtsev@…, 13 years ago

Cc: a.a.vykhodtsev@… added

comment:9 by Christian Boos, 11 years ago

Owner: Tim Hatch removed
Priority: normallow
Status: assignednew

Should be done via #1132.

comment:10 by dkg@…, 8 years ago

Cc: dkg@… added

I'm interested in seeing this happen, whether it's done via #1132 or some other mechanism.

comment:11 by Jun Omae, 7 years ago

Cc: Jun Omae added

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.