Edgewall Software
Modify

Opened 14 years ago

Last modified 3 years ago

#2035 new enhancement

Changeset commenting

Reported by: polarfox@… Owned by:
Priority: high Milestone: next-major-releases
Component: version control/changeset view Version:
Severity: major Keywords: tracobject journaling comment
Cc: johannes_rudolph@…, a.a.vykhodtsev@…, dale.miller@…, tractickets@…, nicolas@…, interstellar.condition@…, viola@…, Ryan J Ollos, itamarost@…, mmitar@…, net147@…, tony@…, leho@… Branch:
Release Notes:
API Changes:

Description

Commenting on changesets would be great, it would substitute for code review tools.

Attachments (0)

Change History (42)

comment:1 by anonymous, 14 years ago

This would actually pave the way for analysis of percentage of reviewed code. An algorithm could try to correlate all latest lines of code in a file to reviews, and calculate how many were reviewed. I wish SCM systems could help here, because they already have some of that algorithm's bits when they re-create a given revision of a file based on changes preceding it.

comment:2 by Christian Boos, 14 years ago

Owner: changed from Jonas Borgström to Christian Boos
Severity: normalmajor
Status: newassigned

Yes, I made a similar proposal, for generalizing comments to all Trac objects (see TracObjectModelProposal, it's a bit dusty now, but I'll update it in the following weeks).

For the specific purpose of code review, I see the need for some more additions:

  • simpler linking to the filenames concerned by the changeset (see #124)
  • wiki syntax for linking to line numbers.
    As we will support the peg revision format (see #2011), why not use the # delimiter to refer to the line number? … or the : delimiter, for not introducing an incompatible change? (I'll open a new ticket for that feature, but we already have half of the features, i.e. the anchors to the lines, see #1798)
  • complement the blame feature with review annotations (see #629)

comment:3 by antranig@…, 14 years ago

I think the Object Model proposal sounds great. I am currently deciding between Confluence and Trac for a project I am working on, and a big win of Confluence is that it allows comments to be attached to arbitrary pages. Of course a big loss is its terrible UI model, so I am still undecided. I would like very much to be able to enable/disable blog-style comments on each page in Trac.

comment:4 by Emmanuel Blot, 14 years ago

Have a look at the AddComment macro: it's a useful tool to add comments to a wiki page. However, this does not relate much to the original subject of this ticket.

comment:5 by Christian Boos, 14 years ago

Status: assignednew

(changing the status, as I've not actually started to work on that yet)

comment:6 by Christian Boos, 14 years ago

Keywords: object added

comment:7 by Matthew Good, 14 years ago

#2520 has been marked as a duplicate of this ticket.

comment:8 by Christian Boos, 14 years ago

Keywords: tracobject added; object removed

comment:9 by Christian Boos, 13 years ago

Keywords: journaling added

See also TracDev/Proposals/Journaling.

In that perspective, comments would be stored in a separate comment table,

tidtypeidtextreplyto

And the replyto would refer to the tid of the "replied to" comment, if there's one.

comment:10 by Christian Boos, 13 years ago

Keywords: comment added
Milestone: 1.0

There's also the related idea expressed in #4279, which is being able to annotate any given page. That would be even more adapted for code reviews.

The Discussion tab would be more appropriate for general comments about the resource.

Now I wonder if the two ideas couldn't be combined: in case a general comment is referring to some particular location in the resource, there could be an indicator at that location which could link back to the specific comment.

comment:11 by Christian Boos, 13 years ago

#4313 was marked as duplicate, and actually illustrates quite nicely what I said above.

comment:12 by bill.mill@…, 13 years ago

Well, as the author of the above dupe (sorry), I'll just change my ticket to a vote for this feature. It would be killer!

(I just wanted it again today, which reminded me to head back here to check the status of my ticket :)

comment:13 by Christian Boos, 13 years ago

#5133 was closed as duplicate, and was also requesting the ability to annotate changesets for code review purpose.

comment:14 by az@…, 13 years ago

just to add another little bit of emphasis: this is one of the things i miss most with trac, since we're using the timeline to review each others changes constantly, and having to create tickets for commenting other changes is some cumbersome… :)

comment:15 by Christian Boos, 13 years ago

Milestone: 1.00.12
Priority: normalhigh

You convinced me ;-)

in reply to:  14 comment:16 by az@…, 13 years ago

Replying to az@zitc.de:

commenting other changes is some cumbersome… :)

that should have read "commenting other changesets is somewhat cumbersome", of course… :)

in reply to:  15 comment:17 by az@…, 13 years ago

Replying to cboos:

You convinced me ;-)

