perl5
perl5 copied to clipboard
Memoize: sync with CPAN version 1.09
From Changes:
1.09 Sun 31 Jul 2022
- Skip for thread safety tests on Perl 5.10.0
- Drastically improved Memoized::NDBM_File EXISTS shim
- Minimum Perl version set at 5.6
- Removal of Memoize::ExpireTest and Memoize::ExpireFile
1.08 Thu 28 Jul 2022
- Skip for thread safety tests on unthreaded perls
1.07 Thu 28 Jul 2022
- Thread safety (RT #21707)
- Support for reference values in Memoize::Expire (RT #38344)
- Support for iterating tied Memoize::Expire hashes (RT #124507)
- Advisory locking in Memoize::Storable (RT #133859)
1.06 Wed 27 Jul 2022
- Deprecation of Memoize::SDBM_File
- Test fixes
1.05 Sun 24 Jul 2022
- Actual implementation of the HASH option of Memoize::Expire (RT #18171, Eric Brine)
- Vim modeline in Expire.pm (RT #38785, Moritz Lenz)
- Fix for minor memory leak in unmemoize() (RT #52819, Joshua I. Miller)
- Actual implementation of the 'nstore' option of Memoize::Storable (RT #77790, Jonathan Nieder)
- Fix for broken LIST_CACHE => MERGE option in memoize() (RT #91927, Slaven Rezic)
1.04 Fri 22 Jul 2022
- No removal of . from @INC during TIE module load. The module load is not optional, so the . removal was mistaken
- Properly overridable $Memoize::Expire::DEBUG (RT #133860, Slaven Rezic). Previously it would get reset the module was loaded
- Correct INSTALLDIRS for installation on pre-5.12 perls (RT #63935)
- Documentation fixes (David Steinbrunner, Dominic Hargreaves, Slaven Rezic, Glenn Fowler)
Committer:
- Remove CUSTOMIZED entry for Memoize in Porting/Maintainers.pl.
- Update upstream maintainer.
This pull request intends to pull version 1.09 of CPAN distribution Memoize into blead. This will be the first real update of Memoize in the core in several years. I have formulated the pull request on the assumption that the CUSTOMIZED
entry for Memoize
in Porting/Maintainers.pl
is no longer needed. (Indeed, when I left that entry in position and ran `Porting/sync-with-cpan Memoize I got errors in three newly added test files.)
Please review. @ap
Hey, thanks for taking care of this and also for letting me know. Now I don’t have to prepare such a PR myself. 🙂
However – 1.09 is not a good candidate for this because I wasn’t careful enough and broke backcompat. For this reason I was holding off on preparing such a PR right now.
I’ve not been following p5p closely in recent times so I don’t know if release scheduling is at play here. My thoughts are:
-
If a freeze is imminent then I suggest updating the PR to sync with 1.08. A sync in general is worthwhile: the version previously in core accumulated half a dozen small but important bugs on RT, which I’ve been addressing, and of course core itself had a few patches to Memoize that were not in the CPAN version. But 1.08 already had all of that, minus the breakage. So if core has to ship with one of the already existing releases, 1.08 should be the one. Both 1.03_01 (the hitherto version in core) and 1.09 are inferior choices.
-
If the freeze is a ways off then I suggest holding back the PR until at least the next release of Memoize is out and has baked for a bit, and then first updating it to that.
I actually expect to ship one or two more releases soon after that one. So far I’ve only been making carefully localized fixes, just paying off the maintenance debt of the last 10 years – however I also have in mind some deeper cleanups that I want to get to afterwards. After any dust from that (hopefully none) has settled then I expect that version to remain current for a long time. My intention was to submit a PR to update core once I had reached that point.
On 8/10/22 21:33, Aristotle Pagaltzis wrote:
Hey, thanks for taking care of this and also for letting me know. Now I don’t have to prepare such a PR myself. 🙂
However – 1.09 is not a good candidate for this because I wasn’t careful enough and broke backcompat. For this reason I was holding off on preparing such a PR right now.
I’ve not been following p5p closely in recent times so I don’t know if release scheduling is at play here. My thoughts are:
If a freeze is imminent then I suggest updating the PR to sync with 1.08. A sync in general is worthwhile: the version previously in core accumulated half a dozen small but important bugs on RT, which I’ve been addressing, and of course core itself had a few patches to Memoize that were not in the CPAN version. But 1.08 already had all of that, minus the breakage. So if core has to ship with one of the already existing releases, 1.08 should be the one. Both 1.03_01 (the hitherto version in core) and 1.09 are inferior choices.
Tomorrow I will prepare a branch/p.r. that seeks to synch your version 1.08 into blead. If accepted, that will go out with perl-5.37.3 on August 20.
The air does not start to get chilly for code freeze until February 20. So you should have plenty of time to refine what's on CPAN.
As you know (from having submitted patches), we use the program Porting/sync-with-cpan to do this synching. For the overwhelming majority of the 118 CPAN distros that ship with core, that's sufficient and we don't absolutely need a pull request. Memoize is one of 13 distros that has a CUSTOMIZED element in its entry in %Modules and so merits the extra eyeballs that a p.r. would presumably provide.
Thank you very much. Jim Keenan
For the overwhelming majority of the 118 CPAN distros that ship with core, that's sufficient and we don't absolutely need a pull request. Memoize is one of 13 distros that has a CUSTOMIZED element in its entry in %Modules and so merits the extra eyeballs that a p.r. would presumably provide.
Do I follow correctly that no additional PRs will be necessary once this PR with its removal of the CUSTOMIZED
key is merged?
Actually, thanks for motivating me to ship the fix for 1.09. I’ve just sent 1.10 to PAUSE, with relatively small changes. Let’s wait for that to bake for 2 or 3 days and then ship that (assuming nothing unexpectedly wrong with it). 1.09 does have changes that relate directly to 5.37.3 so it would be neat for those to ship with that perl.
1.10 looks good enough at this point. As far as I’m concerned feel free to proceed with that.
1.10 looks good enough at this point. As far as I’m concerned feel free to proceed with that.
Thanks for letting us know. I'll synch it to blead in a day or two (allowing time for my own CPANtesters reports to get posted.)
Branch has now been updated so as to sync CPAN version 1.10 of Memoize into blead. Commit message now begins:
commit 926f0bc199cad2b04d2301fa310a5515e3e579d7 (HEAD -> memoize-cpan-synch-20220810, jkeenan/memoize-cpan-synch-20220810)
Author: Aristotle Pagaltzis <[email protected]>
AuthorDate: Sun Aug 14 19:35:41 2022 +0000
Commit: James E Keenan <[email protected]>
CommitDate: Sun Aug 14 19:53:57 2022 +0000
Memoize: sync with CPAN version 1.10
From Changes:
1.10 Thu 11 Aug 2022
* No warning when NORMALIZER returns undef (RT #143921).
This was a backcompat breakage in 1.09
1.09 Sun 31 Jul 2022
* Skip for thread safety tests on Perl 5.10.0
* Drastically improved Memoized::NDBM_File EXISTS shim
* Minimum Perl version set at 5.6
* Removal of Memoize::ExpireTest and Memoize::ExpireFile
Please review.
@bingos, @tonycoz: I will merge this p.r. into blead in two days unless I hear from you otherwise. Please review (if you so choose). Thanks.