Fedora Perl SIG Mission
To assist packagers in bringing Perl-related packages to Fedora Extras and assisting in their continued maintenance by providing timely reviews, acting as secondary package owners and assisting with related security issues.
Perl Components in Fedora
Core perl in Fedora is currently 5.12.1.
- Bugzilla - Defect Tracking System
- Some testing on an SELinux-enabled system was needed (see RHBZ #188359)
- Cluster SSH - Cluster Admin Via SSH
- Alzabo - Data modelling tool (also in CPAN)
There are a number of the more popular Perl frameworks available in Fedora.
- Bricolage - Content Management System
- Catalyst - MVC Web Application Framework
- DBIx::Class - DBIx::Class is a modern, powerful object-relational mapping system
- Moose - Modern perl5 OOP system
- POE - Portable multitasking and networking framework
- Parrot - Parrot Virtual Machine
- Pugs - A Perl 6 Implementation written in Haskell
Perl packages in Fedora
Please edit the Perl wishlist if you want something, or package something off it if you're bored :)
Bugzilla is an excellent place to find information about the various perl packages in or being reviewed for inclusion:
Fedora perl infrastructure
Perl to CPAN Mapping
With most perl modules being in CPAN, preliminary "mapping" table has been created. This table is regenerated on a daily basis, and will be included in the upcoming Perl SIG Infrastructure hosted project .
Problems that need to be addressed
The following topics need to be discussed/improved/corrected. We need to start discussing them in the fedora-perl-list.
- Improve the RPM perl scripts (requirements and provides detection)
- rpm: handle the ‘v’ in “use v5.6.0″ (#140597) (reportedly fixed in rpm5.org's RPM 4.4.3)
- fix: perldeps and prov.pl not to emit perl(main) (#177960) (reportedly fixed in rpm5.org's RPM 4.4.5)
- at least try to handle use statements a litte better (eg: use base Module; use autouse Module; ...)
- Use PPI?
- Try to have RPM patched in order to create the debuginfo files after the %check section script is executed and not before (right now the files are created after the %install check script is executed). This breaks the signature tests (there are also other problems related to the signature tests in the building environment: network access to import pgg keys, where should they be stored, ...). More information available here and in bug #167252 .
- How to update core perl modules? Use the site_perl dirs? /usr/local dirs? Problems with man pages conflicts, version provides clashes (can cause strange problems during package upgrades), ....
- Already being discussed here: Bug 142837 – Need site-specific man page directory
- Try to reduce the number of @INC directories.
- Have a common dir for noarch modules instead of one for each perl version supported.
- The magic that is perl(:WITH_xxx) needs to be better documented and explained, so packagers -- and reviewers! -- know:
- What they are and what they mean
- When to use them
- When to _not_ use them
- Common things to check for that would indicate their usage
- explore possibilities or merging RPM2 functionality into RPM namespace
- Clarified packaging guidelines - Some of the packaging guidelines have conflicted with some common practises.
- For example, BuildRequires: perl was common but forbidden; that has now been changed. One current issue is the prohibition against including header files in the main package; some perl modules include these deep in the module directory hierarchy, and moving them to a separate -devel package is pointless.
- Notes about "Makefile.PL vs Build.PL" or "ExtUtils::MakeMaker vs Module::Build"
Packagers/Reviewers/People interested in helping
- Lubomir Rintel
- Iain Arnell
- Gerd Pokorra
- Emmanuel Seyman
You can also see people who have tagged their user pages in the Category:SIG Members/Perl.
- CPAN - Comprehensive Perl Archive Network
- CPAN - Recent files
- Fedora perl specfile template (available in the rpmdevtools package)
- Fedora Perl mailing list
- Notes about perl specfiles (old)
- maintaining perl.spec
- Perl packaging tips (work in progress)