Opened 13 years ago

Closed 10 years ago

#15025 closed defect (fixed)

signing-party: running caff gives Perl errors

Reported by: hahn.seb@… Owned by: milosh@…
Priority: Normal Milestone:
Component: ports Version: 1.6.0
Keywords: Cc: ghosthound, narf_tm@…
Port: signing-party


I installed signing-party, which installed perl 5.8.8. When I run caff (a perl utility in signing-party), I receive the following errors:

Constant subroutine File::Temp::MAX_TRIES redefined at /opt/local/lib/perl5/5.8.8/ line 103. Constant subroutine File::Temp::MINX redefined at /opt/local/lib/perl5/5.8.8/ line 103. Constant subroutine File::Temp::TEMPXXX redefined at /opt/local/lib/perl5/5.8.8/ line 103. Constant subroutine File::Temp::STANDARD redefined at /opt/local/lib/perl5/5.8.8/ line 103. Constant subroutine File::Temp::MEDIUM redefined at /opt/local/lib/perl5/5.8.8/ line 103. Constant subroutine File::Temp::HIGH redefined at /opt/local/lib/perl5/5.8.8/ line 103. Subroutine _gettemp redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 331. Subroutine _replace_XX redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 621. Subroutine _force_writable redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 645. Subroutine _is_safe redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 670. Subroutine _is_verysafe redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 730. Subroutine _can_unlink_opened_file redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 805. Subroutine _can_do_level redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 822. Subroutine cleanup redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 879. Subroutine _deferred_unlink redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 919. Subroutine new redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1007. Subroutine filename redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1100. Subroutine STRINGIFY redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1105. Subroutine unlink_on_destroy redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1130. Subroutine DESTROY redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1159. Subroutine tempfile redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1281. Subroutine tempdir redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1472. Subroutine mkstemp redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1594. Subroutine mkstemps redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1635. Subroutine mkdtemp redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1680. Subroutine mktemp redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1721. Subroutine tmpnam redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1783. Subroutine tmpfile redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1819. Subroutine tempnam redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1864. Subroutine unlink0 redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 1936. Subroutine cmpstat redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 2001. Subroutine unlink1 redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 2094. Subroutine safe_level redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 2212. Subroutine top_system_uid redefined at /opt/local/lib/perl5/vendor_perl/5.8.8/File/ line 2257.

I suspect this is a Perl error?

Change History (7)

comment:1 Changed 13 years ago by jmroot (Joshua Root)

Owner: changed from macports-tickets@… to milosh@…
Summary: Running caff gives Perl errorssigning-party: running caff gives Perl errors

Assigning to maintainer.

comment:2 Changed 13 years ago by milosh@…

Cc: ricci@… narf_tm@… added

I also get those warnings, but they don't prevent caff from running. They are caused by p5-file-temp and p5-mime-tools, as the simple perl file

use File::Temp;
use MIME::Entity;

launched via 'perl -w' gives the same set of warnings. CCing to the maintainers of those perl ports.

comment:3 Changed 13 years ago by…

Ah, I think I know why. MIME::Tools needs File::Temp >= 0.17, perl 5.8.8 ships with File::Temp 0.16 so we (macports) patches to use the macports installed File::Temp instead of the perl 5.8.8 installed File::Temp. I see that MIME::Tools 5.426 has been released, I'll have a look at that and see if it does something smart to work around this problem (though it does require File::Temp >=0.18 now...).

comment:4 Changed 13 years ago by…

MIME::Tools 5.426 has the same flavor of problem. I think the right solution is to invert perl's @INC so that macports installed modules override the core modules, something that FreeBSD's port system does for perl. Writing an RFC email to macports-dev@ about this, please comment there.

comment:5 Changed 12 years ago by hahn.seb@…

Is there a status upgrade?

comment:6 Changed 11 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

comment:7 Changed 10 years ago by jmroot (Joshua Root)

Keywords: Perl signing-party removed
Port: signing-party added
Resolution: fixed
Status: newclosed

This should be OK AFAICT since #12710 is fixed.

Note: See TracTickets for help on using tickets.