Recent Releases of btllib
btllib - btllib v1.7.5
Compiled python wrappers with SWIG 4.2.1
Scientific Software - Peer-reviewed
- C++
Published by jwcodee about 1 year ago
btllib - btllib v1.7.4
Fixed Phred average calculation
Scientific Software - Peer-reviewed
- C++
Published by jwcodee about 1 year ago
btllib - btllib v1.7.3
- Fixed latest macOS compilation errors
Scientific Software - Peer-reviewed
- C++
Published by parham-k over 1 year ago
btllib - btllib v1.7.2
- Added an increment value parameter to the insert functions in counting Bloom filters
Scientific Software - Peer-reviewed
- C++
Published by parham-k almost 2 years ago
btllib - btllib v1.7.1
- Fixed segfault when hashing a sequence ending in a masked k-mer
Scientific Software - Peer-reviewed
- C++
Published by parham-k almost 2 years ago
btllib - btllib v1.7.0
- Converted ntHash to a header-only library
- Improved ntHash's performance
- Added base substitution functionality to ntHash
- Added aaHash citation to README
Scientific Software - Peer-reviewed
- C++
Published by parham-k about 2 years ago
btllib - btllib v1.6.2
- Fixed issues related to coverage tests being included in release
- Added a utility function to calculate the Phred average given a string
- Enabled strict mode in bash scripts
- Fixed
const-related clang-tidy complaints
Scientific Software - Peer-reviewed
- C++
Published by parham-k over 2 years ago
btllib - btllib v1.6.1
- Added coverage tests
- Fixed compilation issues when using GCC on macOS
- ntHash: Fixed performance issues due to improper function inlining
- ntHash: Fixed SeedNtHash's copy constructor
- aaHash: Added ambiguous amino acid IUPAC code
- RandSeq: Added option for seed value in the pseudo-random number generator
Scientific Software - Peer-reviewed
- C++
Published by parham-k over 2 years ago
btllib - btllib v1.6.0
- Added aaHash, a rolling hash algorithm for amino acid sequences
- Added more tests for the Python wrappers
- Fixed a thread-safety issue in miBF
Scientific Software - Peer-reviewed
- C++
Published by parham-k almost 3 years ago
btllib - btllib v1.5.1
- Updated the
wrapscript to generate more consistent wrappers - Fixed segmentation fault when using SeqReader in Python
- Add basic unit tests for the Python wrappers
Scientific Software - Peer-reviewed
- C++
Published by parham-k almost 3 years ago
btllib - btllib v1.5.0
- Added a
RandomSequenceGeneratorAPI for generating random nucleotide or amino acid sequences - Added
seqgenrecipe, a tool for creating random DNA/RNA data - Added quality-based filtering to indexlr
- Added minimizer quality to indexlr output
- Added deletion support to counting Bloom filters
- Fixed issue with outputting barcode (without ID) for stLFR reads in indexlr
- Fixed CBF
containsfunction
Scientific Software - Peer-reviewed
- C++
Published by parham-k almost 3 years ago
btllib - btllib v1.4.10
- Fixed a multithreading issue in SeqReader SAM module.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 about 3 years ago
btllib - btllib v1.4.9
- Preferably make pipes in /dev/shm to reduce the chance of a filesystem not supporting pipes.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 3 years ago
btllib - btllib v1.4.8
- Fixed the issue where some files (submodules) were not included in the release.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 3 years ago
btllib - btllib v1.4.7
- Check whether Link Time Optimization is supported in compile script.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 3 years ago
btllib - btllib v1.4.6
- Enabled Link Time Optimization and removal of assertions in code in the
compilescript.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 3 years ago
btllib - btllib v1.4.5
- Fixed the issue where (Kmer)CountingBloomFilter and SeqReader and SeqWriter Format class were not provided by the Python interface.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 3 years ago
btllib - btllib v1.4.4
- Fixed an issue where calling the compile script outside of btllib dir didn't work.
- By default, btllib now preferentially builds at
/tmpinstead of$TMPDIR, as$TMPDIRis not necessarily removed on reboot. - Updated documentation.
- Added threshold parameter to
get_fpr()for Counting Bloom filters, giving you the false positive rate for a given threshold. - Fixed an OpenMP compile error.
- Added a check for whether the Bloom filter exists when loading from a file.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 almost 4 years ago
btllib - btllib v1.4.3
- Added a
setup.pyfile inbtllib/install/lib/btllib/python/dir that allows installing the wrappers as a Python package. - Fixed an issue with
compilescript where it didn't detect missing temporary dependencies.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 almost 4 years ago
btllib - btllib v1.4.2
- btllib building is now done in a temporary dir in order not to change the source dir (relevant for some build systems like automake)
- compile script rewritten in Python
- Python wrappers are now installed to
lib/btllib/python/
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 almost 4 years ago
btllib - btllib v1.4.1
- Fixed installation of header files of included subprojects.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 almost 4 years ago
btllib - btllib v1.4.0
- Fixed a bug when checking the validity of SeqReader and Indexlr records by converting them to bools.
- Moved more code from include/ into src/.
- The helper spawner process now belongs to a different process groups, ignoring signals like keyboard interrupt. In past versions this caused the helper process to crash with an error message if the main process was interrupted.
- Added more insertion/querying methods to the counting bloom filters
- Added a threadsafe get_basename utility function
- Improved error printing for SeqWriter
- sdsl is now a submodule and a meson subproject. This approach helped made
meson distwork, allowing us to standardize packaging self contained btllib - NtHash has been updated to NtHash2. The new hash function has different, incompatible output compared to the old version. Canonical hash value is now calculated by adding the forward and the reverse, instead of picking the lower one in order to remove the bias towards lower values.
- A number of optimizations have been done to NtHash code.
- Fixed a bug where SeedNtHash produced wrong hash values if a seed has 0s at its ends.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 almost 4 years ago
btllib - btllib v1.3.0
- btllib is now a compiled static library. From now on, C++ code requires running
btllib/compileand-L btllib/lib -l btllibcompiler flags. The rationale for this change was that header-only code can become ugly easily, doesn't allow one definition for project-global objects, and makes compile time longer. - Fixed a bug with
SeqWriterwhere it didn't overwrite an existing file. btllib/compilescript again accepts environment variables:CFLAGS,CXXFLAGS,LDFLAGS
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 almost 4 years ago
btllib - btllib v1.2.0
- Updated ntHash with new spaced seed algorithm that makes them much faster if they have long streches of 1s or 0s.
- Added BlindNtHash, which is manually fed characters in order to be able to implement implicit de Bruijn Graph.
- Added
roll_back()to ntHash to allow rolling backwards. - Added
peek()andpeek_back()to ntHash to peek the next character as if the roll was called. - SeqWriter can now use the
withconstruct in Python. - Fixed a big with SeqReader when reading SAM files that disallowed
tlencolumn to be negative. - Java wrappers removed, as they require maintenance but we were not using them.
- Renamed
compile-wrapperstocompileas a preparation for a compiled library. - Compile script now ignores environment
CFLAGS,CXXFLAGS, andLDFLAGSsince it uses its own internally.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 almost 4 years ago
btllib - btllib v1.1.9
- Fixed a deadlock in indexlr when processing an empty file.
- Fixed a few data races thanks to thread sanitization.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 about 4 years ago
btllib - btllib v1.1.8
- Optimizations for Bloom filters, SeqReader, and Indexlr.
- SeedNtHash Python wrappers fixed.
- Added more tests.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 about 4 years ago
btllib - btllib v1.1.7
- Remove a redundant operator that sometimes causes compilation error.
- Code style improvements.
- More tests.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 4 years ago
btllib - btllib v1.1.6
- Added multiline FASTQ reading capability to SeqReader.
- Added new tests.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 4 years ago
btllib - btllib v1.1.5
- Fixed the issue where Python wrappers return SWIG objects instead of native types.
- Fixed a redundant error message on exit.
- Extra error checking and handling.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 4 years ago
btllib - btllib v1.1.4
- Fix compilation issues.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 4 years ago
btllib - btllib v1.1.3
- Delegate SAM file reading to samtools fastq command.
- Add reading multiline FASTA to SeqReader.
- Added extra error checking.
- Fixed a bug where running btllib on an NTFS filesystem would cause malfunction.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 4 years ago
btllib - btllib v1.1.2
- Fix an indexlr edge case.
- Remove unnecessary sdsl-lite compiled files.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 4 years ago
btllib - btllib v1.1.1
- Fix compile-wrappers script not downloading temporary dependencies.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 4 years ago
btllib - btllib v1.1.0
- Improve Python wrapper compilation, including fixing some MacOS issues.
- Move away from git submodule mechanism to include all files in the releases.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 4 years ago
btllib - btllib v1.0.9
- Fix a couple of rare multithreading bugs in SeqReader.
- Add range based iteration for SeqReader in C++ and Python.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 4 years ago
btllib - btllib v1.0.8
- Make ntHash API consistent with Bloom filters. k and h parameters have swapped positions in the constructor.
- Backwards compatible Bloom filter API change.
- SeqReader no longer folds case by default (for performance reasons).
- Add support for lrzip compression/decompression.
- Update Bloom filter header to have extra newlines so that
head-ing a Bloom filter file doesn't show binary content. - Update wrappers to output proper file extension on MacOS.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 4 years ago
btllib - btllib v1.0.7
- API changes and bugfixes.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 almost 5 years ago
btllib - btllib v1.0.6
- Fixed a few SeqWriter bugs.
- Added preliminary version of MultiIndex Bloom filter.
- SeqReader now accepts short and long mode, optimized for short and long reads.
- Minor optimizations.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 almost 5 years ago
btllib - btllib v1.0.5
- Add
LONGflag to indexlr, which optimizes CPU/memory usage for long sequences. - Improve Bloom filters' code.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 5 years ago
btllib - btllib v1.0.4
Add SeedBloomFilter and improve Bloom filters' code.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 5 years ago
btllib - btllib v1.0.3
Fix a bug in FPR calculation and make a few Bloom filter API improvements.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 5 years ago
btllib - btllib v1.0.2
Minor improvements and exclusion of unnecessary files in release (e.g. docs).
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 5 years ago
btllib - btllib v1.0.1
Optimizations, bug fixes, and interface improvements.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 5 years ago
btllib - btllib v1.0.0
Initial release with sequence readers and writers, ntHash, Bloom filters, indexlr, and corresponding Python/Java wrappers.
Scientific Software - Peer-reviewed
- C++
Published by vlad0x00 over 5 years ago