Hello packagers, have you noticed an announcement about Perl 7 <https://www.nntp.perl.org/group/perl.perl5.porters/2020/06/msg257565.html> on a Perl5 Porters list? Saywer X presented an idea that now, when Perl 6 is called Raku, Perl 5 can resume using the higher numbers and that the next Perl will be Perl 7. That part of the announcement wouldn't be exciting at all if there wasn't the second part that Perl since now will be more aggressive in adding new features and removing old ones and that Perl will enable all the new stabilized features by default (without "use v7;"). To comfort conservative users there was a third part that Perl 5 will move into a maintance mode and it will be supported for the next 5 (up to 10) years. That second part provoked many reactions. Especially about a feasibility of such undertaking. The third part raised questions about compatibility with a third-party code, especially CPAN, and a coexistence of two Perls on one system. A similarity with Python upgrading from version 2 to version 3 is extensive. Because I observered the Python move in Fedora from a close proximity, I can tell you that I do not want to experience it again. (It took many years, cost at least 5 full-time Red Hat employes, and meant significant overhaul in packaging.) Then Sawyer X sent an update <https://www.nntp.perl.org/group/perl.perl5.porters/2020/07/msg257817.html> that addressed the people's reactions. It introduced a mandatory Perl API versioning ("use v5", "use v7", "use v8") in every Perl script, a prospect that each perl release will support at most 3 APIs (old, current, future) and that the interpreter executable will be called /usr/bin/perl7 while /usr/bin/perl will be kept unused. In the mean time, core-p7 branch was revelead in the Perl git tree that started migrating Perl 5 sources to Perl 7 version and introduced "use p5" and "use p7" <https://github.com/Perl/perl5/commit/5325aebf3977452a47bf08f473f8ebb107843ea7> for enforcing Perl 5 and Perl 7 compatibility mode in the interpreter. Yesterday Perl 5.33.0 <https://www.nntp.perl.org/group/perl.perl5.porters/2020/07/msg257941.html> was released with an unclear prospect whether it will lead to 5.34 or 7.0. So far it seems it will contain changes from core-p7 branch that assure core modules compatibility among both Perl 5 and Perl 7 mode. My question four you is what and how you want to package in Fedora. In my humble opinion, Perl 7 interpreter won't diverge from Perl 5 too far in the next year (or two years) and many prominent CPAN distributions will be promptly updated to preserve compatibility with both of the languages (it actually already happens, see perl-Socket-2.030). Thus I'm for upgrading Perl 5 to Perl 7 as soon as possible in Fedora. That means when stable Perl 7 is released and keep it up-to-date and all Perl packages rebuilt against it as we were used with Perl 5. I can imagine that some people will insist of having Perl 5 available next to Perl 7. I can package it either as a module or as a normal package (but keep in mind that Perl would conflict on /usr/bin scripts and manual pages; we could strip the manuals and rename the scripts). But I'm not sure it's worth of repackaging all the CPAN distributions we have twice for both Perls. Either as a subpackage of one spec file. (Few years back I proposed few macros <https://ppisar.fedorapeople.org/perlmacros2/> that would make the packaging agnostic of perl version and they were rejected as unneeded. I don't know whether the mood has has changed since then.) Or as a completely independend source packages (that would had the benefit that a breakage in one language would not affect the other language). There is still a possibility of using modularity, but that does not bring parallel installability and recently Fedora banned default streams which makes all modules a second-class citizen. So what do you want? Will you be fine with only having the latest Perl (i.e. Perl 7 next year)? -- Petr
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ perl-devel mailing list -- perl-devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to perl-devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/perl-devel@xxxxxxxxxxxxxxxxxxxxxxx