excellent, i'm very much looking forward to it! :)

comment:18 by Johannes Rudolph <johannes_rudolph@…>, 12 years ago

Cc: johannes_rudolph@… added

comment:19 by a.a.vykhodtsev@…, 11 years ago

Cc: a.a.vykhodtsev@… added

comment:22 by dale.miller@…, 11 years ago

Cc: dale.miller@… added

comment:23 by tractickets@…, 11 years ago

Cc: tractickets@… added

comment:24 by elecnix <nicolas@…>, 11 years ago

Cc: nicolas@… added

comment:25 by osimons, 11 years ago

#8092 closed as duplicate.

comment:26 by Christian Boos, 10 years ago

comment:27 by interstellar.condition@…, 10 years ago

#8771 closed as duplicate.

comment:28 by interstellar.condition@…, 10 years ago

Cc: interstellar.condition@… added

comment:29 by viola@…, 10 years ago

Cc: viola@… added

May I draw your attention to yet another hack addressing this issue? We are impressed by the simplicity by which this could be achieved via a plugin. The hack is not final and not feature-rich yet, but (release early;-) shows the idea.

comment:30 by viola@…, 10 years ago

Sorry, I should add the address: http://trac-hacks.org/wiki/CodeReviewPlugin

comment:31 by Christian Boos, 10 years ago

http://blog.gitorious.org/2009/11/06/awesome-code-review

Which makes me think that it would be nice if the changeset commenting logic could also apply to patches.

comment:32 by Ryan Ollos <ryano@…>, 10 years ago

Cc: ryano@… added

comment:33 by Christian Boos, 10 years ago

Another source of inspiration: http://www.reviewboard.org/screenshots/

comment:34 by Ryan Ollos <ryano@…>, 10 years ago

There are two other code review tools discussed on tho that seem to be of interest to users, trachacks:#2661 and trachacks:#5889.

I also recently came across GvnTrac. I wasn't previously aware of this project because there is not a stub page on tho for it. At present, there appear to be 3 codereview plugins that integrate with Trac: th:CodeReviewPlug, th:PeerReviewPlugin, and GvnTrac.

comment:35 by Ryan Ollos <ryano@…>, 10 years ago

Came across another code review tool for Trac and added a stub page to t-h.o: th:ExoWebCodeReviewPlugin. It was discussed in this StackOverflow thread.

comment:37 by Itamar Ostricher, 9 years ago

Cc: itamarost@… added

comment:38 by Mitar, 8 years ago

Cc: mmitar@… added

comment:39 by net147@…, 7 years ago

Cc: net147@… added

comment:40 by tony@…, 6 years ago

Cc: tony@… added

comment:41 by Ryan J Ollos, 6 years ago

Cc: Ryan J Ollos added; ryano@… removed

comment:42 by Peter Suter, 5 years ago

#11676 proposes a reusable comment module that could be used to implement changeset comments.

comment:43 by lkraav <leho@…>, 5 years ago

Cc: leho@… added

comment:44 by Ryan J Ollos, 4 years ago

Owner: Christian Boos removed

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The ticket will remain with no owner.
The ticket will be disowned. Next status will be 'new'.
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.