Created a follow up with a Jira issue (also with a better reproduction scenario): http://jira.codehaus.org/browse/JRUBY-4927
On Thu, Jul 8, 2010 at 15:14, Antoine Toulme <[email protected]>wrote: > OK, I found a way to reproduce it! > > path = '/tmp/somewhere' > FileUtils.mkpath path > Dir.chdir path > > 1.upto(4) do |i| > File.open("src/file#{i}", "w") {|f| f.write "file#{i} raw"} > end > Dir['src/*'].each { |file| p (File.stat(file).mode & 0o755) ; > File.chmod(0o755, file) ; p (File.stat(file).mode & 0o755)} > > You will see chmod is not applied. > > On Thu, Jul 8, 2010 at 11:59, Antoine Toulme <[email protected]>wrote: > >> Yep, I tried that, and I tried checking File.chmod in a IRB session. >> >> I will try again by loading spec_helpers first. >> >> Sorry it's not an easy one. >> >> >> On Thu, Jul 8, 2010 at 01:14, Charles Oliver Nutter >> <[email protected]>wrote: >> >>> Can you dig a bit more for me? It doesn't appear to be File.chmod or >>> Dir[] plus File.chmod, in a simple test I wrote based on your failing >>> spec (latest OS X, Java 6): >>> >>> ~/projects/buildr ➔ touch foo.txt >>> >>> ~/projects/buildr ➔ ls -l foo.txt >>> -rw-r--r-- 1 headius staff 0 Jul 8 03:07 foo.txt >>> >>> ~/projects/buildr ➔ chmod 666 foo.txt >>> >>> ~/projects/buildr ➔ ls -l foo.txt >>> -rw-rw-rw- 1 headius staff 0 Jul 8 03:07 foo.txt >>> >>> ~/projects/buildr ➔ jruby -e "File.chmod(0o755, 'foo.txt')" >>> >>> ~/projects/buildr ➔ ls -l foo.txt >>> -rwxr-xr-x 1 headius staff 0 Jul 8 03:07 foo.txt >>> >>> ~/projects/buildr ➔ jruby -e "Dir['foo.txt'].each {|f| File.chmod(0o577, >>> f)}" >>> >>> ~/projects/buildr ➔ ls -l foo.txt >>> -r-xrwxrwx 1 headius staff 0 Jul 8 03:07 foo.txt >>> >>> - Charlie >>> >>> On Thu, Jul 8, 2010 at 2:06 AM, Antoine Toulme <[email protected]> >>> wrote: >>> > It looks like we have a jruby problem. >>> > Charles, can you check out the Buildr trunk and run: >>> > jruby -S spec spec/core/common_spec.rb -l 547 >>> > It looks like the chmod we make line 544 doesn't change anything. You >>> can >>> > change the line to this to see the problem: >>> > Dir['src/*'].each { |file| p (File.stat(file).mode & 0o755) ; >>> > File.chmod(0o755, file) ; p (File.stat(file).mode & 0o755)} >>> > I'll leave this one failing for now - I might mark it as pending for >>> jruby >>> > if we can't nail it down. >>> > I could not reproduce it at a smaller scale yet, irb works fine. >>> > The spec passes on MRI. >>> > >>> > ---------- Forwarded message ---------- >>> > From: Apache Hudson Server <[email protected]> >>> > Date: Wed, Jul 7, 2010 at 21:48 >>> > Subject: Build failed in Hudson: buildr-ci-build-jruby #49 >>> > To: [email protected] >>> > >>> > >>> > See >>> > < >>> http://hudson.zones.apache.org/hudson/job/buildr-ci-build-jruby/49/changes >>> > >>> > >>> > Changes: >>> > >>> > [toulmean] fix for BUILDR-144 Filter does not preserve file permissions >>> > >>> > [toulmean] adding a find requirement >>> > >>> > [toulmean] fix for BUILDR-203 >>> > >>> > [toulmean] fix for BUILDR-225 ArchiveTask#merge, not according to doc >>> > >>> > [toulmean] fix for invalid path, and requiring the file only once >>> > >>> > [toulmean] fix for BUILDR-256 and BUILDR-342 >>> > >>> > [toulmean] BUILDR-464 Improve the versioning of Buildr >>> > >>> > ------------------------------------------ >>> > [...truncated 1042 lines...] >>> > [31m at org.jruby.RubyProc.call(RubyProc.java:224) [0m >>> > [31m at org.jruby.RubyProc.call(RubyProc.java:203) [0m >>> > [31m at >>> > >>> org.jruby.RubyProc$i_method_0_0$RUBYFRAMEDINVOKER$call.call(org/jruby/RubyProc$i_method_0_0$RUBYFRAMEDINVOKER$call.gen:65535) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:198) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:194) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:186) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_45E7281A24ECFC208621AE20E6EEC4B8F2643874.block_0$RUBY$__block__(rake.rb:636) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_45E7281A24ECFC208621AE20E6EEC4B8F2643874BlockCallback$block_0$RUBY$__block__xx1.call(Unknown >>> > Source) [0m >>> > [31m at org.jruby.runtime.CompiledBlock.yield(CompiledBlock.java:115) >>> [0m >>> > [31m at org.jruby.runtime.CompiledBlock.yield(CompiledBlock.java:98) >>> [0m >>> > [31m at org.jruby.runtime.Block.yield(Block.java:194) [0m >>> > [31m at org.jruby.RubyArray.eachCommon(RubyArray.java:1630) [0m >>> > [31m at org.jruby.RubyArray.each(RubyArray.java:1637) [0m >>> > [31m at >>> > >>> org.jruby.RubyArray$i_method_0_0$RUBYFRAMEDINVOKER$each.call(org/jruby/RubyArray$i_method_0_0$RUBYFRAMEDINVOKER$each.gen:65535) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:115) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:132) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_45E7281A24ECFC208621AE20E6EEC4B8F2643874.__file__(rake.rb:631) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_45E7281A24ECFC208621AE20E6EEC4B8F2643874.__file__(rake.rb) >>> > [0m >>> > [31m at >>> > >>> org.jruby.ast.executable.AbstractScript.__file__(AbstractScript.java:39) [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.JittedMethod.call(JittedMethod.java:153) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:175) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:61) [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:309) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:148) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_F697F661EBDBEDF7A60DF799C8413BBB5438FA69.__file__(spec_helpers.rb:144) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_F697F661EBDBEDF7A60DF799C8413BBB5438FA69.__file__(spec_helpers.rb) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_F697F661EBDBEDF7A60DF799C8413BBB5438FA69.__file__(spec_helpers.rb) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.JittedMethod.call(JittedMethod.java:85) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.SuperCallSite.callBlock(SuperCallSite.java:62) >>> > [0m >>> > [31m at >>> > org.jruby.runtime.callsite.SuperCallSite.call(SuperCallSite.java:69) >>> [0m >>> > [31m at >>> > >>> ruby.jit.execute_5CFD10F39F924E8D246A5D255EFF3A17515393B5.rescue_1$RUBY$__rescue___1(test.rb:239) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_5CFD10F39F924E8D246A5D255EFF3A17515393B5.ensure_1$RUBY$__ensure___0(test.rb) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_5CFD10F39F924E8D246A5D255EFF3A17515393B5.__file__(test.rb:238) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_5CFD10F39F924E8D246A5D255EFF3A17515393B5.__file__(test.rb) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.JittedMethod.call(JittedMethod.java:153) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:309) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:148) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.invoke_with_call_chain_232F055B60314B7A3650CBD539BBE4DE8BF2805A.ensure_1$RUBY$__ensure___2(application.rb:636) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.invoke_with_call_chain_232F055B60314B7A3650CBD539BBE4DE8BF2805A.block_0$RUBY$__block__(application.rb:634) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.invoke_with_call_chain_232F055B60314B7A3650CBD539BBE4DE8BF2805ABlockCallback$block_0$RUBY$__block__xx1.call(Unknown >>> > Source) [0m >>> > [31m at org.jruby.runtime.CompiledBlock.yield(CompiledBlock.java:115) >>> [0m >>> > [31m at org.jruby.runtime.CompiledBlock.yield(CompiledBlock.java:98) >>> [0m >>> > [31m at >>> > org.jruby.runtime.CompiledBlock.yieldSpecific(CompiledBlock.java:78) >>> [0m >>> > [31m at org.jruby.runtime.Block.yieldSpecific(Block.java:99) [0m >>> > [31m at >>> > >>> ruby.jit.mon_synchronize_2B8A390F8E255A12A7AE14EEAC36AF0930A6A72B.ensure_1$RUBY$__ensure___0(monitor.rb:191) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.mon_synchronize_2B8A390F8E255A12A7AE14EEAC36AF0930A6A72B.__file__(monitor.rb:190) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.mon_synchronize_2B8A390F8E255A12A7AE14EEAC36AF0930A6A72B.__file__(monitor.rb) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.JittedMethod.call(JittedMethod.java:136) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:167) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.AliasMethod.call(AliasMethod.java:81) [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:115) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:132) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.invoke_with_call_chain_232F055B60314B7A3650CBD539BBE4DE8BF2805A.__file__(application.rb:622) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.invoke_with_call_chain_232F055B60314B7A3650CBD539BBE4DE8BF2805A.__file__(application.rb) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.JittedMethod.call(JittedMethod.java:187) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:329) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:188) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.invoke_0774AB8CA9E793D6570A56D0A86DBED841E0110C.__file__(application.rb:617) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.invoke_0774AB8CA9E793D6570A56D0A86DBED841E0110C.__file__(application.rb) >>> > [0m >>> > [31m at >>> > >>> org.jruby.ast.executable.AbstractScript.__file__(AbstractScript.java:35) [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.JittedMethod.call(JittedMethod.java:119) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:289) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:108) >>> > [0m >>> > [31m at org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:61) >>> [0m >>> > [31m at org.jruby.ast.RescueNode.executeBody(RescueNode.java:199) [0m >>> > [31m at >>> > >>> org.jruby.ast.RescueNode.interpretWithJavaExceptions(RescueNode.java:118) >>> > [0m >>> > [31m at org.jruby.ast.RescueNode.interpret(RescueNode.java:110) [0m >>> > [31m at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:104) [0m >>> > [31m at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [0m >>> > [31m at >>> > >>> org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:373) >>> > [0m >>> > [31m at >>> > org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:327) [0m >>> > [31m at >>> > org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:366) [0m >>> > [31m at org.jruby.runtime.Block.yieldNonArray(Block.java:205) [0m >>> > [31m at org.jruby.RubyObject.yieldUnder(RubyObject.java:507) [0m >>> > [31m at org.jruby.RubyObject.specificEval(RubyObject.java:331) [0m >>> > [31m at org.jruby.RubyObject.instance_eval(RubyObject.java:1285) [0m >>> > [31m at >>> > >>> org.jruby.RubyObject$i_method_multi$RUBYFRAMEDINVOKER$instance_eval.call(org/jruby/RubyObject$i_method_multi$RUBYFRAMEDINVOKER$instance_eval.gen:65535) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:299) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:117) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:122) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_78281F6B651828CF55A465052DFED95103123CA9.rescue_1$RUBY$__rescue___0(example_methods.rb:40) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_78281F6B651828CF55A465052DFED95103123CA9.block_0$RUBY$__block__(example_methods.rb:38) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_78281F6B651828CF55A465052DFED95103123CA9BlockCallback$block_0$RUBY$__block__xx1.call(Unknown >>> > Source) [0m >>> > [31m at org.jruby.runtime.CompiledBlock.yield(CompiledBlock.java:115) >>> [0m >>> > [31m at org.jruby.runtime.CompiledBlock.yield(CompiledBlock.java:98) >>> [0m >>> > [31m at >>> > org.jruby.runtime.CompiledBlock.yieldSpecific(CompiledBlock.java:78) >>> [0m >>> > [31m at org.jruby.runtime.Block.yieldSpecific(Block.java:99) [0m >>> > [31m at org.jruby.ext.Timeout.timeout(Timeout.java:74) [0m >>> > [31m at >>> > >>> org.jruby.ext.Timeout$s_method_multi$RUBYINVOKER$timeout.call(org/jruby/ext/Timeout$s_method_multi$RUBYINVOKER$timeout.gen:65535) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:155) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:172) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_78281F6B651828CF55A465052DFED95103123CA9.__file__(example_methods.rb:37) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.execute_78281F6B651828CF55A465052DFED95103123CA9.__file__(example_methods.rb) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.JittedMethod.call(JittedMethod.java:187) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:186) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.run_examples_F0FB904973C854AC66896BA089993CE85F267880.block_0$RUBY$__block__(example_group_methods.rb:214) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.run_examples_F0FB904973C854AC66896BA089993CE85F267880BlockCallback$block_0$RUBY$__block__xx1.call(Unknown >>> > Source) [0m >>> > [31m at org.jruby.runtime.CompiledBlock.yield(CompiledBlock.java:115) >>> [0m >>> > [31m at org.jruby.runtime.CompiledBlock.yield(CompiledBlock.java:98) >>> [0m >>> > [31m at org.jruby.runtime.Block.yield(Block.java:194) [0m >>> > [31m at org.jruby.RubyArray.eachCommon(RubyArray.java:1630) [0m >>> > [31m at org.jruby.RubyArray.each(RubyArray.java:1637) [0m >>> > [31m at >>> > >>> org.jruby.RubyArray$i_method_0_0$RUBYFRAMEDINVOKER$each.call(org/jruby/RubyArray$i_method_0_0$RUBYFRAMEDINVOKER$each.gen:65535) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:115) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:132) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.run_examples_F0FB904973C854AC66896BA089993CE85F267880.__file__(example_group_methods.rb:212) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.run_examples_F0FB904973C854AC66896BA089993CE85F267880.__file__(example_group_methods.rb) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.JittedMethod.call(JittedMethod.java:102) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:279) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:68) [0m >>> > [31m at >>> > >>> ruby.jit.run_0C18271FE7D5E1A83B4340B97DFF3794AB8BCCB9.__file__(example_group_methods.rb:103) >>> > [0m >>> > [31m at >>> > >>> ruby.jit.run_0C18271FE7D5E1A83B4340B97DFF3794AB8BCCB9.__file__(example_group_methods.rb) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.JittedMethod.call(JittedMethod.java:153) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:309) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:148) >>> > [0m >>> > [31m at >>> org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [0m >>> > [31m at >>> org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) [0m >>> > [31m at org.jruby.ast.LocalAsgnNode.interpret(LocalAsgnNode.java:123) >>> [0m >>> > [31m at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:104) [0m >>> > [31m at >>> > >>> org.jruby.runtime.InterpretedBlock.evalBlockBody(InterpretedBlock.java:373) >>> > [0m >>> > [31m at >>> > org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:346) [0m >>> > [31m at >>> > org.jruby.runtime.InterpretedBlock.yield(InterpretedBlock.java:303) [0m >>> > [31m at org.jruby.runtime.Block.yield(Block.java:194) [0m >>> > [31m at org.jruby.RubyArray.eachCommon(RubyArray.java:1630) [0m >>> > [31m at org.jruby.RubyArray.each(RubyArray.java:1637) [0m >>> > [31m at >>> > >>> org.jruby.RubyArray$i_method_0_0$RUBYFRAMEDINVOKER$each.call(org/jruby/RubyArray$i_method_0_0$RUBYFRAMEDINVOKER$each.gen:65535) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:299) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:117) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:122) >>> > [0m >>> > [31m at >>> > org.jruby.ast.CallNoArgBlockNode.interpret(CallNoArgBlockNode.java:64) >>> [0m >>> > [31m at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:104) [0m >>> > [31m at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:156) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:289) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:108) >>> > [0m >>> > [31m at org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:61) >>> [0m >>> > [31m at org.jruby.ast.LocalAsgnNode.interpret(LocalAsgnNode.java:123) >>> [0m >>> > [31m at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:104) [0m >>> > [31m at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [0m >>> > [31m at org.jruby.ast.IfNode.interpret(IfNode.java:119) [0m >>> > [31m at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:104) [0m >>> > [31m at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [0m >>> > [31m at org.jruby.ast.EnsureNode.interpret(EnsureNode.java:96) [0m >>> > [31m at org.jruby.ast.BeginNode.interpret(BeginNode.java:83) [0m >>> > [31m at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:104) [0m >>> > [31m at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:156) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:289) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:108) >>> > [0m >>> > [31m at org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:61) >>> [0m >>> > [31m at org.jruby.ast.NewlineNode.interpret(NewlineNode.java:104) [0m >>> > [31m at org.jruby.ast.BlockNode.interpret(BlockNode.java:71) [0m >>> > [31m at org.jruby.ast.EnsureNode.interpret(EnsureNode.java:96) [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:139) >>> > [0m >>> > [31m at >>> > >>> org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:156) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:289) >>> > [0m >>> > [31m at >>> > >>> org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:108) >>> > [0m >>> > [31m at >>> > >>> home.toulmean.jruby_minus_1_dot_5_dot_1.lib.ruby.gems.$1_dot_8.gems.rspec_minus_1_dot_3_dot_0.bin.spec.__file__(spec:5) >>> > [0m >>> > [31m at >>> > >>> home.toulmean.jruby_minus_1_dot_5_dot_1.lib.ruby.gems.$1_dot_8.gems.rspec_minus_1_dot_3_dot_0.bin.spec.load(spec) >>> > [0m >>> > [31m at org.jruby.Ruby.runScript(Ruby.java:685) [0m >>> > [31m at org.jruby.Ruby.runNormally(Ruby.java:568) [0m >>> > [31m at org.jruby.Ruby.runFromMain(Ruby.java:414) [0m >>> > [31m at org.jruby.Main.run(Main.java:286) [0m >>> > [31m at org.jruby.Main.run(Main.java:128) [0m >>> > [31m at >>> > >>> org.jruby.util.ShellLauncher$ScriptThreadProcess.run(ShellLauncher.java:136) >>> > [0m >>> > [31m at java.lang.Thread.run(Thread.java:619) [0m >>> > [32mTest Starting - StringSuite: substring2 [0m >>> > [32mTest Succeeded - StringSuite: substring2 [0m >>> > [32mTest Starting - StringSuite: substring3 [0m >>> > [32mTest Succeeded - StringSuite: substring3 [0m >>> > [32mSuite Completed - StringSuite [0m >>> > [36mRun completed in 606 milliseconds. [0m >>> > [36mTotal number of tests run: 5 [0m >>> > [36mSuites: completed 1, aborted 0 [0m >>> > [36mTests: succeeded 4, failed 1, ignored 0, pending 0 [0m >>> > [31m*** 1 TEST FAILED *** [0m >>> > .....Specification "MySpecs" >>> > it should >>> > [32m+ [0m add >>> > >>> > Total for specification "MySpecs": >>> > Finished in 0 second, 67 ms >>> > 1 example, 1 expectation, 0 failure, 0 error >>> > >>> > .Specification "MySpecs" >>> > it should >>> > [32m+ [0m add >>> > >>> > Total for specification "MySpecs": >>> > Finished in 0 second, 65 ms >>> > 1 example, 1 expectation, 0 failure, 0 error >>> > >>> > .Specification "PassingSpecs" >>> > it should >>> > [32m+ [0m add >>> > >>> > Total for specification "PassingSpecs": >>> > Finished in 0 second, 60 ms >>> > 1 example, 1 expectation, 0 failure, 0 error >>> > >>> > .Specification "StringSpecs" >>> > empty string should >>> > [31mx [0m have a zero length >>> > '0' is not equal to '1' (StringSpecs.scala:7) >>> > >>> > Total for specification "StringSpecs": >>> > Finished in 0 second, 68 ms >>> > 1 example, 1 expectation, [31m1 failure [0m, 0 error >>> > >>> > .................................mkdir -p >>> > < >>> http://hudson.zones.apache.org/hudson/job/buildr-ci-build-jruby/ws/tmp/home >>> > >>> > mkdir -p >>> > < >>> http://hudson.zones.apache.org/hudson/job/buildr-ci-build-jruby/ws/tmp/home/.buildr >>> > >>> > ............... >>> > >>> > 1) >>> > 'Buildr::Filter should preserve mode bits except readable' FAILED >>> > expected: 493, >>> > got: 420 (using ==) >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/expectations/fail_with.rb:41:in >>> > `fail_with' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/matchers/operator_matcher.rb:39:in >>> > `fail_with_message' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/matchers/operator_matcher.rb:61:in >>> > `__delegate_operator' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/matchers/operator_matcher.rb:51:in >>> > `eval_match' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/matchers/operator_matcher.rb:29:in >>> > `==' >>> > ./spec/core/common_spec.rb:547: >>> > ./spec/core/common_spec.rb:546:in `each' >>> > ./spec/core/common_spec.rb:546: >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/example/example_methods.rb:40:in >>> > `instance_eval' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/example/example_methods.rb:40:in >>> > `execute' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/example/example_methods.rb:37:in >>> > `execute' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/example/example_group_methods.rb:214:in >>> > `run_examples' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/example/example_group_methods.rb:212:in >>> > `each' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/example/example_group_methods.rb:212:in >>> > `run_examples' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/example/example_group_methods.rb:103:in >>> > `run' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/runner/example_group_runner.rb:23:in >>> > `run' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/runner/example_group_runner.rb:22:in >>> > `each' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/runner/example_group_runner.rb:22:in >>> > `run' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/runner/options.rb:152:in >>> > `run_examples' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/lib/spec/runner/command_line.rb:9:in >>> > `run' >>> > >>> /home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/bin/spec:5: >>> > >>> > Finished in 249.227 seconds >>> > >>> > 1940 examples, 1 failure >>> > rake aborted! >>> > Command /home/toulmean/jruby-1.5.1/bin/jruby -I"lib" >>> > >>> "/home/toulmean/jruby-1.5.1/lib/ruby/gems/1.8/gems/rspec-1.3.0/bin/spec" >>> > "spec/version_requirement_spec.rb" "spec/addon/drb_spec.rb" >>> > "spec/java/commands_spec.rb" "spec/java/external_spec.rb" >>> > "spec/java/packaging_spec.rb" "spec/java/tests_spec.rb" >>> > "spec/java/bdd_spec.rb" "spec/java/emma_spec.rb" >>> "spec/java/ant_spec.rb" >>> > "spec/java/cobertura_spec.rb" "spec/java/compiler_spec.rb" >>> > "spec/java/java_spec.rb" "spec/core/compile_spec.rb" >>> > "spec/core/common_spec.rb" "spec/core/cc_spec.rb" >>> > "spec/core/project_spec.rb" "spec/core/generate_spec.rb" >>> > "spec/core/checks_spec.rb" "spec/core/application_spec.rb" >>> > "spec/core/util_spec.rb" "spec/core/extension_spec.rb" >>> > "spec/core/transport_spec.rb" "spec/core/test_spec.rb" >>> > "spec/core/build_spec.rb" "spec/ide/idea7x_spec.rb" >>> > "spec/ide/eclipse_spec.rb" "spec/packaging/artifact_spec.rb" >>> > "spec/packaging/artifact_namespace_spec.rb" >>> > "spec/packaging/packaging_spec.rb" "spec/packaging/archive_spec.rb" >>> > "spec/scala/tests_spec.rb" "spec/scala/bdd_spec.rb" >>> > "spec/scala/compiler_spec.rb" --format failing_examples:failed >>> --format >>> > html:_reports/specs.html --backtrace --require >>> > >>> "/home/toulmean/buildr-gems/gems/ci_reporter-1.6.2/lib/ci/reporter/rake/rspec_loader.rb" >>> > --format CI::Reporter::RSpec failed >>> > >>> > (See full trace by running task with --trace) >>> > Recording test results >>> > >>> > >>> > >>> >> >> >
