Hi all,

Last week (and this week), I've taken Test::Dependencies and modified it to
do something moderately useful to our project (and most projects): it now
also processes Moose's 'with' and 'extends' statements in addition to
'use', the module takes a CPAN::Meta::Requirements object as an argument to
check against -- instead of sourcing its dependencies itself from a
(MY)META file -- meaning it can now be used with 'cpanfile' too; and some
minor improvements.

Once we fix the issues listed below, I would like to keep doing the
dependency tests with this modified version. I'll commit the modified
module to our tree in t/lib and in the mean time (keep trying to) contact
the author to see how to handle the situation to get it published on CPAN.

Comments?

These are the results:
 * We require 4 core modules which were in Perl Core before v5.10.1:
  - Digest::MD5
  - Locale::Maketext
  - MIME::Base64
  - Math::BigFloat
 * We don't (directly) use these dependencies which we *do* declare:
  - App::LedgerSMB::Admin
  - Image::Size
  - LaTeX::Driver
  - PGObject::Util::DBAdmin
  - Template::Plugin::Latex
  - Starman
 * We use these non-core modules which aren't in the dependency listing:
  - App::LedgerSMB::Admin::Database
  - CGI::Simple::Standard
  - Moose::Role
  - Moose::Util::TypeConstraints
  - OpenOffice::OODoc::Styles
  - Template::Latex
  - Template::Parser
  - Template::Provider
  - Try::Tiny

The last category is easily addressible; we should simply list these in the
cpanfile. CPAN has explicit instructions that all depended on modules
should be listed and not one per distribution, in case things get packaged
differently at some future date.

I think the first category can be resolved pretty quickly too: we depend on
a fully working core Perl module set (unsurprisingly). So, these can be
removed from the cpanfile.

In the middle category, I don't understand the presence of "Image::Size":
it's there because we need to detect image sizes when generating PDF/PS
output. However, we don't actually use it?
As for Starman: we're not explicitly referencing the package but we do use
it through its scripts.
Then for the others: these are deps-of-deps for which we need a specific
version for our application to work correctly. I think I should implement
an 'ignore' list for those.


-- 
Bye,

Erik.

http://efficito.com -- Hosted accounting and ERP.
Robust and Flexible. No vendor lock-in.
------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
_______________________________________________
Ledger-smb-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ledger-smb-devel

Reply via email to