Massive property update - PLEASE READ

Ryan Schmidt ryandesign at macports.org
Fri Jan 26 00:05:16 PST 2007


On Jan 25, 2007, at 20:54, Kevin Ballard wrote:

> At this very moment I am committing a bunch of changes to  
> properties. Unfortunately it's going to come across as... wow, 39  
> commits (assuming there are changes in every category, which there  
> probably are). That's because I'm committing once per category  
> because of issues I had trying to commit the entire thing at once.
>
> In any case, here's the change log:
>
> Massive update to svn properties on files:
> All patchfiles have svn:eol-style removed.
> All files that are not in fact able to be executed have  
> svn:executable removed
> All binary files have svn:eol-style removed (and are probably corrupt)
> All binary files have svn:mime-type set to application/octet-stream
> All files which are not patchfiles or binary files have svn:eol- 
> style set to native
> All Portfiles have svn:eol-style set to native and svn:executable  
> removed
>
> In the future, please try and use the right properties. svn:eol- 
> style native belongs on files which are line-ending-agnostic, like  
> text files, shell scripts, tcl scripts, and other source files.  
> Patchfiles must *NOT* have svn:eol-style set, as line endings are  
> important in them. Additionally, be careful about svn:executable -  
> there were some patch files with that set. Only set it if your file  
> really needs to be executable. There are still a bunch of  
> svn:executable shell scripts, but not all of them need it (most of  
> them, for example, are passed as an argument to bash). I didn't  
> bother removing it from scripts, but I did remove it from the  
> patchfiles.
>
> Oh, and when adding patches, please don't create a folder structure  
> like you can find in lang/gwydion-dylan/files. If you need to  
> specify path, do something like patch-dir_dir2_dir3_filename. All  
> patchfiles should be at the top level of the files/ folder.
>
> Oh, and this is a biggie. There are a handful of binary files in  
> there that had svn:eol-style set. They are probably corrupt. I  
> looked at 2 of them (both pngs) and those 2 definitely were  
> corrupt, but I haven't checked any of the others. I don't know if  
> there's any possibility of recovering these files, it depends on if  
> the svn history has a copy of them before svn:eol-style was  
> applied. When adding a binary file to the repository, make sure it  
> does *NOT* have svn:eol-style set, and please do set svn:mime-type  
> to application/octet-stream (or you can use a more specific mime  
> type if you know it).
>
> Speaking of mime types, when adding non-binary files I would  
> recommend against setting the mime type. If you must,  go with text/ 
> plain. Setting something like e.g. application/x-tcl on a Portfile  
> will probably prevent svn from display linewise diffs (svn is  
> documented as treating all non-text/* mime types as binary, with  
> known exceptions, but it doesn't list what the exceptions are).

If these are the rules (and I think I agree that they should be),  
then the repository needs a pre-commit hook that will reject any  
commits that do not obey these rules. Would you like me to write one?





More information about the macports-dev mailing list