Project

General

Profile

Bug #1521

obsolete perl-584 dependency declarations break onu

Added by Bayard Bell almost 8 years ago. Updated over 7 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
tools - gate/build tools
Start date:
2011-09-15
Due date:
% Done:

100%

Estimated time:
Difficulty:
Bite-size
Tags:

Description

Currently there are six packages that declare dependencies on the perl-584 runtime in their manifests:

bayard@screendoor:/data/projects/illumos/illumos-ref 15:42:56 [4395]$ find usr/src/pkg/manifests | xargs grep -l ^depend fmri=runtime/perl-584 type=require
usr/src/pkg/manifests/service-network-smtp-sendmail.mf
usr/src/pkg/manifests/SUNWcs.mf
usr/src/pkg/manifests/print-lp-print-client-commands.mf
usr/src/pkg/manifests/developer-object-file.mf
usr/src/pkg/manifests/developer-appcert.mf
usr/src/pkg/manifests/system-extended-system-utilities.mf

When discovered dependency resolution is done, pkgdepend resolves them with perl-510:

bayard@screendoor:/data/projects/illumos/illumos-ref 15:54:21 [4435]$ find usr/src/pkg/manifests | xargs grep -l depend fmri=runtime/perl-584 type=require | sed -e 's//\/data\/projects\/illumos\/illumos-gate\//g' -e 's/manifests/packages.i386/g' -e s'/\.mf$/.res/g' | xargs grep 'depend fmri=pkg:/runtime/perl-510@.* type=require'
/data/projects/illumos/illumos-gate/usr/src/pkg/packages.i386/service-network-smtp-sendmail.res:depend fmri=pkg: type=require
/data/projects/illumos/illumos-gate/usr/src/pkg/packages.i386/SUNWcs.res:depend fmri=pkg: type=require
/data/projects/illumos/illumos-gate/usr/src/pkg/packages.i386/print-lp-print-client-commands.res:depend fmri=pkg: type=require
/data/projects/illumos/illumos-gate/usr/src/pkg/packages.i386/developer-object-file.res:depend fmri=pkg: type=require
/data/projects/illumos/illumos-gate/usr/src/pkg/packages.i386/developer-appcert.res:depend fmri=pkg: type=require
/data/projects/illumos/illumos-gate/usr/src/pkg/packages.i386/system-extended-system-utilities.res:depend fmri=pkg: type=require

Moreover, if Illumos no longer delivers 584, these dependencies can only be satisfied by vestigial installation, which shouldn't be assumed. This can break onu or image-update more generally on a system which no longer has runtime/perl-584.

The simple fix is to remove the explicit declarations and leave the rest to discovery.

History

#1

Updated by Bayard Bell over 7 years ago

  • % Done changed from 0 to 90

After feedback from richlowe that the ability of pkgdepend to resolve symlinks in interpreter spec may not extend to all versions, the fix is to replace perl-584 references with perl-510 references.

#2

Updated by Rich Lowe over 7 years ago

  • Status changed from New to Resolved
  • % Done changed from 90 to 100

Resolved in r13611 commit:4af57d96fcca

Also available in: Atom PDF