| Summary: | perl-rdepends.txt missing many dependencies for perl-module-test-more | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Tim Orling <tim.orling> | ||||
| Component: | core | Assignee: | Tim Orling <tim.orling> | ||||
| Status: | RESOLVED FIXED | QA Contact: | |||||
| Severity: | normal | ||||||
| Priority: | Medium+ | CC: | meta.mr.watcher, meta.watcher, richard.purdie, ross.burton | ||||
| Version: | 2.7 | ||||||
| Target Milestone: | 2.8 M2 | ||||||
| Hardware: | x86 | ||||||
| OS: | Multiple | ||||||
| Whiteboard: | Backport to 2.7 | ||||||
| OS type for building Yocto: | --- | Type of Regression: | --- | ||||
| Verified: | Documentation change: | Don't know | |||||
| Attachments: |
|
||||||
perl-rdepends.txt is in fact auto-generated by this monstrosity: http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-devtools/perl-sanity/perl_5.28.1.bb#n257 So I'd suggest you figure out why it doesn't pick up the dependencies from the attached diff (yes I know it's an awful write-only hack - I didn't write it). Better yet, rewrite it as a proper script, like we have in python recipes. Just to make it clear, even though I did the perl version upgrade, I am not maintaining the recipe going forward. The job has to be taken by people with an actual interest in perl :) I wonder if /usr/lib/rpm/perl.req from rpm-native would do any better job of finding deps? At the every least we should split that code fragment Alex linked to out and try and clean it up into something readable/maintainable... /usr/lib/rpm/perl.req helps, but is still missing dependencies. For now, following RP's lead earlier this month, I am simply hand coding the dependencies in perl-rdepends.txt. In particular, quilt-ptest and libxml-parser-perl are failing spectacularly on ptest dependencies. Patches in review: https://patchwork.openembedded.org/series/17926/ |
Created attachment 4444 [details] Required dependencies to make perl-module-test-more functional The code to generate perl-rdepends.txt is missing a lot of dependencies for Test::More (and almost certainly other modules, but this is the one that blocks some ptest enablements I am working on). I believe that the auto builder jobs are including perl-modules and masking the missing dependencies. That is a not a solution for all use-cases (especially resource limited systems). The attached diff is what is required to be able to actually make perl-module-test-more functional (as tested by `perl -MTest::More` in qemux86). This took hours of build-test-fix-repeat. Not sure what the _right_ way to fix this is, nor how we can be smarter about the dependencies. Even with some intelligence to look at the dependencies reported on metacpan.org will not be enough, as not all modules have accurate/complete reporting of dependencies. It has to be runtime tested. Unfortunately, the effort to generate this diff is not scalable.