[Biopython] Entrez.efetch issue with the returning data type

Peter Cock p.j.a.cock at googlemail.com
Wed Feb 29 10:28:03 UTC 2012

On Wed, Feb 29, 2012 at 4:01 AM, Karolis Ramanauskas <karolisr at gmail.com> wrote:
> Good day,
> I think it would be a good idea to not rely on the NCBI defaults in
> Biopython and hardcode retmode and other defaults directly into the
> Biopython methods. Basically having defaults that Biopython
> guarantees. That way the defaults will not change haphazardly when
> NCBI decides to change things. Of course users will still be able to
> set their own parameters if they do not use default behavior, but this
> would reduce unexpected changes and the need to go over long stretches
> of code and change things.
> Karolis

Hi Karolis,

That has downsides too - take the NCBI QBLAST API for calling an
online BLAST search at the NCBI. Biopython has default values
which (I presume) once matched the NCBI, but the NCBI has changed
things. As a result, the defaults have diverged and we often see user
queries about why their BLAST results via Biopython are different.

You could write to the NCBI Entrez team and urge them to consider
backwards compatibility more strongly.


P.S. I've added an FAQ entry about EFetch defaults to the tutorial:

More information about the Biopython mailing list