Issue #587 - 2022-10-24 - Continuous Integration for Perl modules

latest | archive | edited by Gabor Szabo
This edition was made possible by the supporters of our cause.
Don't miss the next issue!

Hi there!

For years Perl was a long way ahead of the other languages in terms of testing the modules. The volunteers of the CPAN Testers provide an excellent service. Every time a new module or a new version of an older module is uploaded to CPAN (via PAUSE) within days and sometimes even within hours the CPAN Testers would download the new release, test it on their machines, and send a report to the author. Sometimes they would even open issues/tickets manually to report the problem and help the author(s) fix them.

These days, however, Open Source developers can use a number of free Continuous Integration systems that would give them feedback much sooner: On every push to GitHub or GitLab. They can run the author or release tests on these systems. They can configure to test other modules that use their module (reverse dependencies) to make sure the new changes don't have a negative impact on these users. They can can even re-run all the tests every day making sure that changes in the dependencies of the module don't break it. (CPAN Testers usually run the tests of a module only if you release a new version or if your module is a dependency of something that was released.)

By catching certain issues before they release a new version they provide a better experience to every user of CPAN and they also take some of the manual work off the shoulders of the CPAN Testers who are few.

For many years Travis-CI was the de-facto standard to set up CI for GitHub-based project. These days it is primarily GitHub Actions.

So, I have been on a quest to configure GitHub Actions to all the Perl projects where the author is interested. I have documented some of these and I have written on Why and how to CI. I use the CPAN Digger to locate candidates, but if you'd like to get help with setting up CI, open an issue on your project and tag me. If you like my quest, feel free to sponsor me so I'll be able to allocate more time to this. Oh, and if your company needs help with CI and test automation, I offer that as a service.

Enjoy your week!

Gabor Szabo


Sponsors

Torto AI

Are you interested to invest some money in the stock market, but don't want to waste time chasing data sources? Are you overwhelmed by the meaningless data dumps from the big web-sites? Try torto.ai.


Articles

Use Dist::Zilla to Create a Perl Distribution

by Nicholas Hubbard

A short introduction with the most commonly used plugins of Dist::Zilla.


Testing

Web

TPF

The Weekly Challenge

The Weekly Challenge by Mohammad Anwar will help you step out of your comfort-zone. You can even win prize money of $50 Amazon voucher by participating in the weekly challenge. We pick one winner at the end of the month from among all of the contributors during the month. The monthly prize is kindly sponsored by Peter Sergeant of PerlCareers.

The Weekly Challenge - 188

by Mohammad Sajid Anwar (MANWAR)

Welcome to a new week with a couple of fun tasks "Divisible Pairs" and "Total Zero". If you are new to the weekly challenge then why not join us and have fun every week. For more information, please read the FAQ.

RECAP - The Weekly Challenge - 187

by Mohammad Sajid Anwar (MANWAR)

Enjoy a quick recap of last week's contributions by Team PWC dealing with the "Days Together" and "Magical Triplets" tasks in Perl and Raku. You will find plenty of solutions to keep you busy.

Days Together Are Magical

by Adam Russell

Constraint Programming? Never heard of the term before, thanks for introducing.

Magical Together

by Arne Sommer

Just love the demo of REPL using the powerful built=in libraries of Raku. Thanks for sharing as always.

PWC187 - Days Together

by Flavio Poletti (POLETTIX)

Great show of Perl and Raku solutions side by side. Much better to learn the new tricks. Keep it up great work.

PWC187 - Magical Triplets

by Flavio Poletti (POLETTIX)

Breaking down of the task into smaller actions makes it easy to follow. Excellent work, thanks for sharing.

The Weekly Challenge 187

by James Smith

Are you looking for compact solution? Well you must checkout James work, you won't be disappointed.

Perl Weekly Challenge 187: Days Together

by Laurent Rosenfeld

Just one task and that too in Raku this week. The discussion around the task is worth checking out.

overlapping days and numbers

by Luca Ferrari

Brute force method in show, not a bad choice. In the end you get a clean solution. Keep it up great work.

Perl Weekly Challenge 187

by W Luis Mochan

Another show of cool one-liner in Perl. Amazing solutions, keep it up great work.

Foo meets Bar and the wizardly trio

by Peter Campbell Smith

What a nice story around the date related task. Thanks for sharing the story. Well done.

Magical Days Together

by Roger Bell West (FIREDRAKE)

As always the case, we got yet another collection of solutions in different languages. Thanks for keeping us engaged.

Magical Days Together with Triplets

by Simon Green

Love the mix of Cricket and Coding. Good luck to my Kiwi support. Thanks for your contribution.

PWC 187

by Stephen G Lynn

I love the commentary on fellow member's contribution in the blog post. Keep it up great work.


Weekly collections

Events

Charlotte PM : I <3 Smol backend (and I cannot lie) - Yanick

Wednesday Oct 26th, 2022 06:00 PM Eastern Time (US and Canada)


Perl Jobs by Perl Careers

Senior Perl Developer with Cross-Trained Chops. UK Remote Perl Role

The client is interested in anyone with experience building web apps in Perl, using one of the major Perl frameworks. If you’re a crack-hand with Catalyst, a Mojolicious master, or a distinguished Dancer, they want you. You’ll be deploying apps your work to AWS, so experience would be handy, and the company’s big on testing, so they’d like you to know your way around Test::More.

Perl Developer and Business Owner? Remote Perl role in UK & EU

Our clients run a job search engine that has grown from two friends with an idea to a site that receives more than 10 million visits per month. They're looking for a Perl pro with at least three years of experience with high-volume and high-traffic apps and sites, a solid understanding of Object-Oriented Perl (perks if that knowledge includes Moose), SQL/MySQL and DBIx::Class.

Adventure! Senior Perl roles in Malaysia, Dubai and Malta

Clever folks know that if you’re lucky, you can earn a living and have an adventure at the same time. Enter our international client: online trading is their game and they're looking for senior Perl developers with passion, drive, and an appreciation for new experiences.

Good (Perl) Humans Wanted. Remote Perl role in USA

Working with first responders, educators, manufacturers, and engineers, our client is the leading provider of award-winning intelligent SaaS solutions. They’re looking for a Perl developer with Catalyst and DBIx::Class.



You know, you could get the Perl Weekly right in your mailbox. Every Week.
Free of charge!

Just ONE e-mail each Monday. Easy to unsubscribe. No spam. Your e-mail address is safe.
Perl Weekly on Twitter RSS Feed of the Perl Weekly. Updated once a week