From Fedora Project Wiki
Line 100: Line 100:
* [https://pagure.io/packaging-committee/issue/690 FPC request to update Fedora Packaging Guidelines for Perl]
* [https://pagure.io/packaging-committee/issue/690 FPC request to update Fedora Packaging Guidelines for Perl]
* [https://pagure.io/releng/issue/6842 Releng request to check of the impact]
* [https://pagure.io/releng/issue/6842 Releng request to check of the impact]
* [https://bugzilla.redhat.com/show_bug.cgi?id=1410347 RHEL request to provide compatibility]
* [https://lists.fedoraproject.org/archives/list/perl-devel@lists.fedoraproject.org/message/TGQJI4IFXFOPMZJFE42CZ6DSFUP5NIC3/  perl-devel mailing list discussion]
* [https://lists.fedoraproject.org/archives/list/perl-devel@lists.fedoraproject.org/message/TGQJI4IFXFOPMZJFE42CZ6DSFUP5NIC3/  perl-devel mailing list discussion]
* [https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/BFO4WG73BW6JH4RMFRQNSZ4BPHU6SP6Y/ devel mailing list discussion]
* [https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/BFO4WG73BW6JH4RMFRQNSZ4BPHU6SP6Y/ devel mailing list discussion]

Revision as of 12:06, 29 June 2017

perl Package to Install Core Modules

Summary

dnf install perl will install all core Perl modules that come with Perl upstream sources.

Owner

  • Name: Petr Písař
  • Email: <ppisar@redhat.com>
  • Release notes owner:

Current status

Completed items

  • Provide perl-interpreter symbol in F27
  • Provide perl-interpreter symbol in F25

Items in progress

  • Provide perl-interpreter symbol in F26
  • Provide perl-interpreter symbol in F24

Items to be done

  • Replace perl to perl-interpreter build-time dependency in all F27 spec files
  • Replace perl to perl-interpreter run-time dependency in all F27 spec files and rebuild them
  • Rename perl to perl-interpreter and perl-core to perl in perl.spec

Detailed Description

Upstream releases Perl interpreter together with many Perl modules. This set of modules is called core modules. Fedora splits the modules into subpackages so that installing perl package results in a stripped-down set of modules. Fedora documents this as a feature and provides perl-core metapackage that allows installing all the core modules as is intended by upstream.

Unfortunately this seems to be confusing to Perl users because Fedora is the only distribution doing so.

To align Fedora's behavior to upstream and other distributions this change will rename perl package to perl-interpreter and perl-core package to perl. This will allow installing all core Perl modules with dnf install perl while still retain the possibility to install only a minimal perl interpreter (/usr/bin/perl) with dnf install perl-interpreter.

This change will also update Fedora Packaging Guidelines for Perl and all spec files that require perl to use perl-interpreter instead. There is only 81 binary packages affected. They will rebuilt. Otherwise no mass rebuild won't be necessary.

To ease sharing spec files with older Fedoras, perl-interpreter provide will add to perl package there.

Benefit to Fedora

Fedora's Perl becomes more similar to other distributions. Installing perl package will be enough to get full user experience intended by Perl upstream.

Scope

  • Proposal owners:
    • Submit Fedora Packaging Guidelines for Perl update to Fedora Packaging Committee.
    • Update and rebuild perl source package.
    • Add Provides: perl-interpreter to perl package in older Fedoras.
    • Replace BuildRequires and Requires for perl with perl-interpreter in all spec files.
    • Rebuild packages with replaced Requires to propagate the change to repositories.
    • Replace perl-core with perl in compose groups definition.
  • Other developers: Get familiar with new Fedora Packaging Guidelines for Perl.
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

Users that explicitly installed perl package will get installed additional packages as if they had installed perl-core package. This can be fixed by uninstalling perl package manually.

How To Test

Install perl package. This makes available all Perl modules as listed in corelist -v 5.26.0 output (without modules specific for other operating systems).

User Experience

dnf install perl will install all core Perl modules.

Dependencies

This change will affect 2302 source packages and 81 binary packages. Their spec files will be updated. The 81 binary packages will be rebuilt. There is no dependency on other Fedora changes.

Contingency Plan

  • Contingency mechanism: The change will be reverted.
  • Contingency deadline: Any time.
  • Blocks release? No.
  • Blocks product? No.

Documentation

Release Notes