Re: ncbi-cxx-toolkit-public - a monorepo for NCBI tools?
Andrius Merkys <merkys@debian.org> writes:
> seems like a monorepo for a bunch of NCBI tools. Can anyone confirm
> that?
To clarify, releases of BLAST+ and variants like IgBLAST are generally
based on heavily trimmed snapshots of release branches like [1];
however, each product releases on its own schedule, so their releases do
not in general line up with each other or correspond to any of the
overall C++ Toolkit's monthly releases.
The download link at the bottom of IgBLAST's online documentation [2]
still points to traditional release tarballs; IgBLAST just hasn't had a
release in almost two years.
I suppose we could consider tackling the full tree anyway -- we
historically glossed over the analogous distinction between releases of
NCBI's C Toolkit and of legacy BLAST -- but there are some additional
complications. In particular:
- The tree is *huge* -- the (gzipped) tarball alone is over 700 MB,
unpacking to roughly 3 GB, and even when using shared libraries, a
full amd64 build with debug symbols takes roughly an hour (or two with
a test-suite run thrown in) and consumes an additional ~14 GB, and the
200+ resulting shared libraries take up ~150 MB in total even after
stripping. (That said, partial builds are certainly an option, and
there is a plausible middle ground between splitting the shared
libraries up into individual binary packages and sticking them all
together into one big one.)
- There are no ABI stability guarantees, so executables would need
fairly tight dependencies on shared libraries.
[1] https://github.com/ncbi/ncbi-cxx-toolkit-public/tree/stable/29.0
[2] https://ncbi.github.io/igblast/
--
Aaron M. Ucko, KB1CJC (amu at alum.mit.edu, ucko at debian.org)
http://www.mit.edu/~amu/ | http://stuff.mit.edu/cgi/finger/?amu@monk.mit.edu
Reply to: