On 2025/06/07 13:00:15 Branko Čibej wrote: > On 7. 6. 25 12:19, Yasuhito FUTATSUKI wrote: > > Hello, > > > > On 2025/06/07 18:09, Daniel Sahlberg wrote: > >> lör 7 juni 2025 kl. 10:46 skrev Michael Osipov<micha...@apache.org>: > >> > >>> Folks, > >>> > >>> using > >>> svn, Version 1.14.5 (r1922182) > >>> übersetzt am Apr 6 2025, um 14:15:38 auf amd64-portbld-freebsd13.4 > >>> > >>> with config > >>> $ cat /usr/local/etc/subversion/config > >>> [helpers] > >>> diff-cmd = colordiff > >>> > >>> Consider the following status: > >>>> $ svn st --ignore-externals Bastille/templates/ > >>> poudriere/options/general/ | grep -v X > >>>> M > >>> Bastille/templates/cafe-custom-uis/software-install-config-ports/var/db/ports > >>>> M > >>> Bastille/templates/indocs/software-install-config-ports/var/db/ports > >>>> D poudriere/options/general/devel_apache-ant > >>>> D poudriere/options/general/devel_protobuf-c > >>>> D poudriere/options/general/emulators_linux_base-c7 > >>>> D poudriere/options/general/emulators_linux_base-rl9 > >>>> D poudriere/options/general/security_py-gssapi > >>> Properties and content have been modified. colordiff should now colorize > >>> output for all items. > >>> Running "svn diff Bastille/templates/ poudriere/options/general/" does no > >>> colorize diff on properties. See > >>> https://people.freebsd.org/~michaelo/subversion/svn-propdiff-nocolor.png > >>> > >>> Let me know what you think, > >> Is colordiff this program: > >> https://www.colordiff.org > >> > >> In that case you should probably work with them to improve their parsing, I > >> don’t think there is anything we can do on our side since it isn’t > >> Subversion colouring the output. > > The problem is that property diff never use external diff program. > > > > with dummy diff program bin/show_args.sh: > > [[[ > > #!/bin/sh > > n=0 > > while [ $n -le $# ] ; do > > echo \$$n = \'`eval 'echo $'${n}`\' > > n=$((${n}+1)) > > done > > ]]] > > > > sample result of content diff: > > [[[ > > $ svn diff -c 2236 --diff-cmd=bin/show_args.shfile:///var/db/svn/sysadmin/ > > Index: vendor/FreeBSD/releng/14.0/etc/periodic/daily/480.leapfile-ntpd > > =================================================================== > > $0 = 'bin/show_args.sh' > > $1 = '-u' > > $2 = '-L' > > $3 = 'vendor/FreeBSD/releng/14.0/etc/periodic/daily/480.leapfile-ntpd > > (revision 2235)' > > $4 = '-L' > > $5 = 'vendor/FreeBSD/releng/14.0/etc/periodic/daily/480.leapfile-ntpd > > (revision 2236)' > > $6 = '/tmp/svn-TANZb0' > > $7 = '/tmp/svn-LMvZZl' > > ]]] > > > > sample result of property diff: > > [[[ > > $ svn diff -c 2237 --diff-cmd=bin/show_args.shfile:///var/db/svn/sysadmin/ > > Index: vendor/FreeBSD/releng/14.0/root > > =================================================================== > > --- vendor/FreeBSD/releng/14.0/root (revision 2236) > > +++ vendor/FreeBSD/releng/14.0/root (revision 2237) > > > > Property changes on: vendor/FreeBSD/releng/14.0/root > > ___________________________________________________________________ > > Added:svn:ignore > > ## -0,0 +1,10 ## > > +.bundle > > +.cargo > > +.config > > +.history > > +.lesshst > > +.local > > +.lsof_* > > +.mysql_history > > +.pgsql_history > > +.python_history > > ]]] > > That's not so much a problem than the simple fact that there are not > many external tools that know how to handle Subversion's properties. > Colordiff doesn't for example. So if we somehow sent properties to an > external diff, just for starters, the diffs wouldn't be formatted correctly.
colordiff(1) works when invoke separately, This is good enough: https://people.freebsd.org/~michaelo/subversion/svn-propdiff-nocolor2.png I concur that this is a bug in Subversion by not invoking the internal diff command. Michael