Bug #7443

Method redefinition from Fiddle is causing a test failure (MinGW)

Added by Luis Lavena over 1 year ago. Updated over 1 year ago.

[ruby-core:50194]
Status:Closed
Priority:Normal
Assignee:Aaron Patterson
Category:test
Target version:2.0.0
ruby -v:ruby 2.0.0dev (2012-11-27 trunk 37887) [i386-mingw32] Backport:

Description

=begin

The modification introduced in r37881 associated with #5458 is causing a test failure on RubyInstaller CI:

1) Failure:
testmodifyexpandmemoryleak(TestStringModifyExpand) [C:/Users/Worker/Jenkins/workspace/ruby-trunk-x64-build/test/-ext-/string/testmodifyexpand.rb:7]:
rb
strmodifyexpand().
<[true, ""]> expected but was
<[true, "C:/Users/Worker/Jenkins/workspace/ruby-trunk-x64-build/build/.ext/x64-mingw32/fiddle.so: warning: method redefined; discarding old dlwrap\nC:/Users/Worker/Jenkins/workspace/ruby-trunk-x64-build/build/.ext/x64-mingw32/fiddle.so: warning: method redefined; discarding old dlwrap\n"]>

This happens on both x86 and x64:

http://ci.rubyinstaller.org/job/ruby-trunk-x86-test-all/374/console
http://ci.rubyinstaller.org/job/ruby-trunk-x64-test-all/276/console

Thank you
=end

Associated revisions

Revision 38055
Added by Usaku NAKAMURA over 1 year ago

  • ChangeLog: mention to ML and ticket: [Bug #7443]

History

#1 Updated by Zachary Scott over 1 year ago

For what it's worth, here's the issues I'm getting:
https://gist.github.com/4152220

#2 Updated by Luis Lavena over 1 year ago

=begin
zzak (Zachary Scott) wrote:

For what it's worth, here's the issues I'm getting:
https://gist.github.com/4152220

Thanks Zachary,

The issue is not a test from Fiddle that is failing, but Fiddle redefinition causing another test to fail.

testmodifyexpandmemoryleak from test/-ext-/string/testmodifyexpand.rb

I think you can run it independently doing:

make test-all TESTS="-ext-/string/testmodifyexpand.rb"
=end

#3 Updated by Zachary Scott over 1 year ago

Luis, sorry to pollute your ticket, I was just discussing this with drbrain on irc. Ignore me :)

edit: that test passes ok for me on x86_64-linux

#4 Updated by Zachary Scott over 1 year ago

I should probably mention the failures I saw were due to missing libffi headers, carry on!

#5 Updated by Luis Lavena over 1 year ago

  • % Done changed from 0 to 50

=begin
Thank you Aaron

This indeed improved the error, but now we are getting a different one:

http://ci.rubyinstaller.org/job/ruby-trunk-x64-test-all/286/console

1) Failure:
testmodifyexpandmemoryleak(TestStringModifyExpand) [C:/Users/Worker/Jenkins/workspace/ruby-trunk-x64-build/test/-ext-/string/testmodifyexpand.rb:7]:
rb
strmodifyexpand().
<[true, ""]> expected but was
<[true, "DL is deprecated, please use Fiddle\n"]>.

I don't understand why the child process of this particular tests will be loading DL (since is using a C extension).

Thank you.
=end

#6 Updated by Usaku NAKAMURA over 1 year ago

  • Status changed from Assigned to Closed
  • % Done changed from 50 to 100

This issue was solved with changeset r38055.
Luis, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


  • ChangeLog: mention to ML and ticket: [Bug #7443]

Also available in: Atom PDF