Re: portupgrade, recommended by 7 release notes, breaks perl
Steven Hartland wrote: Would fix this particular package but again: how many others do this? Maybe this is something that BSDPAN could / should override? It might be possible, you should talk to the BSDPAN maintainer. Kris ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: portupgrade, recommended by 7 release notes, breaks perl
Steven Hartland wrote: Seems portupgrade can easily break the perl install. How? Well there are various modules which can be updated but are also part of the base perl and are hence required. A good example of this is ExtUtils::MakeMaker. If you uninstall any version of this port your done for, as trying to build it requires ExtUtils::Command which in turn requires ExtUtils::MakeMaker which was just deleted. This circular dependency would not be an issue if the uninstall somehow knew that the files where required by perl, and hence didn't break the base port ( perl ) by removing them. I think something is not quite right in your analysis, because perl does not depend on any external perl modules (it cannot, by definition). Kris ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: portupgrade, recommended by 7 release notes, breaks perl
On Sat, 2008-03-01 at 14:53 +0100, Kris Kennaway wrote: Steven Hartland wrote: Seems portupgrade can easily break the perl install. How? Well there are various modules which can be updated but are also part of the base perl and are hence required. A good example of this is ExtUtils::MakeMaker. If you uninstall any version of this port your done for, as trying to build it requires ExtUtils::Command which in turn requires ExtUtils::MakeMaker which was just deleted. This circular dependency would not be an issue if the uninstall somehow knew that the files where required by perl, and hence didn't break the base port ( perl ) by removing them. I think something is not quite right in your analysis, because perl does not depend on any external perl modules (it cannot, by definition). Kris Just to chime in, I don't have MakeMaker installed, but I *do* have perl installed. [EMAIL PROTECTED] ~]$ pkg_info | grep -i perl p5-Archive-Tar-1.38 Perl module for creation and manipulation of tar files p5-Authen-SASL-2.10_1 Perl5 module for SASL authentication p5-Compress-Zlib-2.008 Perl5 interface to zlib compression library p5-Date-Manip-5.44 Perl5 module containing date manipulation routines p5-Digest-HMAC-1.01 Perl5 interface to HMAC Message-Digest Algorithms p5-Digest-MD5-2.36 Perl5 interface to the MD5 algorithm p5-Digest-SHA1-2.11 Perl interface to the SHA-1 Algorithm p5-Error-0.17009Perl module to provide Error/exception support for perl: Er p5-ExtUtils-CBuilder-0.22 Compile and link C code for Perl modules p5-ExtUtils-ParseXS-2.19 Converts Perl XS code into C code p5-GSSAPI-0.25 Perl extension providing access to the GSSAPIv2 library p5-HTML-Parser-3.56 Perl5 module for parsing HTML documents p5-IO-Compress-Zlib-2.008 Perl5 interface for reading and writing of (g)zip files p5-IO-Socket-INET6-2.52 Perl module with object interface to AF_INET6 domain socket p5-IO-Socket-SSL-1.13 Perl5 interface to SSL sockets p5-IO-String-1.08 Simplified Perl5 module to handle I/O on in-core strings p5-IO-stringy-2.110 Perl5 module for using IO handles with non-file objects p5-MIME-Base64-3.07 Perl5 module for Base64 and Quoted-Printable encodings p5-Mail-Tools-1.77 Perl5 modules for dealing with Internet e-mail messages p5-Module-Build-0.28.08 Build and install Perl modules p5-Net-1.22,1 Perl5 modules to access and use network protocols p5-Net-CIDR-Lite-0.20 Perl extension for merging IPv4 or IPv6 CIDR addresses p5-Net-DBus-0.33.5 Perl extension for the DBus message system p5-Net-DNS-0.62 Perl5 interface to the DNS resolver, and dynamic updates p5-Net-IP-1.25 Perl extension for manipulating IPv4/IPv6 addresses p5-Net-SSLeay-1.30_1 Perl5 interface to SSL p5-Parse-Syslog-1.10 Perl5 routines that present a simple interface to parse sys p5-PathTools-3.2701 A Perl module for portably manipulating file specifications p5-SGMLSpm-1.03 Perl module for postprocessing the output from sgmls and ns p5-Scalar-List-Utils-1.19,1 Perl subroutines that would be nice to have in the perl cor p5-Spiffy-0.30 Spiffy Perl Interface Framework For You p5-Test-Harness-3.09 Run perl standard test scripts with statistics p5-Test-Simple-0.74 Basic utilities for writing tests in perl p5-Text-Iconv-1.7 Perl interface to iconv() codeset conversion function p5-Tie-IxHash-1.21 Perl module implementing ordered in-memory associative arra p5-Time-HiRes-1.9711,1 A perl5 module implementing High resolution time, sleep, an p5-URI-1.35 Perl5 interface to Uniform Resource Identifier (URI) refere p5-XML-Grove-0.46.a Perl-style XML objects p5-XML-Handler-YAWriter-0.23 Yet another Perl SAX XML Writer p5-XML-Parser-2.36 Perl extension interface to James Clark's XML parser, expat p5-YAML-0.66YAML implementation in Perl p5-libwww-5.805 Perl5 library for WWW access p5-libxml-0.08 Collection of Perl5 modules for working with XML pcre-7.6Perl Compatible Regular Expressions library perl-5.8.8_1Practical Extraction and Report Language [EMAIL PROTECTED] ~]$ ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: portupgrade, recommended by 7 release notes, breaks perl
Kris Kennaway wrote: I think something is not quite right in your analysis, because perl does not depend on any external perl modules (it cannot, by definition). I ran into something like this when I was switching from a threaded perl to an unthreaded perl. It wasn't possible to just use a portupgrade to rebuild and reinstall all the packages, I needed to uninstall a large number of them. Basically, every time the port build fell over, I would need to pkg_which the shared object mentioned in the error message, uninstall that package and take note of the name then reinstall them all after everything else worked. I've never encountered this as a result of a version upgrade though. Reproducing the problem is pretty simple... build a threaded perl, then build a bunch of modules that use shared objects, then reconfigure perl to be unthreaded and force upgrade it. The shared objects will fail to load and portupgrade of the modules will fall over. I never reported this as a problem though since it was pretty obvious why it happened and how to fix it. It was my own fault for playing with a threaded perl then wanting to change back. ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: portupgrade, recommended by 7 release notes, breaks perl
- Original Message - From: Kris Kennaway [EMAIL PROTECTED] I think something is not quite right in your analysis, because perl does not depend on any external perl modules (it cannot, by definition). I know what your saying there Kris, this shouldn't happen. So I've spent some time digging through the info I had here from the upgrade, luckily I saved a list of installed ports before starting. The issue appears to down to the fact ExtUtils::MakeMaker when installed via CPAN installs to: /usr/local/lib/perl5/5.8.8 So obviously when portupgrade finds it and attempts to upgrade it, it first deletes it which trashes the base perl install as it now has no MakeMaker to fall back to. Usually I would expect CPAN modules to install to: /usr/local/lib/perl5/site_perl/5.8.8/ Which would ensure that there are still base files left to fall back on when upgrading. Of note here is that port p5-ExtUtils-MakeMaker correctly installs under site_perl its only the CPAN module which has this problem. Now I don't know if there are any other modules which suffer from this or if its just a feature of MakeMaker. The underlying cause of this is in the MakeMaker Makefile.PL Makefile.PL:INSTALLDIRS = 'perl', changing this to: Makefile.PL:INSTALLDIRS = 'site', Would fix this particular package but again: how many others do this? Maybe this is something that BSDPAN could / should override? Regards Steve This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it. In the event of misdirection, illegible or incomplete transmission please telephone +44 845 868 1337 or return the E.mail to [EMAIL PROTECTED] ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to [EMAIL PROTECTED]
portupgrade, recommended by 7 release notes, breaks perl
Seems portupgrade can easily break the perl install. How? Well there are various modules which can be updated but are also part of the base perl and are hence required. A good example of this is ExtUtils::MakeMaker. If you uninstall any version of this port your done for, as trying to build it requires ExtUtils::Command which in turn requires ExtUtils::MakeMaker which was just deleted. This circular dependency would not be an issue if the uninstall somehow knew that the files where required by perl, and hence didn't break the base port ( perl ) by removing them. I found this by following the 7.0-RELEASE upgrade guide which recommends: portupgrade -faP This ended up with a totally broken install which took quite some time to fix so I thought it best to highlight the issue so it can be addressed. I'm not 100% sure but I think I also spotted portupgrade reinstalling the same port over and over during this process. Could this be the case and if so is there an option to prevent it? Regards Steve This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it. In the event of misdirection, illegible or incomplete transmission please telephone +44 845 868 1337 or return the E.mail to [EMAIL PROTECTED] ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to [EMAIL PROTECTED]