This is why you should always declare *all* your pre-requisites in Makefile.PL, even those that you know are pulled in by other pre-reqs, and you should always 'use' *all* the modules you refer to.
Can I assume that you do not mean that you should also list those packages that you do not directly use?
For example, let's assume that I use the Foo::Bar package, and Foo::Bar uses Biz::Bang and Biz::Biff under the hood. I also make a call to Biz::Biff::frobnitz() from within my code. I am assuming that you are saying:
- I should do a use Biz::Biff.
- I should list Foo::Bar and Biz::Biff as prerequisites.
I am also assuming that you are not saying that I should list Biz::Bang as a prerequisite, as that is an implementation detail of Foo::Bar, and unrelated to my own code.
I just want to clarify my understanding, since my parser is coming up with two different meanings of your statement. If this is the correct reading of your statement, I agree 100%. As a clarification, I would probably s/your pre-requisites/your direct pre-requisites/.
|