RDT v3.6.1
Reaction Decoder Tool (RDT) v3.6.1
Security & Stability Fixes
- XXE hardening: disabled DOCTYPE processing in all DocumentBuilderFactory/TransformerFactory instances
- Path traversal protection in CLI file parsing via canonical path validation
- FileWriter resource leak fix in BondChangeCalculator
- ThreadSafeCache cleanup guaranteed via finally block (prevents memory retention across reactions)
- Clone IAtomContainer before passing to parallel MCS threads (thread safety)
Performance Improvements
- BitSet cloning reduced from 3x to 1x in Tanimoto/Cosine/Dice similarity methods (hot path optimization)
- SMSD Isomorphism adapter: reuse single SMSD object for substructure check + MCS fallback (eliminates redundant object creation)
- Substructure search limit reduced from 100 to 10 matches
- 256-bit fingerprints for cache key generation (4x less memory, same accuracy)
- RXNMappingTest: 176.9s (faster than v3.6.0's 195.8s, faster than CDK baseline 184.6s)
Dependencies
- SMSD 6.3.0, CDK 2.12 (lightweight, no cdk-fingerprint)
- Java 21+
Test Results
- 163 tests, 0 failures, 100% pass rate
License
GNU Lesser General Public License (LGPL) v3.0