RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1204394 - Spamassissin package depends on -devel packages
Summary: Spamassissin package depends on -devel packages
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: perl-ExtUtils-MakeMaker
Version: 7.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: perl-maint-list
QA Contact: BaseOS QE - Apps
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-03-21 15:43 UTC by Graham Leggett
Modified: 2016-12-02 13:26 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-12-02 13:26:47 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
CentOS 0008323 0 None None None Never

Description Graham Leggett 2015-03-21 15:43:56 UTC
The spamassassin RPM package has dependencies on a -devel package, causing a significant amount of unnecessary software to be installed:

 gdbm-devel x86_64 1.10-8.el7 base 47 k
 glibc-devel x86_64 2.17-55.el7_0.5 updates 1.0 M
 glibc-headers x86_64 2.17-55.el7_0.5 updates 651 k
 kernel-headers x86_64 3.10.0-123.20.1.el7 updates 1.4 M
 libdb-devel x86_64 5.3.21-17.el7_0.1 updates 38 k
 perl-devel x86_64 4:5.16.3-283.el7 base 451 k
 systemtap-sdt-devel x86_64 2.4-16.el7_0 updates 58 k

On a vanilla Centos 7 machine, attempt to install spamassassin with "yum install spamassassin":

================================================================================
 Package Arch Version Repository Size
================================================================================
Installing:
 spamassassin x86_64 3.3.2-18.el7 base 1.1 M
