Hi Aaron,

On 2025-09-25 17:43, Aaron M. Ucko wrote:
Andrius Merkys <[email protected]> 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.

Thanks for the explanation. I now see that individual tool schedules are still maintained. For IgBLAST I will look into backporting a patch for GCC-15 issue.

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.

OK, I see. Maybe then the current approach of sticking to separate trimmed tarballs is for the best.

Thanks a lot,
Andrius

[1] https://github.com/ncbi/ncbi-cxx-toolkit-public/tree/stable/29.0
[2] https://ncbi.github.io/igblast/

Reply via email to