[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFP fpr bioperl's Bio-EUtilities



My suggestion is to take the avenue of easiest solution first, then most stable solution long-term if needed.  

The easiest may be to move the network tests to ‘xt’, which as Carnė mentioned would be run upon release only.  This should be easy enough w/ a Dist::Zilla release.  Longer term a mock setup may be better.

chris

On 1/23/17, 9:03 AM, "carandraug@gmail.com on behalf of Carnë Draug" <carandraug@gmail.com on behalf of carandraug+dev@gmail.com> wrote:

    On 23 January 2017 at 12:40, Andreas Tille <andreas@an3as.eu> wrote:
    > Hi Carnė,
    >
    > On Fri, Jan 20, 2017 at 05:44:00PM +0000, Carnė Draug wrote:
    >> I have filled a RFP (bug # 852004) for bioperl's Bio-EUtilities
    >> package [1].  Unlike Bio-Coordinate, which was split from bioperl and
    >> was recently packaged in Debian, Bio-EUtilities development started
    >> already after bioperl commenced its splitting.
    >>
    >> I was wondering if it was possible for the debian-med team to package
    >> it.  While I am not a debian maintainer, I am one of the
    >> Bio-EUtilities developers, have an interest on seeing it packaged in
    >> Debian, and I'm willing to support it upstream.
    >
    > I have commited some initial packaging to
    >
    >    https://anonscm.debian.org/git/debian-med/libbio-eutilities-perl.git
    >
    > This build fails due to the failure of several tests - as far as I can
    > see due to the attempt to access the internet.  It would help if you
    > could provide an option: "Just do all tests than can be done offline"
    > since the Debian packaging process needs to run fully offline.
    >
    > Kind regards
    >
    >      Andreas.
    
    I have asked on #debian-perl if there was any standard method or
    debian preferred method to skip those tests and apparently there is
    none.  But there are some suggestions that seem to be common and
    acceptable to the Debian.
    
    1. check for an environment variable that defines whether network
    tests should be skipped.  Some variables used in Debian are
    NO_NETWORK, NOINTERNET, TEST_INTERNET, and NETWORK_TESTING.  See for
    example discussion on debian bug #764868 [1]
    
    2. mock EUtilities using Test::LWP::UserAgent.  This is probably the
    most involved but probably the technically most correct way.  It has
    the problem of not failing if upstream service ever changes (but maybe
    if that happens and only the testsuite notices, then this whole module
    is not needed).
    
    3. move all tests from t/ to xt/ so that they are only ran at release
    time by the package author "since obviously if the author isn't
    running their own tests before releasing, you already have a bigger
    problem"
    
    Note that the test must not even attempt network access [2] so
    skipping the test because a ping to the entrez servers fails is also
    not allowed.
    
    I'm CC'ing Chris Fields (also developer on Bio-EUtilities) to discuss
    what would Debian and upstream prefer.
    
    Carnë
    
    [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=764868
    [2] https://www.debian.org/doc/debian-policy/
    


Reply to: