FileColumn errors on windows
March 27th, 2007
For awhile now all the windows users in my development team have been getting some command line vomit when rake ran. No tests ever failed, but we were all suspicious. None of our Mac or Linux developers were experiencing this. Below is some sample output from my rake:
175 tests, 306 assertions, 0 failures, 0 errors c:/ruby/bin/ruby -Ilib;test "c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb" "test/integration/f rom_yaml_test.rb" "test/integration/gallery_from_yaml_test.rb" "test/integration/presentation_from_yaml_test.rb" "test/i ntegration/weborb_test.rb" "test/integration/xml_cache_test.rb" Loaded suite c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader Started ....c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" E.c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi "" c:/ruby/lib/ruby/gems/1.8/gems/rake-0.7.1/lib/rake/rake_test_loader.rb: No such file or directory - file -bi ""After a little research and some help from Jeremy at freedomlinux, we figured out that it was a FileColumn problem. It happens when FileColumn trys to find the content type of the asset. This the function from file_column.rb around line 290:
def get_content_type(fallback=nil)
if @options[:file_exec]
begin
content_type = `#{@options[:file_exec]} -bi "#{@local_file_path}"`.chomp
content_type = fallback unless $?.success?
content_type.gsub!(/;.+$/,"") if content_type
content_type
rescue
fallback
end
else
fallback
end
end
It is trying to call the unix file command with the -bi option. Of course windows doesn't have file, but cygwin does. So the fix was easy: install cygwin and then add cygwin's bin directory to your PATH variable. And then you're golden! Next I just need to figure out all the weirdness with YAML on windows.
PS
Jeremy at freedomlinux would like to inform everybody that he is now ready to start excepting contracts from the Dept. of Defense. Quite the patriot he is.
Leave a Reply