Steven Hartland
2008-Mar-01 06:31 UTC
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 postmaster@multiplay.co.uk.
Kris Kennaway
2008-Mar-01 13:53 UTC
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