Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update old Perls from jessie to stretch (and test them all in Actions) #101

Merged
merged 1 commit into from
May 18, 2021

Conversation

tianon
Copy link
Contributor

@tianon tianon commented Apr 16, 2021

I was digging into this for #100, and figured that updating the Actions would be the easiest way to make sure they all build successfully and roughly work. 😄

In my repo, these complete in ~30 minutes total (in parallel), so it seems pretty reasonable IMO to just let it build them all, but I'm happy to back out or adjust any bit of this.

I had to make some changes to generate.pl (and the POD changes are the bits I'm the least sure about -- my experience with POD is super limited) so that we don't run the tests on several of these (given the caveat that Devel::PatchPerl doesn't actually patch for passing tests, as previously discussed) and I used essentially perl -de0 to run a basic smoke test for those versions instead.

Update: Also, move all EOL versions into a completely separate eol/ directory so that the repository is a little easier manage (and so we can limit testing of all old EOL versions to only when something inside the eol/ directory changes), per #101 (comment).

Copy link
Member

@zakame zakame left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @tianon! Looking good, just a couple of comments to maybe change:

.github/workflows/build-image.yml Show resolved Hide resolved
generate.pl Outdated Show resolved Hide resolved
@tianon tianon force-pushed the old-perls branch 2 times, most recently from 6a04b58 to 7ab5632 Compare May 8, 2021 00:23
@tianon
Copy link
Contributor Author

tianon commented May 8, 2021

I've got a script that can generate a suitable library/perl, but I'm not sure it's good enough for the repository (I definitely haven't written any =pod for it 😬), but I'm happy to share if that's something interesting to you!

(It currently takes an optional --eol flag for including these as a temporary backfill, as discussed in #100.)

@tianon tianon force-pushed the old-perls branch 3 times, most recently from 98a7819 to 3aa0dea Compare May 10, 2021 17:05
Additionally, add buster to all of them.

Finally, move all EOL versions into a completely separate `eol/` directory so that the repository is a little easier manage (and so we can limit testing of all old EOL versions to only when something inside the `eol/` directory changes).
@tianon
Copy link
Contributor Author

tianon commented May 10, 2021

There we go -- added buster to all of them and had to turn of tests for a few more of the EOLs (was tempting to just disable tests for all of them, but didn't go quite across all of them yet).

@zakame
Copy link
Member

zakame commented May 18, 2021

Thanks @tianon, this looks really good! 🎉 Now that eol stuff is moved out to its own workflow, it should also help very much to reduce checks for PRs that only involve changes to current-supported Perls.

I'm certainly interested on that library/perl generator too, and its --eol backfill flag can certainly help in the current situation - for other times, we can run that as a release/tag time workflow to diffstat against the master copy on docker-community/official-images and report prior for us to make the release PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants