Bug#983239: libbio-db-ncbihelper-perl: (autopkg)test failures when network is available

2021-02-22 Thread Étienne Mollier
Hi Aaron, Hi Gregor,

Aaron M. Ucko, on 2021-02-21 17:57:37 -0500:
> Étienne Mollier writes:
> 
> > I have been looking in the issue below in the package
> > libbio-db-ncbihelper-perl.  If I understood correctly, the main
> > point of the package is to rely on resources made available on
> > the Internet.
> 
> I'm not sure I've been personally involved with this package, but that's
> my understanding as well.
> 
> > a perhaps magic index to refer to human genome, but maybe it is
> > a "well known index".)
> 
> Per [1], taxonomic ID *numbers* are stable in general, but the
> associated *names* occasionally change to reflect improved
> understandings of the underlying science.  AFAICT from [2] (as linked
> from [3]), this change is correct and legitimate; moreover, it looks
> like 'Actinobacteria' should now appear in $n->common_names, if anyone
> wants to verify that.
> 
> [1] https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7408187/
> [2] 
> https://www.microbiologyresearch.org/content/journal/ijsem/10.1099/ijsem.0.003920
> [3] 
> https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info=1760=3=f=1=1

Thank you very much!  I humbly have to admit I know nothing to
taxonomy classification, but it's nice to know that people try
to keep improving one of the references.  This was enough to
brighten my day.  :)

Will see how upstream changes the entry, but given our thoughts,
I would guess updating the expected $n->scientific_name with the
new value would be the way to go.  Out of curiosity, from the
$n->common_names I obtained the character string:

authorityActinomycetia (Stackebrandt et al. 1997) Salam et al. 2020


gregor herrmann  writes:
> I see your point, and in the end it's a matter of taste, I guess; or
> a choice between two bad options:
> - skipping tests and missing bugs
> - enabling tests and having to deal with failures because of internet
>   problems, server problems, changes in returned data etc.
> 
> Having seen too much of the latter, I prefer the former but as I
> said, that's not the only option :)

In doubt, since the package is team maintained and developer
time is precious, I believe I will defer to your experience.

I replace the "needs-internet" by "superficial", and set
NO_NETWORK_TESTING=1 in debian/tests/pkg-perl/smoke-env.
Hopefully if further offline testing became possible, that would
allow us to remove the "superficial" flag in the future.

> As a side note to the autopkg-tests: The "heavy" tests don't exists,
> that was just an idea when we started with the framework, so you can
> remove the last paragraph.

Thanks for the side note, I removed the entry.

Thanks again to you both for your time,
Kind Regards,
-- 
Étienne Mollier 
Fingerprint:  8f91 b227 c7d6 f2b1 948c  8236 793c f67e 8f0d 11da
Sent from /dev/pts/2, please excuse my verbosity.


signature.asc
Description: PGP signature


Bug#983239: libbio-db-ncbihelper-perl: (autopkg)test failures when network is available

2021-02-21 Thread Aaron M. Ucko
Étienne Mollier writes:

> I have been looking in the issue below in the package
> libbio-db-ncbihelper-perl.  If I understood correctly, the main
> point of the package is to rely on resources made available on
> the Internet.

I'm not sure I've been personally involved with this package, but that's
my understanding as well.

> a perhaps magic index to refer to human genome, but maybe it is
> a "well known index".)

Per [1], taxonomic ID *numbers* are stable in general, but the
associated *names* occasionally change to reflect improved
understandings of the underlying science.  AFAICT from [2] (as linked
from [3]), this change is correct and legitimate; moreover, it looks
like 'Actinobacteria' should now appear in $n->common_names, if anyone
wants to verify that.

[1] https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7408187/
[2] 
https://www.microbiologyresearch.org/content/journal/ijsem/10.1099/ijsem.0.003920
[3] 
https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info=1760=3=f=1=1

> In any case, I though upstream would be interested, so I took
> the liberty to open an issue in their VCS.

Thanks!

gregor herrmann  writes:

> I still think that NO_NETWORK_TESTING=1 should be set in debian/rules
> to make sure there's no internet access attempted during the build,
> as that is a policy violation.

Right, we're just discussing what to do about the autopkgtest.

-- 
Aaron M. Ucko, KB1CJC (amu at alum.mit.edu, ucko at debian.org)
http://www.mit.edu/~amu/ | http://stuff.mit.edu/cgi/finger/?a...@monk.mit.edu



Bug#983239: libbio-db-ncbihelper-perl: (autopkg)test failures when network is available

2021-02-21 Thread gregor herrmann
On Sun, 21 Feb 2021 22:23:20 +0100, Étienne Mollier wrote:

