-
Notifications
You must be signed in to change notification settings - Fork 7
What's new
Jose Manuel Martí edited this page Feb 19, 2026
·
6 revisions
-
FASTA I/O support: Added high-performance support for FASTA files in
rextractusing a custom quick parser to avoid I/O bottlenecks. -
Unified sequence handling: Refactored
rextractto handle both FASTQ and FASTA formats seamlessly. -
New command-line option: Added
-a/--fastaflag torextractfor processing FASTA datasets. -
Enhanced score filtering: Added
-z/--maxscoreoption to allow extracting sequences with classifier scores below a certain threshold, or within a range when used together withminscore.
- Sparse/Delimited data format: Implemented a new optimized XML format (Version 2) that uses comma-delimited values and sparse representation to significantly reduce HTML file sizes
- Automatic format selection: Added intelligent algorithm that automatically chooses between sparse or delimited format based on data sparsity for optimal compression
- Backward compatibility: Maintained compatibility as previous XML format (Version 1) is still available
- Minimum version increased: Raised minimum Python requirement from 3.6 to 3.12 for improved performance and security
- Modern python features: Leveraged new language features available in Python 3.12+ for better code quality and efficiency, full pylance-compliant
- Dependency updates: Updated all dependencies to versions compatible with Python 3.12+
- Default strain level analysis: Changed default behavior to include strain-level analysis (previously required experimental flag)
-
Parallel processing control: Added new
--threadsargument for fine-grained control of parallel processing - Improved data representation: Optimized internal data structures for better memory usage and processing speed
- Enhanced error handling: Added more robust error handling and user-friendly error messages
- Performance improvements: Various optimizations throughout the codebase for faster execution
- Regentrifuge (rgf): Added new tool for genomic functional analysis, expanding Recentrifuge capabilities beyond taxonomic analysis
-
Gene Ontology support: Integrated comprehensive Gene Ontology (GO) analysis capabilities. Requires external files (equivalent to
names.dmpandnodes.dmpof NCBI Taxonomy) where the GO graph has been reduced to a tree
- Python version: Dropped support for Python versions below 3.12
- Dependency updates: Updated core dependencies to their latest versions
- Default taxonomic resolution: Strain level is now enabled by default instead of species level
-
New
--no-strainflag: Disable strain-level analysis (strain is now default, it was an experimental flag previously) -
New
--threadsargument: Control number of threads for parallel processing (0 = legacy behavior)
- rextract: Resolved issues with parsing certain edge cases in classifier output files
- Updated Wiki: Comprehensive updates to documentation and user guides
- Migration guide: Created detailed migration guide for users upgrading from previous versions
-
Modern build system: Migrated from
setup.pyandrequirements.txttopyproject.tomlfor modern Python packaging - Code quality: Improved code quality with updated linting and type checking
- Testing: Enhanced test suite with additional test cases and improved coverage
- Update after important NCBI Taxonomy changes: new rank
realmand reintroduction ofdomain
- Update after NCBI Taxonomy change and upgrade to 2025
-
Improve generic parser:
- New automatic full directory option to process all the present files in the directory
- Compatible with .gz and .bz2 compressed files
- Improve resilience of statistics module upon extreme cases such as empty samples
- Solve problems with GH Actions so that CI/CD is working fine again.
- Improve rextract to deal with some simulated reads
-
Addition of new tool refafilt for processing databases contained in —huge— fasta files (such as NCBI BLAST nt), so:
- provide filters by minimum and/or maximum sequence length to separate those sequences,
- correct issue when header of fasta sequence is multiplexed meaning such sequence is redundant in the database
- Correct bug and improve statistics and messages
- Correct bug in scoring introduced in v1.13.0
- Update after NCBI Taxonomy change and upgrade to 2024
- Important reductions in the size of the generated HTML, now < 2/3 of old size
- LOGLENGTH scoring: switch from geometric to arithmetic averaging
- retest: use pandas.testing.assert_frame_equal for df comparisons
- Relocation of a few krona-related constants
If you use Recentrifuge in your research, please consider citing the paper. Thanks!
Martí JM (2019) Recentrifuge: Robust comparative analysis and contamination removal for metagenomics. PLOS Computational Biology 15(4): e1006967. https://doi.org/10.1371/journal.pcbi.1006967