Back to the main page.

Bug 2261 - does svn autosync working fine?

Status CLOSED FIXED
Reported 2013-08-22 22:30:00 +0200
Modified 2014-02-24 10:56:40 +0100
Product: FieldTrip
Component: core
Version: unspecified
Hardware: PC
Operating System: Linux
Importance: P3 normal
Assigned to: Robert Oostenveld
URL:
Tags:
Depends on:
Blocks:
See also:

Diego Lozano Soldevilla - 2013-08-22 22:30:26 +0200

Using ft_specest_hilbert I realize that the ft_preproc_bandpassfilter function inside of the fieldtrip/specest/private folder was quite old (‹r7123) in comparison with the ft_preproc_bandpassfilter inside fieldtrip/preproc. See revision http://code.google.com/p/fieldtrip/source/detail?r=8413 Could somebody check is the svn autosync feature is working fine please? Might be other functions are affected


Jörn M. Horschig - 2013-08-23 09:13:37 +0200

Hi Diego, you can click ont he file in Google Code and see on the right hand side all properties: http://code.google.com/p/fieldtrip/source/browse/trunk/specest/private/ft_preproc_bandpassfilter.m?spec=svn8413&r=8413 There is no autosync property set. In contrast, see here: http://code.google.com/p/fieldtrip/source/browse/trunk/external/stats/nansum.mexw64?spec=svn8416&r=8416 soo I think it would be wise to reset the specest function and enable autosync maybe also check other specest/private functions


Diego Lozano Soldevilla - 2013-08-23 09:55:36 +0200

(In reply to comment #1) Thanks Jorn, changed and commited: bash-4.1$ svn propset autosync true ft_preproc_bandpassfilter.m property 'autosync' set on 'ft_preproc_bandpassfilter.m' bash-4.1$ svn commit ft_preproc_bandpassfilter.m -m 'bugfix 2261 - enabling autosync ' Sending ft_preproc_bandpassfilter.m Do you know a way to show the autosync property of a file without having to click in google code in each file of /specest/private? I know how to find recursively a file to see if it's also outside /specest/private but I'd be nice to get access to properties info find . -print | grep -i ft_getopt.m Thanks in advance!


Jörn M. Horschig - 2013-08-23 10:06:59 +0200

I know svn propget autosync private/*.m but that shows only all files that *do* have autosync set, not those without having it set. not sure about the smartest way to test this...


Jörn M. Horschig - 2013-08-23 10:10:13 +0200

btw, don't forget to also set autosync to the file in preproc/ and make sure that the syncing does not work the wrong way the first time (i.e. take the older one)


Diego Lozano Soldevilla - 2013-08-23 10:32:03 +0200

(In reply to comment #4) Thanks again Jorn: your tick added at the wiki ;) http://fieldtrip.fcdonders.nl/development/svn?&#how_to_maintain_two_copies_of_the_same_file


Eelke Spaak - 2013-09-18 14:31:26 +0200

tick added, now robert will verify


Robert Oostenveld - 2013-11-14 09:50:22 +0100

I created a script to check this ------ #!/bin/sh FILE1=`tempfile` FILE2=`tempfile` touch $FILE1 touch $FILE2 echo $FILE1 echo $FILE2 svn propget autosync `find . -name \*.m` | cut -d ' ' -f 1 > $FILE1 for LINE in `cat $FILE1` ; do basename $LINE >> $FILE2 done for FUNCTION in `cat $FILE2 | sort | uniq` ; do unset FIRSTOCCURENCE for OCCURENCE in `grep $FUNCTION $FILE1` ; do if [ -z "$FIRSTOCCURENCE" ] ; then FIRSTOCCURENCE=$OCCURENCE fi diff -q $FIRSTOCCURENCE $OCCURENCE done done --------- Right now (rev 8775) it prints out a long list of files that differ :-( Checking the first one, it seems that the difference is only in the SVN Id line: mac001> diff external/dipoli/ama2vol.m fileio/private/ama2vol.m 26c26 < % $Id: ama2vol.m 5036 2011-12-14 10:47:52Z roboos $ --- > % $Id$ which is not surprising. However, the 2nd one is incorrect, since the svn id is apparently not set at all. This is addressed at http://fieldtrip.fcdonders.nl/development/svn#keeping_the_svn_repository_tidy and I will tidy it up before checking the autosync again.


Robert Oostenveld - 2013-11-14 10:05:34 +0100

(In reply to comment #7) I tidied up the svn properties. Committed revision 8776.


Robert Oostenveld - 2013-11-14 10:10:34 +0100

(In reply to comment #8) if I do mac001> diff -I '\$Id.*\$' external/dipoli/ama2vol.m fileio/private/ama2vol.m then the Id line is ignored. The list of inconsistent file is then reduced to Files fileio/private/ft_datatype.m and fileio/private/ft_datatype_mvar.m differ Files fileio/private/ft_datatype_vol.m and plotting/private/ft_datatype_volume.m differ Files plotting/private/scale.m and private/globalrescale.m differ


Robert Oostenveld - 2013-11-14 10:42:30 +0100

(In reply to comment #9) However, these are not meant to be the same files, so actually there is no problem. The script was incorrectly comparing them because they match partially with grep. I changed the script into ------------- FILE1=`tempfile` FILE2=`tempfile` touch $FILE1 touch $FILE2 echo $FILE1 echo $FILE2 find `pwd` -name \*.m\* -not -iwholename '*.svn*' -print | xargs svn propget autosync | cut -d ' ' -f 1 > $FILE1 for LINE in `cat $FILE1` ; do basename $LINE >> $FILE2 done for FUNCTION in `cat $FILE2 | sort | uniq` ; do unset FIRSTOCCURENCE # there should be a / in front of the filename and the file should be at the end of the line for OCCURENCE in `grep \/$FUNCTION$ $FILE1` ; do if [ -z "$FIRSTOCCURENCE" ] ; then FIRSTOCCURENCE=$OCCURENCE fi diff -I '\$Id.*\$' -q $FIRSTOCCURENCE $OCCURENCE done done ------------- With this I was not able to detect any mismatch.


Robert Oostenveld - 2014-02-24 10:56:40 +0100

I closed several bugs at once that all have been resolved for some time. If you disagree, please reopen.