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

deps graph always displays 'core' and no test results for core modules, even if the version is important #36

Open
karenetheridge opened this issue Jul 9, 2014 · 1 comment

Comments

@karenetheridge
Copy link

Here's an example: http://deps.cpantesters.org/?module=Dist%3A%3AZilla%3A%3APluginBundle%3A%3AAuthor%3A%3AETHER&perl=5.10&os=any+OS

That's Dist::Zilla::PluginBundle::Author::ETHER at perl 5.10.x. Test::More is still shown as "core module" with no test results, even though Test::More in 5.10.0 was at 0.72 and in 5.10.1 was at 0.92, and the distribution sets a hard prereq of Test::More 0.94 -- therefore the core status of Test::More is irrelevant here, and a newer version must be fetched from cpan -- so the test results of Test::More 0.94 (and its dependencies, if it has some that weren't in core in 5.10.x) should be displayed.

@DrHyde
Copy link
Owner

DrHyde commented Sep 5, 2014

The problem here is that pre-requisites are handled in a random order (hash order), and depth-first, with modules being skipped if they are already in the tree. Whichever of your dependencies it finds first that lists a dependency on Test::More will "win", and if the version in core satisfies that, then that's what gets listed.

A rather more intelligent implementation would first build the tree without skipping anything it's already found, then find the highest required version of each module in the tree and knock out the others, and only then check whether core can satisfy it. This will be quite a bit of work though, and I'm unlikely to get to it quickly. I'd be accept a pull request though if you can find the time before I do.

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

No branches or pull requests

2 participants