Bugs fixed: * A serious error in copymat which caused incorrect databases to be produced has been fixed. * A number of problems with query concatenation in blastall have been fixed. * XML output was brought in sync with text output by adding masking of the filtered locations in query sequences. Changes: * formatdb can no longer produce old-style BLAST databases. Performance improvements: * For translating searches of large sequences, only the needed pieces of the sequence are translated during the traceback. * The performance of reading binary gilists has been improved. * formatdb now produces 1 gigabyte volumes by default on 32-bit platforms in order to prevent mmap() failures. * When possible, use approximate sequence lengths for search space calculation. * DUST filtering was made more aggressive. Statistical improvements: * Unified handling of gapped Karlin blocks between protein and nucleotide cases. * Adjustments to the lengths of query and database sequences have been improved. * Composition-based statistics routines were refactored. Ongoing software engineering improvements: * Fixed memory leaks. * Fixed uninitialized variables. * Fixed null pointer handling. * Dead code and variables were eliminated. * Many compiler/type warnings fixed.