> As the purpose of the package is to fetch resources on the web,
> I did something better described by the following commit[1].
> 
> [1] 
> https://salsa.debian.org/med-team/libbio-db-ncbihelper-perl/-/commit/bde35697e319417ae17367d51aaa868c43e1715d
> 
> It looked to me like the most sensible thing to do, since the
> entire set of tests part of smoke are otherwise skipped.

I see your point, and in the end it's a matter of taste, I guess; or
a choice between two bad options:
- skipping tests and missing bugs
- enabling tests and having to deal with failures because of internet
  problems, server problems, changes in returned data etc.

Having seen too much of the latter, I prefer the former but as I
said, that's not the only option :)


I still think that NO_NETWORK_TESTING=1 should be set in debian/rules
to make sure there's no internet access attempted during the build,
as that is a policy violation.

(Sorry if that's already the case for _this_ package, I might confuse
the 3 libbio.*-perl packages I looked at today and which all have a
similar situation.)

As a side note to the autopkg-tests: The "heavy" tests don't exists,
that was just an idea when we started with the framework, so you can
remove the last paragraph.


Cheers,
gregor

-- 
 .''`.  https://info.comodo.priv.at -- Debian Developer https://www.debian.org
 : :' : OpenPGP fingerprint D1E1 316E 93A7 60A8 104D  85FA BB3A 6801 8649 AA06
 `. `'  Member VIBE!AT & SPI Inc. -- Supporter Free Software Foundation Europe
   `-   NP: Peter, Paul and Mary: Leaving On A Jet Plane


signature.asc
Description: Digital Signature


Bug#983239: libbio-db-ncbihelper-perl: (autopkg)test failures when network is available

2021-02-21 Thread Étienne Mollier
Control: tag -1 upstream
Control: forwarded -1 https://github.com/bioperl/Bio-DB-NCBIHelper/issues/6

Hi Aaron,

I have been looking in the issue below in the package
libbio-db-ncbihelper-perl.  If I understood correctly, the main
point of the package is to rely on resources made available on
the Internet.

On Sun, 21 Feb 2021 14:05:39 +0100 gregor herrmann  wrote:
> not ok 44
> 
> #   Failed test at t/Taxonomy.t line 102.
> #  got: 'Actinomycetia'
> # expected: 'Actinobacteria'

For reference, I see along those lines:

101 ok $n = $db->get_Taxonomy_Node('1760');
102 is $n->scientific_name, 'Actinobacteria';

I would think the test 44 in t/Taxonomy.t is fooled following an
update in the resource the package fetches on the Internet
(https://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi if I
trust the package description).  Hence I would be tempted to
think the kind of bacteria is not necessarily that important,
but that a character string could be fetched.  But I'm not at
all a specialist of the field so prefer referring to your expert
view.  (and I am also concerned that the previous tests rely on
a perhaps magic index to refer to human genome, but maybe it is
a "well known index".)

In any case, I though upstream would be interested, so I took
the liberty to open an issue in their VCS[0].

[0] https://github.com/bioperl/Bio-DB-NCBIHelper/issues/6


Gregor, Many Thanks for having spotted this in the first place!

As the purpose of the package is to fetch resources on the web,
I did something better described by the following commit[1].

[1] 
https://salsa.debian.org/med-team/libbio-db-ncbihelper-perl/-/commit/bde35697e319417ae17367d51aaa868c43e1715d

It looked to me like the most sensible thing to do, since the
entire set of tests part of smoke are otherwise skipped.
I am not sure if there were more simple ways to approach that.
I am concerned that all test are skipped and considered valid.
Here is what I see if I smoke-env NO_NETWORK_TESTING=1:

autopkgtest [18:43:55]: test autodep8-perl-build-deps: 
/usr/share/pkg-perl-autopkgtest/runner build-deps
autopkgtest [18:43:55]: test autodep8-perl-build-deps: 
[---
t/EntrezGene.t . skipped: NO_NETWORK_TESTING
t/GenBank.t  skipped: NO_NETWORK_TESTING
t/GenPept.t  skipped: NO_NETWORK_TESTING
t/Query-Genbank.t .. skipped: NO_NETWORK_TESTING
t/RefSeq.t . skipped: NO_NETWORK_TESTING
t/Taxonomy.t ... skipped: NO_NETWORK_TESTING
Files=6, Tests=0,  0 wallclock secs ( 0.02 usr  0.00 sys +  0.07 cusr  
0.00 csys =  0.09 CPU)
Result: NOTESTS
autopkgtest [18:43:55]: test autodep8-perl-build-deps: 
---]
autopkgtest [18:43:55]: test autodep8-perl-build-deps:  - - - - - - - - 
- - results - - - - - - - - - -
autodep8-perl-build-deps PASS

I'm sorry, I'm not sure that was that much of a Low Hanging
Fruit, but that might do for this month's session hopefully.  :)

Thanks for your thoughts,
-- 
Étienne Mollier 
Fingerprint:  8f91 b227 c7d6 f2b1 948c  8236 793c f67e 8f0d 11da
Sent from /dev/pts/8, please excuse my verbosity.


