Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Aug 2014 04:08:54 +0800
From:      Sunpoet Po-Chuan Hsieh <sunpoet@freebsd.org>
To:        Kurt Jaeger <pi@freebsd.org>
Cc:        "svn-ports-head@freebsd.org" <svn-ports-head@freebsd.org>, "svn-ports-all@freebsd.org" <svn-ports-all@freebsd.org>, Andrej Zverev <az@freebsd.org>, "ports-committers@freebsd.org" <ports-committers@freebsd.org>
Subject:   Re: svn commit: r366405 - in head/databases: . p5-Net-Async-CassandraCQL
Message-ID:  <CAMHz58T7c1PXJ7J1bU8N4NnCKHindqmub7yuJ0zxgFQrUn_SDg@mail.gmail.com>
In-Reply-To: <20140829184115.GL42528@f10.opsec.eu>
References:  <201408281407.s7SE77sA063958@svn.freebsd.org> <CAD5bB%2Bja4wxWqG1SR88ORm4kyabTqd4ZpaZRTMwJT%2BHnV6O0-w@mail.gmail.com> <20140829184115.GL42528@f10.opsec.eu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Aug 30, 2014 at 2:41 AM, Kurt Jaeger <pi@freebsd.org> wrote:

> Hi!
>
> > In real life, modules from Test:: namespace usually requires only for
> > tests. No issue for people who using binary packages, but extra deps for
> > people who still using ports.
> >
> http://cpansearch.perl.org/src/PEVANS/Net-Async-CassandraCQL-0.11/Build.PL
>
> If I build it in poudriere with the p5-Test-* ports as TEST_DEPENDS
> instead of BUILD_DEPENDS, the message during build is:
>
> [...]
> Checking prerequisites...
>   build_requires:
>     !  Test::Identity is not installed
>     !  Test::Refcount is not installed
>
> ERRORS/WARNINGS FOUND IN PREREQUISITES.  You may wish to install the
> versions
> of the modules indicated above before proceeding with this installation.
> [...]
>
> See
>
>
> http://people.freebsd.org/~pi/logs/databases__p5-Net-Async-CassandraCQL-10a-1409337481.txt
>
> http://people.freebsd.org/~pi/logs/databases__p5-Net-Async-CassandraCQL-91a-1409337481.txt
>
> http://people.freebsd.org/~pi/logs/databases__p5-Net-Async-CassandraCQL-84i-1409337481.txt
>
> So I assume BUILD_DEPENDS is correct. Do you see other options
> on how to handle this ?
>
> --
> pi@FreeBSD.org         +49 171 3101372                6 years to go !
>
>
Hi,

TEST_DEPENDS is correct.
The author should use "test_requires" instead of "build_requires" in this
case.
The following results show that Test::{Identity,Refcount} are only for test
purpose and not required for runtime.

% grep -r Test::Identity *
Build.PL:      'Test::Identity' => 0,
META.json:            "Test::Identity" : "0",
META.yml:  Test::Identity: '0'
t/25clustering-prefer-dc.t:use Test::Identity;
t/21prepare.t:use Test::Identity;
t/22clustering.t:use Test::Identity;
t/20connect.t:use Test::Identity;
t/23clustering-primaries.t:use Test::Identity;
t/24clustering-events.t:use Test::Identity;

% grep -r Test::Refcount *
Build.PL:      'Test::Refcount' => 0,
META.json:            "Test::Refcount" : "0"
META.yml:  Test::Refcount: '0'
t/25clustering-prefer-dc.t:use Test::Refcount;
t/21prepare.t:use Test::Refcount;
t/22clustering.t:use Test::Refcount;
t/23clustering-primaries.t:use Test::Refcount;
t/24clustering-events.t:use Test::Refcount;

For p5-* ports, please make sure the modules listed in Build.PL or
Makefile.PL are truly required.
At least a simply "grep" would help to determine if TEST_DEPENDS is more
suitable, especially for Test::* dependencies.

BTW, there are something can be improved in the Makefile:
- MASTER_SITE_SUBDIR is unnecessary.
- Please respect minimal version requirement in Build.PL / Makefile.PL, e.g.
  Future: '0.17'
  IO::Async::Loop: '0.54'
  IO::Async::Stream: '0.59'
  Protocol::CassandraCQL: '0.11'
-
"devel/p5-Devel-GlobalDestruction>0:${PORTSDIR}/devel/p5-Devel-GlobalDestruction"
is incorrect

Regards,
sunpoet



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAMHz58T7c1PXJ7J1bU8N4NnCKHindqmub7yuJ0zxgFQrUn_SDg>