docs: add CPAN compatibility reports for Scalar::Util and Memoize#497
Merged
docs: add CPAN compatibility reports for Scalar::Util and Memoize#497
Conversation
Detailed investigation of both modules against their CPAN test suites: - Scalar::Util (Scalar-List-Utils 1.70): 606/816 subtests pass (74.3%). All 14 exported functions implemented; isvstring is a stub, tainted always returns false (no taint mode), readonly partial. Most failures are in List::Util/Sub::Util functions. - Memoize 1.17: Core functionality fully working (7/16 test files pass). All failures are peripheral: deep recursion stack overflow, threads not available, DB_File shim bug. Good bundling candidate. Generated with [Devin](https://cli.devin.ai/docs) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Scalar::Util: - Fix isvstring() to actually check VSTRING type instead of always returning false. The VSTRING type infrastructure was already complete; only the isvstring() function was missing the check. List::Util: - Implement zip, zip_shortest, zip_longest (returns list of arrayrefs) - Implement mesh, mesh_shortest, mesh_longest (returns flat interleaved list) - These 6 functions were declared in @EXPORT_OK but had no Java backend Memoize: - Bundle Memoize 1.17 from perl5/cpan/Memoize/ into the JAR - Add import-perl5 config entries for Memoize.pm and Memoize/ submodules - Pure Perl module, all dependencies already satisfied Plan documents: - Add dev/modules/scalar_util.md with full bug analysis and fix plan - Add dev/modules/memoize.md with dependency analysis and bundling plan Generated with [Devin](https://cli.devin.ai/docs) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Add passing CPAN tests to the bundled module test suite: Scalar-List-Utils (13 tests): any-all, blessed, isvstring, max, maxstr, mesh, minstr, prototype, readonly, rt-96343, stack-corruption, sum0, zip Memoize (7 tests): basic, cache, expmod, expmod_t, flush, normalize, unmemoize All 20 tests pass under make test-bundled-modules. Generated with [Devin](https://cli.devin.ai/docs) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Generated with [Devin](https://cli.devin.ai/docs) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds detailed CPAN compatibility investigation reports for two important Perl core modules:
Scalar::Util (Scalar-List-Utils 1.70)
isvstringis a stub (always false),taintedalways returns false (no taint mode),readonlyonly detects compile-time constantsMemoize 1.17
correctness.t: StackOverflowError from 100k-deep recursion test (fixable with-Xss256m)threadsafe.t: Requiresthreads(not available)tie.t/tie_db.t:DB_File.pmshim has infinite recursion bugtie_storable.t: 1 subtest shortFiles
dev/cpan-reports/Scalar-Util.md-- full report with per-function and per-test breakdowndev/cpan-reports/Memoize.md-- full report with dependency analysis and bundling instructionsTest plan
jcpan -tGenerated with Devin