Installing for dependencies:
 gdbm-devel x86_64 1.10-8.el7 base 47 k
 glibc-devel x86_64 2.17-55.el7_0.5 updates 1.0 M
 glibc-headers x86_64 2.17-55.el7_0.5 updates 651 k
 kernel-headers x86_64 3.10.0-123.20.1.el7 updates 1.4 M
 libdb-devel x86_64 5.3.21-17.el7_0.1 updates 38 k
 mailcap noarch 2.1.41-2.el7 base 31 k
 perl x86_64 4:5.16.3-283.el7 base 8.0 M
 perl-Archive-Tar noarch 1.92-2.el7 base 73 k
 perl-Business-ISBN noarch 2.06-2.el7 base 25 k
 perl-Business-ISBN-Data noarch 20120719.001-2.el7 base 24 k
 perl-Carp noarch 1.26-244.el7 base 19 k
 perl-Compress-Raw-Bzip2 x86_64 2.061-3.el7 base 32 k
 perl-Compress-Raw-Zlib x86_64 1:2.061-4.el7 base 57 k
 perl-Crypt-OpenSSL-Bignum x86_64 0.04-18.el7 base 34 k
 perl-Crypt-OpenSSL-RSA x86_64 0.28-7.el7 base 38 k
 perl-Crypt-OpenSSL-Random x86_64 0.04-21.el7 base 24 k
 perl-DB_File x86_64 1.830-3.el7 base 73 k
 perl-Data-Dumper x86_64 2.145-3.el7 base 47 k
 perl-Digest noarch 1.17-245.el7 base 23 k
 perl-Digest-HMAC noarch 1.03-5.el7 base 16 k
 perl-Digest-MD5 x86_64 2.52-3.el7 base 30 k
 perl-Digest-SHA x86_64 1:5.85-3.el7 base 58 k
 perl-Encode x86_64 2.51-7.el7 base 1.5 M
 perl-Encode-Detect x86_64 1.01-13.el7 base 82 k
 perl-Encode-Locale noarch 1.03-5.el7 base 16 k
 perl-Error noarch 1:0.17020-2.el7 base 32 k
 perl-Exporter noarch 5.68-3.el7 base 28 k
 perl-ExtUtils-Install noarch 1.58-283.el7 base 73 k
 perl-ExtUtils-MakeMaker noarch 6.68-3.el7 base 275 k
 perl-ExtUtils-Manifest noarch 1.61-244.el7 base 31 k
 perl-ExtUtils-ParseXS noarch 1:3.18-2.el7 base 77 k
 perl-File-Listing noarch 6.04-7.el7 base 13 k
 perl-File-Path noarch 2.09-2.el7 base 26 k
 perl-File-Temp noarch 0.23.01-3.el7 base 56 k
 perl-Filter x86_64 1.49-3.el7 base 76 k
 perl-Getopt-Long noarch 2.40-2.el7 base 56 k
 perl-HTML-Parser x86_64 3.71-4.el7 base 115 k
 perl-HTML-Tagset noarch 3.20-15.el7 base 18 k
 perl-HTTP-Cookies noarch 6.01-5.el7 base 26 k
 perl-HTTP-Daemon noarch 6.01-5.el7 base 20 k
 perl-HTTP-Date noarch 6.02-8.el7 base 14 k
 perl-HTTP-Message noarch 6.06-6.el7 base 82 k
 perl-HTTP-Negotiate noarch 6.01-5.el7 base 17 k
 perl-HTTP-Tiny noarch 0.033-3.el7 base 38 k
 perl-IO-Compress noarch 2.061-2.el7 base 260 k
 perl-IO-HTML noarch 1.00-2.el7 base 23 k
 perl-IO-Socket-INET6 noarch 2.69-5.el7 base 20 k
 perl-IO-Socket-IP noarch 0.21-4.el7 base 35 k
 perl-IO-Socket-SSL noarch 1.94-3.el7 base 113 k
 perl-IO-Zlib noarch 1:1.10-283.el7 base 50 k
 perl-LWP-MediaTypes noarch 6.02-2.el7 base 24 k
 perl-Mail-DKIM noarch 0.39-8.el7 base 129 k
 perl-Mail-SPF noarch 2.8.0-4.el7 base 140 k
 perl-MailTools noarch 2.12-2.el7 base 108 k
 perl-Net-DNS x86_64 0.72-5.el7 base 308 k
 perl-Net-HTTP noarch 6.06-2.el7 base 29 k
 perl-Net-LibIDN x86_64 0.12-15.el7 base 28 k
 perl-Net-SMTP-SSL noarch 1.01-13.el7 base 9.1 k
 perl-Net-SSLeay x86_64 1.55-3.el7 base 285 k
 perl-NetAddr-IP x86_64 4.069-3.el7 base 125 k
 perl-Package-Constants noarch 1:0.02-283.el7 base 44 k
 perl-PathTools x86_64 3.40-5.el7 base 82 k
 perl-Pod-Escapes noarch 1:1.04-283.el7 base 49 k
 perl-Pod-Perldoc noarch 3.20-4.el7 base 87 k
 perl-Pod-Simple noarch 1:3.28-4.el7 base 216 k
 perl-Pod-Usage noarch 1.63-3.el7 base 27 k
 perl-Scalar-List-Utils x86_64 1.27-248.el7 base 36 k
 perl-Socket x86_64 2.010-3.el7 base 49 k
 perl-Socket6 x86_64 0.23-15.el7 base 27 k
 perl-Storable x86_64 2.45-3.el7 base 77 k
 perl-Sys-Syslog x86_64 0.33-3.el7 base 42 k
 perl-Test-Harness noarch 3.28-2.el7 base 302 k
 perl-Text-ParseWords noarch 3.29-4.el7 base 14 k
 perl-Time-HiRes x86_64 4:1.9725-3.el7 base 45 k
 perl-Time-Local noarch 1.2300-2.el7 base 24 k
 perl-TimeDate noarch 1:2.30-2.el7 base 52 k
 perl-URI noarch 1.60-9.el7 base 106 k
 perl-WWW-RobotRules noarch 6.02-5.el7 base 18 k
 perl-constant noarch 1.27-2.el7 base 19 k
 perl-devel x86_64 4:5.16.3-283.el7 base 451 k
 perl-libs x86_64 4:5.16.3-283.el7 base 686 k
 perl-libwww-perl noarch 6.05-2.el7 base 205 k
 perl-macros x86_64 4:5.16.3-283.el7 base 42 k
 perl-parent noarch 1:0.225-244.el7 base 12 k
 perl-podlators noarch 2.5.1-3.el7 base 112 k
 perl-threads x86_64 1.87-4.el7 base 49 k
 perl-threads-shared x86_64 1.43-6.el7 base 39 k
 perl-version x86_64 3:0.99.07-2.el7 base 84 k
 portreserve x86_64 0.0.5-10.el7 base 25 k
 procmail x86_64 3.22-34.el7_0.1 updates 171 k
 systemtap-sdt-devel x86_64 2.4-16.el7_0 updates 58 k

