[Catalyst] building 'local' lib with dependencies for shipping

Fernan Aguero fernan.aguero at gmail.com
Tue Apr 26 20:30:49 GMT 2011


On Tue, Apr 26, 2011 at 11:43 AM, Nicholas Wehr
<catalyst at bionikchickens.com> wrote:
> a local::lib alternative is Shipwright; created by Best Practical the makers
> of RT defect tracker. its worth checking out as it does exactly what you're
> trying to do.

Nicholas,

thanks for your suggestion. I installed Shipwright and followed the
docs, and got started: shipwright imported my sources, identified
dependencies (not all of them, though) and downloaded the
corresponding packages from CPAN.

After that I ran the shipwright-builder script, and this went OK
through all the identified dependencies, but failed at the last step,
when attempting to build my catalyst app.

I'm clearly missing something. The 2 things I can see are:

i) I need to tell Shipwright what other dependencies are required by
my app. Currently the dependencies identified are a minimal list of
what I'd call 'base' dependencies. They do not include all the more
specific Catalyst subcomponents (plugins), nor DBIx::Class and its
subclasses, Template Toolkit, etc.
Where do I specify these? In my app Makefile? In a Shipwright config file?

ii) it seems like I need to first create a Makefile for my app? I
never did that ... I have a very basic skeleton created by the
catalyst.pl helper script, but after that initial skeleton, I started
coding away and using the 'lib' within my app 'as is' without taking
care of creating tests, or editing the Makefile.PL file.
Is this the reason of Shipwright failing to build my app? What should
I do to fix this?

Thanks in advance for any further help,

Cheers,

--
fernan

PS: last lines of output from shipwright-builder
[...]
Use of uninitialized value in string at ./bin/shipwright-builder line 560.
build tdrtargets test part failed, last output of build.log is:
	  Non-zero exit status: 1
	t/controller_user.t     (Wstat: 256 Tests: 3 Failed: 1)
	  Failed test:  3
	  Non-zero exit status: 1
	t/controller_userinput.t (Wstat: 256 Tests: 3 Failed: 1)
	  Failed test:  3
	  Non-zero exit status: 1
	t/model_mesh.t          (Wstat: 256 Tests: 1 Failed: 1)
	  Failed test:  1
	  Non-zero exit status: 1
	t/model_targets.t       (Wstat: 256 Tests: 1 Failed: 1)
	  Failed test:  1
	  Non-zero exit status: 1
	t/model_weightmodel.t   (Wstat: 256 Tests: 1 Failed: 1)
	  Failed test:  1
	  Non-zero exit status: 1
	Files=12, Tests=21, 26 wallclock secs ( 0.09 usr  0.02 sys + 17.78
cusr  1.14 csys = 19.03 CPU)
	Result: FAIL
	Failed 9/12 test programs. 9/21 subtests failed.
	make: *** [test_dynamic] Error 1
 at ./bin/shipwright-builder line 573
	main::_install('tdrtargets', 'GLOB(0x93606d8)') called at
./bin/shipwright-builder line 412
	main::install() called at ./bin/shipwright-builder line 276
exit
Script done, file is shipwright-builder.out

-- 
fernan



More information about the Catalyst mailing list