#73: SVN misclassifying .t files as binary, preventing 'svn blame'
---------------------+------------------------------------------------------
 Reporter:  jkeenan  |       Owner:            
     Type:  bug      |      Status:  new       
 Priority:  normal   |   Milestone:            
Component:  none     |     Version:  trunk     
 Severity:  medium   |    Keywords:  SVN binary
     Lang:           |       Patch:            
 Platform:           |  
---------------------+------------------------------------------------------
 Tonight I tried to get a line-by-line SVN revision history on a '.t' file,
 only to be told that SVN had to skip that file because it was a binary:


 {{{
 $ svn blame t/compilers/imcc/syn/macro.t
 Skipping binary file: 't/compilers/imcc/syn/macro.t'
 }}}

 I hypothesized that this was a problem with all files in the directory,
 but there are several that do 'svn blame' without incident.

 pmichaud hypothesized that it was the SVN property 'svn:mime-type' which
 was set to 'text/plain' and that there may be binary characters within the
 file.  I couldn't see any (but I'm not an expert with 'od'), but we set
 that property on lots of files.

 I investigated further.  This problem is widespread, at least among files
 with names ending in .t.


 {{{
 [li11-226:parrot] 654 $ fnsa ./t '*.t' | xargs svn blame | grep Skipping
 Skipping binary file: 't/pmc/signal.t'
 Skipping binary file: 't/pmc/boolean.t'
 Skipping binary file: 't/pmc/timer.t'
 Skipping binary file: 't/pmc/globals.t'
 Skipping binary file: 't/pmc/fixedstringarray.t'
 Skipping binary file: 't/pmc/eval.t'
 Skipping binary file: 't/pmc/sub.t'
 Skipping binary file: 't/pmc/iterator.t'
 Skipping binary file: 't/pmc/integer.t'
 Skipping binary file: 't/pmc/fixedpmcarray.t'
 Skipping binary file: 't/pmc/complex.t'
 Skipping binary file: 't/pmc/fixedintegerarray.t'
 Skipping binary file: 't/pmc/array.t'
 Skipping binary file: 't/pmc/resizablepmcarray.t'
 Skipping binary file: 't/pmc/hash.t'
 Skipping binary file: 't/pmc/threads.t'
 Skipping binary file: 't/pmc/namespace.t'
 Skipping binary file: 't/pmc/resizableintegerarray.t'
 Skipping binary file: 't/pmc/sarray.t'
 Skipping binary file: 't/pmc/resizablefloatarray.t'
 Skipping binary file: 't/pmc/coroutine.t'
 Skipping binary file: 't/pmc/pmc.t'
 Skipping binary file: 't/pmc/prop.t'
 Skipping binary file: 't/pmc/freeze.t'
 Skipping binary file: 't/pmc/intlist.t'
 Skipping binary file: 't/pmc/orderedhash.t'
 Skipping binary file: 't/pmc/key.t'
 Skipping binary file: 't/pmc/multiarray.t'
 Skipping binary file: 't/pmc/fixedbooleanarray.t'
 Skipping binary file: 't/pmc/undef.t'
 Skipping binary file: 't/pmc/float.t'
 Skipping binary file: 't/pmc/string.t'
 Skipping binary file: 't/pmc/io.t'
 Skipping binary file: 't/pmc/sys.t'
 Skipping binary file: 't/pmc/resizablebooleanarray.t'
 Skipping binary file: 't/pmc/object-meths.t'
 Skipping binary file: 't/pmc/fixedfloatarray.t'
 Skipping binary file: 't/pmc/env.t'
 Skipping binary file: 't/pmc/objects.t'
 Skipping binary file: 't/pmc/exception.t'
 Skipping binary file: 't/pmc/managedstruct.t'
 Skipping binary file: 't/pmc/multisub.t'
 Skipping binary file: 't/pmc/resizablestringarray.t'
 Skipping binary file: 't/pmc/tqueue.t'
 Skipping binary file: 't/pmc/nci.t'
 Skipping binary file: 't/pmc/delegate.t'
 Skipping binary file: 't/pmc/bigint.t'
 Skipping binary file: 't/pmc/ref.t'
 Skipping binary file: 't/stress/gc.t'
 Skipping binary file: 't/src/basic.t'
 Skipping binary file: 't/src/extend.t'
 Skipping binary file: 't/src/exit.t'
 Skipping binary file: 't/benchmark/benchmarks.t'
 Skipping binary file: 't/dynpmc/gdbmhash.t'
 Skipping binary file: 't/dynpmc/foo.t'
 Skipping binary file: 't/dynpmc/rational.t'
 Skipping binary file: 't/compilers/imcc/imcpasm/cfg.t'
 Skipping binary file: 't/compilers/imcc/imcpasm/opt0.t'
 Skipping binary file: 't/compilers/imcc/imcpasm/opt1.t'
 Skipping binary file: 't/compilers/imcc/imcpasm/opt2.t'
 Skipping binary file: 't/compilers/imcc/imcpasm/optc.t'
 Skipping binary file: 't/compilers/imcc/imcpasm/pcc.t'
 Skipping binary file: 't/compilers/imcc/imcpasm/sub.t'
 Skipping binary file: 't/compilers/imcc/syn/op.t'
 Skipping binary file: 't/compilers/imcc/syn/file.t'
 Skipping binary file: 't/compilers/imcc/syn/pod.t'
 Skipping binary file: 't/compilers/imcc/syn/bsr.t'
 Skipping binary file: 't/compilers/imcc/syn/const.t'
 Skipping binary file: 't/compilers/imcc/syn/eval.t'
 Skipping binary file: 't/compilers/imcc/syn/tail.t'
 Skipping binary file: 't/compilers/imcc/syn/objects.t'
 Skipping binary file: 't/compilers/imcc/syn/clash.t'
 Skipping binary file: 't/compilers/imcc/syn/keyed.t'
 Skipping binary file: 't/compilers/imcc/syn/macro.t'
 Skipping binary file: 't/compilers/imcc/syn/labels.t'
 Skipping binary file: 't/compilers/imcc/syn/pcc.t'
 Skipping binary file: 't/compilers/imcc/syn/scope.t'
 Skipping binary file: 't/compilers/imcc/reg/spill.t'
 Skipping binary file: 't/compilers/pge/pge.t'
 Skipping binary file: 't/perl/Parrot_IO.t'
 Skipping binary file: 't/perl/Parrot_Docs.t'
 Skipping binary file: 't/perl/Parrot_Distribution.t'
 Skipping binary file: 't/library/streams.t'
 Skipping binary file: 't/library/md5.t'
 Skipping binary file: 't/library/sort.t'
 Skipping binary file: 't/library/pcre.t'
 Skipping binary file: 't/library/dumper.t'
 Skipping binary file: 't/library/parrotlib.t'
 Skipping binary file: 't/library/yaml_parser_syck.t'
 Skipping binary file: 't/distro/manifest.t'
 Skipping binary file: 't/native_pbc/integer.t'
 Skipping binary file: 't/native_pbc/string.t'
 Skipping binary file: 't/native_pbc/number.t'
 Skipping binary file: 't/codingstd/c_cppcomments.t'
 Skipping binary file: 't/op/00ff-dos.t'
 Skipping binary file: 't/op/spawnw.t'
 Skipping binary file: 't/op/globals.t'
 Skipping binary file: 't/op/jit.t'
 Skipping binary file: 't/op/trans.t'
 Skipping binary file: 't/op/gc.t'
 Skipping binary file: 't/op/string_cs.t'
 Skipping binary file: 't/op/integer.t'
 Skipping binary file: 't/op/comp.t'
 Skipping binary file: 't/op/interp.t'
 Skipping binary file: 't/op/jitn.t'
 Skipping binary file: 't/op/lexicals.t'
 Skipping binary file: 't/op/string.t'
 Skipping binary file: 't/op/calling.t'
 Skipping binary file: 't/op/basic.t'
 Skipping binary file: 't/op/64bit.t'
 Skipping binary file: 't/op/ifunless.t'
 Skipping binary file: 't/op/number.t'
 Skipping binary file: 't/op/hacks.t'
 Skipping binary file: 't/op/stringu.t'
 Skipping binary file: 't/op/literal.t'
 Skipping binary file: 't/op/time.t'
 Skipping binary file: 't/op/debuginfo.t'
 Skipping binary file: 't/op/bitwise.t'
 Skipping binary file: 't/op/00ff-unix.t'
 Skipping binary file: 't/op/arithmetics.t'

 }}}

 Does anyone have any idea what is wrong?

 Thank you very much.
 kid51

-- 
Ticket URL: <https://trac.parrot.org/parrot/ticket/73>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets

Reply via email to