Edgewall Software

Ticket #3002 (closed enhancement: fixed)

Opened 2 years ago

Last modified 19 months ago

Please use textfile type diff display for changed svn properties

Reported by: Russell Hind <rhind@…> Owned by: cboos
Priority: low Milestone: 0.11
Component: version control/changeset view Version: 0.9.4
Severity: normal Keywords: diff properties
Cc: rhind@…

Description

We typically have many externals set on some of our folders (say 10). Each of these are quite long URLs. When then lock them to revisions on a branch using -rXXX. If we then change the revision, trac does show that the properties have changed, but just shows the text before and after which for us just lists 20 URLs, but they aren't even on separate lines, which makes it virtually impossible to tell the difference.

Each property could be treated as a changed text file and use the standard diff display to show added/removed/changed lines which would be very helpful.

Attachments

prop_diffs_3002.patch (2.2 kB) - added by cboos 2 years ago.
Patch on r3116 implementing the suggested feature

Change History

Changed 2 years ago by Russell Hind <rhind@…>

An example we that just occured for me was:

Property svn:externals changed from 3rdParty/lib/bcb -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/bcb/6.4/lib 3rdParty/include/boost -r73 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/boost/1.32.0/include 3rdParty/lib/boost -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/boost/1.32.0/lib 3rdParty/include/nidaq -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/nidaq/6.9.3/include 3rdParty/lib/ldcn -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/ldcn/1.0.6.1/lib 3rdParty/include/VTK -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/VTK/4.2/include 3rdParty/lib/VTK -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/VTK/4.2/lib 3rdParty/lib/vcl -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/vcl/6.4 3rdParty/tools/subwcrev -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/subwcrev/1.2.x 3rdParty/tools/sed -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/sed/4.1.4 to 3rdParty/lib/bcb -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/bcb/6.4/lib 3rdParty/include/boost -r83 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/boost/1.32.0/include 3rdParty/lib/boost -r83 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/boost/1.32.0/lib 3rdParty/include/nidaq -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/nidaq/6.9.3/include 3rdParty/lib/ldcn -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/ldcn/1.0.6.1/lib 3rdParty/include/VTK -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/VTK/4.2/include 3rdParty/lib/VTK -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/VTK/4.2/lib 3rdParty/lib/vcl -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/vcl/6.4 3rdParty/tools/subwcrev -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/subwcrev/1.2.x 3rdParty/tools/sed -r60 http://ourserver.ourdomain.com/svn/eng-soft/3rdparty/sed/4.1.4

The actual formatting in the changeset view was slightly worse than appears here because the changeset uses the entire width of my browser so you sometimes get 2 URLs on a line.

But each external is new-line separated so a diff on this would easily show that only 2 externals were changed, the boost include/lib externals changed from -r60 to -r83.

Thanks

Russell

Changed 2 years ago by Russell Hind <rhind@…>

  • cc rhind@… added

Changed 2 years ago by cboos

Patch on r3116 implementing the suggested feature

Changed 2 years ago by cboos

  • keywords diff properties added
  • owner changed from jonas to cboos
  • status changed from new to assigned
  • priority changed from normal to low

Well, that was an interesting suggestion for a Sunday morning :)

Please try out attachment:prop_diffs_3002.patch

That's a bit of a hack, though, as a proper implementation would require some cleanup in the versioncontrol/diff.py and mimeview/patch.py code, in order to be able to directly generate the html diff view from the fromlines/tolines without having to go through an unified diff text...

Changed 2 years ago by Russell Hind <rhind@…>

Yes, some of are stuck at work with nothing better to do and have to wait for those extra long C++ compile times :)

Thanks for the patch. I have a couple of questions. We're running 0.9.4 under Apache/mod_python on Win32 here. Can I install a dev version along side 0.9.4 so I can try the patch on a test repo? I don't want to change our actual repos over from 0.9.4.

Is it as easy as downloading r3116 in to a separate directory in our Python23 directory and applying the patch then pointing the test repo to the new mod_python handler?

Thanks

Russell

Changed 2 years ago by Russell Hind <rhind@…>

Never mind, I'll set up apache and stuff on my development machine so it won't interfere with out actual repos and trac system.

Thanks

Russell

Changed 2 years ago by Russell Hind <rhind@…>

This looks good. I've only tested it with svn:externals set. The only issue is if that the changeset only contains an externals modification, then there is no 'diff options' box in the top right of the page.

Thanks

Russell

Changed 2 years ago by Russell Hind <rhind@…>

Other minor points: It only shows in 'inline' view even when I change to 'side by side' (I modified a file in the same changeset so I could get to the diff options) and the column headings above the line numbers just show 'old' and 'new' rather than links to the actual revisiosn. Doesn't really matter, just thought I'd mention it as the modified file shows r2 and r3 links and the headings.

Cheers

Russell

Changed 23 months ago by Russell Hind <rhind@…>

Hi, Any chance this could make in on the list for 0.11? I found the patch you posted more useful than the current view.

Thanks

Russell

Changed 22 months ago by cboos

  • milestone set to 0.11

Probably not in its current form, no ;)

But thanks for reminding me about that, there's certainly time to implement it proper for 0.11, together with #1601.

Changed 21 months ago by cboos

  • status changed from assigned to new

Changed 19 months ago by cboos

  • status changed from new to closed
  • resolution set to fixed

Implemented in r4655.

Add/Change #3002 (Please use textfile type diff display for changed svn properties)

Author



Change Properties
<Author field>
Action
as closed
Next status will be 'reopened'
 
Note: See TracTickets for help on using tickets.