signature.asc
Description: PGP signature


Bug#983239: libbio-db-ncbihelper-perl: (autopkg)test failures when network is available

2021-02-21 Thread gregor herrmann
Source: libbio-db-ncbihelper-perl
Version: 1.7.6-2
Severity: serious
Justification: autopkgtest is relevant, network access is a policy violation

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA512

As seen on ci.d.n:
https://ci.debian.net/data/autopkgtest/testing/amd64/libb/libbio-db-ncbihelper-perl/10589853/log.gz

we have a test failure:

not ok 44

#   Failed test at t/Taxonomy.t line 102.
#  got: 'Actinomycetia'
# expected: 'Actinobacteria'


This happens because internet access is available, and internet using
tests are disabled during not disabeld.

I think they are supposed to be disabled during build, but this
doesn't seem to work either:

t/EntrezGene.t . skipped: no host: www.google.com
t/GenBank.t  skipped: no host: www.google.com
t/GenPept.t  skipped: no host: www.google.com
t/Query-Genbank.t .. skipped: no host: www.google.com
t/RefSeq.t . skipped: no host: www.google.com
t/Taxonomy.t ... skipped: no host: www.google.com

means that libtest-requiresinternet-perl doesn't find internet access
(expected in my chroot), whereas it would output something different
if NO_NETWORK_TESTING was respected. (Also: what is --network
supposed to do?)

With

override_dh_auto_test:
NO_NETWORK_TESTING=1 dh_auto_test

we get:

t/EntrezGene.t . skipped: NO_NETWORK_TESTING
t/GenBank.t  skipped: NO_NETWORK_TESTING
t/GenPept.t  skipped: NO_NETWORK_TESTING
t/Query-Genbank.t .. skipped: NO_NETWORK_TESTING
t/RefSeq.t . skipped: NO_NETWORK_TESTING
t/Taxonomy.t ... skipped: NO_NETWORK_TESTING


Summary:
- - the tests try to go out to the internet (policy violation during
  build)
- - if this succeeds the build fails (which doesn't happen in
  restricted chroots)
- - autopkgtests fail
- - setting NO_NETWORK_TESTING=1 in d/rules help
- - doing the same in debian/tests/pkg-perl/smoke-env fixes the
  autopkgtest failure


Cheers,
gregor
  

- -- System Information:
Debian Release: bullseye/sid
  APT prefers unstable
  APT policy: (990, 'unstable'), (500, 'unstable-debug'), (500, 
'oldoldstable'), (500, 'experimental'), (500, 'testing'), (500, 'stable'), 
(500, 'oldstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.10.0-3-amd64 (SMP w/4 CPU threads)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=C, LC_CTYPE=de_AT.utf8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/bash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

-BEGIN PGP SIGNATURE-

iQKTBAEBCgB9FiEE0eExbpOnYKgQTYX6uzpoAYZJqgYFAmAyWqJfFIAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEQx
RTEzMTZFOTNBNzYwQTgxMDREODVGQUJCM0E2ODAxODY0OUFBMDYACgkQuzpoAYZJ
qgZpqg//QFq38bzNVQzMtyxMbWHQ7rHWERS2IcdGdsu0PIkluPTX86dn/XOvGZgG
XlTSJVlhoaZLU9/+O6D+IGUTMGrMCMskNW7sDfB3Q5eTISCCf25ua93iXQaD8iz9
HFScCQx/oc9lAhXyxZwa9qvgMOjNkyFGvz0chjJhqhwsBp9o7mnFFwMd9a675xgv
CgXSecGvbkO2ri951Qj42rHblEC1GI1dh12aDZKPuopFkmF43TT5Encem5Ekbw5N
ShP2LJsw9+kJ0MEnzClHSYZSetrkqDise/bgkC0icxARzFz7FZVsskwJQq/fx4jm
JUjTtiZTDPZlFym3bw2eN2x46187UpdEYF7x1Ez6RxxwUMYOxdZTWf+EzGkXgnQA
5Nd8PC907tzHYsz3U17ABIRZn1pploxwn4S0Rt58m/Z1d4UIhywpdJPw8Ioq3o+6
KvWqdO2mWQxOX0UucvURSNjlMqyX3qifqPvj8yCQRBuPEu2oL3ai3vlN6rzuYVq4
qgWoWofLe+l6OUFt95ZSzRfUw7E9n+XJGjrfcL5hkvdmRa73LAWDkLcgyyqcB7th
nwshKOA7h1/IvRSdQJbBenddEL6UtsE6auhkw0300ifF3PHhVxwz1H7zDTKF1JLx
z9Bmlqh9cjNx+G4wyXK5LZA83NCgsF9vSzOBwb1KLtc/lx9OgUI=
=abvI
-END PGP SIGNATURE-