Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re^3: New Module Announcement: Object::InsideOut

by BrowserUk (Pope)
on Nov 01, 2005 at 06:01 UTC ( #504515=note: print w/ replies, xml ) Need Help??


in reply to Re^2: New Module Announcement: Object::InsideOut
in thread New Module Announcement: Object::InsideOut

I do apologise, it appears I c&p'd the wrong log. This is the one I should have posted

C:\Perl\packages\Object-InsideOut-0.02.00>perl -MException::Class -wle +"print $Exception::Class::VERSION" 1.22 C:\Perl\packages\Object-InsideOut-0.02.00>nmake test Microsoft (R) Program Maintenance Utility Version 8.00.40607.16 Copyright (C) Microsoft Corporation. All rights reserved. C:\Perl\bin\perl.exe "-MExtUtils::Command::MM" "-e" "test_harn +ess(0, 'blib\lib', 'blib\arch')" t\01-basic.t t\02-auto.t t\03-thread +s.t t\04-shared.t t\01-basic......ok t\02-auto.......ok t\03-threads....ok 3/12thread failed to start: Can't locate object met +hod "x" via package "UNIVERSAL" at t\03-threads.t line 48. t\03-threads....ok 5/12# Looks like you planned 12 tests but only ran +6. t\03-threads....dubious Test returned status 6 (wstat 1536, 0x600) DIED. FAILED tests 7-12 Failed 6/12 tests, 50.00% okay t\04-shared.....ok Failed Test Stat Wstat Total Fail Failed List of Failed ---------------------------------------------------------------------- +--------- t\03-threads.t 6 1536 12 12 100.00% 7-12 Failed 1/4 test scripts, 75.00% okay. 6/53 subtests failed, 88.68% oka +y. NMAKE : fatal error U1077: 'C:\Perl\bin\perl.exe' : return code '0xff' Stop.

As you can see, I have installed Exception::Class, but I am still getting failures from 03threads.t


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.


Comment on Re^3: New Module Announcement: Object::InsideOut
Download Code
Re^4: New Module Announcement: Object::InsideOut
by jdhedden (Deacon) on Nov 01, 2005 at 12:59 UTC
    This looks to be a bug in Perl and may be related to this bug fix reported in perl585delta.pod:
    Creating a new thread when weak references exist was buggy, and would often cause warnings at interpreter destruction time.
    I'll investigate this further. Thanks.

    Update:
    After further investigation, I'm fairly sure this is a Perl bug. I could not reproduce the error you received under Cygwin or Solaris, but I did reproduce the warnings mentioned in the quote above. Further, 03-threads.t and 04-shared.t are nearly the same, and 04-shared.t successed for you. I can only recommend upgrading to Perl 5.8.7 if you can.

    I'll make note of these sorts of issues in the bug section of the POD.


    Remember: There's always one more bug.

      I got around to installing 5.8.7 and attempted a rebuild of Object::InsideOut, and got the same failures as before, but this time noted that Makefile.pl produced a warning

      Locally installed version of Scalar::Util does not support weakened references. It is strongly recommended that you download the lastest +version of the Scalar-List-Utils module from CPAN, and attempt to remedy this deficiency. View this module's documentation for further information. Writing Makefile for Object::InsideOut

      I tracked that down to the XS version not having been built/distributed as a part of 5.8.7. So I pulled the CPAN version and attempted to build it, and it refused to attempt to build. That I tracked down to the can_cc() apparently returning false.

      Cutting a long story short(ish), harcoding the $do_xs var in the Scalar-List::Util Makefile to true, allowed me to cleanly build the xs version, making the isweak() and other XS-only functions available. With that, O::IO builds, tests and runs clean.

      Why can_cc() fails I cannot work out, but...if you get other failures on Win32, that would be a good starting point.

      I should probably raise a bug report against something, but what? AS 813, SL::U or MakeMaker?


      Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
      Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
      "Science is about questioning the status quo. Questioning authority".
      In the absence of evidence, opinion is indistinguishable from prejudice.
        The problem comes from can_cc() using the 'cc' value in Config. Thus, the bug is in Module::Install - in inc/Module/Install/Can.pm. It needs to accommodate ExtUtils::FakeConfig, replacing "use Config;" with:
        eval { require Config_m; }; # ExtUtils::FakeConfig (+ ActivePerl) if ($@) { eval { require Config; }; # Everyone else }
        Then on your end, you'd need to install and configure ExtUtils::FakeConfig to have the correct 'cc' entry.

        Or you could just edit your Config.pm, and change the 'cc' entry to something that works.


        Remember: There's always one more bug.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://504515]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (20)
As of 2015-07-02 13:45 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (40 votes), past polls