Comment 2 Jakub Jelen 2015-03-24 15:37:07 UTC
This is indirect dependency which is brought here by other packages:
spamassassin -> perl-ExtUtils-MakeMaker -> perl-ExtUtils-Install
-> perl-devel
   -> gdbm-devel
   -> glibc-devel
      -> glibc-headers
         -> kernel-headers
   -> libdb-devel
   -> systemtap-sdt-devel

ExtUtils-MakeMaker is used for sa-compile if I am right, but we are not using perl-ExtUtils-Install which is brought here so feel free to report this to ExtUtils-MakeMaker package if you are sure it doesn't need some *-Install module.



BTW, Much more useful would be dependency tree, than your list:

Resolving Dependencies
[...]
--> Processing Dependency: perl(ExtUtils::MakeMaker) for package: spamassassin-3.4.0-1.el7.x86_64
[...]
--> Processing Dependency: perl(ExtUtils::Install) for package: perl-ExtUtils-MakeMaker-6.68-3.el7.noarch
[...]
---> Package perl-ExtUtils-Install.noarch 0:1.58-285.el7 will be installed
--> Processing Dependency: perl-devel for package: perl-ExtUtils-Install-1.58-285.el7.noarch
---> Package perl-ExtUtils-Manifest.noarch 0:1.61-244.el7 will be installed
[...]
---> Package perl-devel.x86_64 4:5.16.3-285.el7 will be installed
--> Processing Dependency: systemtap-sdt-devel for package: 4:perl-devel-5.16.3-285.el7.x86_64
--> Processing Dependency: libdb-devel for package: 4:perl-devel-5.16.3-285.el7.x86_64
[...]
--> Processing Dependency: gdbm-devel for package: 4:perl-devel-5.16.3-285.el7.x86_64
--> Running transaction check
---> Package gdbm-devel.x86_64 0:1.10-8.el7 will be installed
---> Package libdb-devel.x86_64 0:5.3.21-17.el7_0.1 will be installed
[...]
---> Package systemtap-sdt-devel.x86_64 0:2.6-8.el7 will be installed
--> Processing Dependency: pyparsing for package: systemtap-sdt-devel-2.6-8.el7.x86_64
--> Running transaction check
---> Package pyparsing.noarch 0:1.5.6-9.el7 will be installed
--> Finished Dependency Resolution

Comment 3 Jaroslav Škarvada 2016-12-02 10:09:37 UTC
Comment 2 is right, we need perl-ExtUtils-MakeMaker for sa-compile (it's brought in as a implicit dependency). Reassigning to it to be sure that its requirement of perl-ExtUtils-Install is correct (but I am afraid it is). So probably we are not able to fix this problem with yum (it doesn't have support for soft dependencies).

Comment 4 Petr Pisar 2016-12-02 13:26:47 UTC
The dependencies are wrong, but fixing them would not help.

perl-ExtUtils-Install should not require perl-devel. That's a bug. On the other hand, perl-ExtUtils-MakeMaker should require perl-devel. The reason is that ExtUtils::MakeMaker is used for building Perl modules that can contain a C code that #includes perl header files.

Therefore perl-ExtUtils-MakeMaker is a developmental package and requires perl-devel.

Moreover all RHEL-7 perl source packages are written with the assumption that perl-ExtUtils-MakeMaker will drag perl-devel. Removing the dependency would brake them.


Note You need to log in before you can comment on or make changes to this bug.