Bio-ToolBox
view release on metacpan or search on metacpan
name capitalization of Bio::ToolBox::Parser subclasses from parser
- Improve parsing of gtf files, especially with duplicate tags
- Replaced old table sorting algorithm to use numeric, mixed digit-string,
and/or string sorting
- Improved accuracy of detecting standard columns such as name, ID, start, etc
- Add support for column median and trimmed-mean methods when generating a
summary file
- Fix bug with filtering features by transcript_support_level and gencode
- Remove Bio::Seq::IO requirement for writing fasta files in data2fasta.pl
- Changed behavior to always use 1-base coordinate when generating coordinate
strings, which is standard behavior e.g. with HTSlib (samtools and tabix) queries
- Improve support for coordinate lookup in merge_datasets.pl, including
handling either 1-base or 0-base coordinate strings.
- Always report both transcript and gene name IDs and names in text output
from get_gene_regions.pl
- Add bedpe format support
- Fix bugs with parsing file headers and assigning standard column metadata
- Fix bug with naming empirically derived introns
- Add option to skip chromosomes in get_gene_regions.pl
- Add option to adjust relative coordinates based on narrowPeak peak
in get_features.pl
- Fix edge-case bugs with low-level bam parsing
- Speed up certain stats functions and improve detection of numbers
in manipulate_datasets.pl
- Remove defunct supplementary tables in ucsc_table2gff3.pl
- Improve data format verification, and only run it when reading and writing
- Improve error reporting in scripts
- Use a proper prompting module for user-input
- Fix massive numbers of perlcritic and perltidy issues
- Hundreds of other bug fixes
v1.691
- Fix critical error in script get_relative_data.pl
- Fix prerequisite version numbers leading to build failures
- Change a private function to a public function
v1.69
- Revise genomic sorting by introducing a sane, logical chromosome
ordering that smartly handles numerical, Roman, contigs, and
alternate names. Sorting is done by both start and end coordinates.
Sorting speed modestly improved.
- Improve handling of coordinates of Data Feature objects, including
caching and setting.
- Add support for narrowPeak summit coordinate as reference point
in multiple scripts.
- Improve handling of databases, including bigWigSet feature types.
Make simplification of dataset names a little less aggressive.
- Include options for excluding chromosomes and/or intervals when
generating a new list of genomic bins
- Improve tasting of file formats, keeping the file format of parsed files
in the Data object.
- Allow non-stranded values when parsing UCSC files, including bed files.
- Optimize scoring subroutines
- Remove legacy subroutines from utility module
- Include new test file for utility functions
- Numerous other small changes and fixes
v1.68
- Script bam2wig.pl script can now record both ends of paired-end
fragments, rather than faking it as single-end. Paired-end start
now respectes orientation. Added new option to only record either
first or second read in a pair. Added new option to ignore
zero intervals when writing bedGraph format. Changed multi-hit
scoring to preferentially use NH instead of IH.
- Scripts get_binned_data.pl and get_relative_data.pl now
can write out column names and associated datasets in separate
groups file for use in plotting. Also specify score decimal format.
- Script get_features.pl has new option to only keep features with
explicit tag value.
- High level ToolBox convenience function parse_file() now includes
basic default subfeatures exon, cds, and utr.
- Efficiency improvements in loading large text files by going
back to chomp. Should still fail appropriately with wrong
line endings.
- Feature objects now allow certain attribute methods to be both
get and set, including seq_id, start, end, strand, name, and
type, so long as the table does not contain parsed or database
SeqFeature objects.
- Add Data object function to return any single row Feature without
having to use an iterator.
- Add high level function for iterating over Bam alignments.
- Add support for intron subfeatures in Feature objects and data
collection scripts.
- Allow bigWigToBedGraph to be explicitly used
- Better handling of verified dataset names
- Bug fixes and improvements in identifying database file
formats and loading adapters.
- Bug fix in writing bgzip files.
v1.67
- Add new option of smart coverage to script bam2wig that
smartly handles pair-end alignments with gaps (introns)
- Add capability to collect from multiple datasets at once
for scripts get_binned_data and get_relative_data. Summary
files can now handle multiple datasets.
- Allow specific number of up and down windows in
script get_relative_data.
- Add option to provide list of specific feature IDs to
script get_features.
- Write shift correlation region data from bam2wig.
- Improve GTF export.
- Add utility function to simplify dataset names, used in
data collection scripts. Strips path and everything after
first period from dataset file names.
- Improve sort function in manipulate_datasets by taking a
range of columns and sort by mean. Also addname function will
overwrite a feature name if present.
- Adjust logic for setting a file extension when none is
provided.
- Lots of additional minor fixes and changes
v1.66
- Optimize data2wig fast mode, about 3 times faster
- Summary files now use a cleaned-up column name. Fix
bugs with summary file generation.
- Bam2wig now properly reports alignment counts for each
strand when provided with multiple input bam files
(previously reported the same number).
- Graphing scripts now write the output graph directory in the input
file parent directory instead of the current directory.
v.1.10.2 (svn 591)
- Added a new option of position when adjusting coordinates of retrieved
features using the script get_features.pl. Coordinates may be adjusted
at the 5 prime, 3 prime, or both ends of stranded features. This also
fixes bugs where collected features on the reverse strand with adjusted
coordinates were not reported properly.
- Improved automatic recognition of the name, score, and other columns
in the convertor scripts data2bed.pl, data2gff.pl, and data2wig.pl.
- Improved the Cluster and Treeview export function in script
manipulate_datasets.pl. The CDT files generated now include separate ID
and NAME columns per the specification, and new manipulations are
included prior to exporting, including percentile rank and log2.
- The convert null function now also converts zero values if requested
in script manipulate_datasets.pl.
- Added new option of a minimum size when trimming windows in the script
find_enriched_regions.pl.
- Increased the radius from 35 bp to 50 bp when verifying a putative
mapped nucleosome in script map_nucleosomes.pl, leading to fewer
overlapping or offset nucleosomes.
- Added new option to re-center offset nucleosomes in script
verify_nucleosome_mapping.pl. Also improved report formatting.
- Added checks and warnings when writing file names longer than 256
characters. Some scripts automatically generate file names that may
exceed this limit, preventing writing. File names are now truncated.
Thanks to Adam F. for reporting.
- Added new methods and code improvements to the gff3 parsing library.
- Fixed a bug in script merge_datasets.pl where the column index for a
second file may not be properly validated leading to premature
termination.
- Fixed a bug where multiple datasets combined with an ampersand for
merging were not properly verified.
- Fixed a bug where a user may not be prompted to select a dataset from
a database if none was supplied from the command line.
- Fixed a bug where files containing trailing nulls do not load
properly.
- Fixed a bug related to finding specific data columns by name.
- Fixed a bug with writing summary files.
v.1.10.1 (svn 568)
- Added support for Bio::DB::Fasta in the main BioToolBox library, and
added the support to scripts data2fasta.pl and CpG_calculator.pl. Any
BioToolBox program that requires chromosome information or sequence can
now use a genomic multi-fasta or directory of fasta files in the --db
option.
- Fixed critical error in data2gff.pl that prevented files from being
converted to GFF format.
- Fixed critical error merge_datasets.pl that prevented column headers
from being written to the output file.
- Made the warning about unavailable files on the UCSC FTP server less
scary in the script ucsc_table2gff3.pl.
- Updated and clarified some script documentation.
v.1.10 (svn 559)
- Significantly improved performance when collecting data from Bam files
by using a low level API. Improvements of at least 2X may be realized.
- Significantly improved the performance of the bam2wig.pl script by at
least 2X. Added a new option of recording extended regions across the
predicted fragment based on empirically determined shift values.
Sampling to determine shift values has been increased. BedGraph files
are now written more efficiently. Maximum number of identical reads are
now enforced.
- Significantly improved the performance of the split_bam_by_isize.pl
script to increase speed by at least 2X. Added an option to skip
checking of mates. Improved reporting of results.
- Added a filter option to remove overlapping nucleosomes in script
verify_nucleosome_mapping.pl; also fixed bugs in reporting offset
distances and improved output reporting.
- Removed confusing separate scan and tag datasets required for script
map_nucleosomes.pl. Cleaned up and organized code. Fixed bugs that
prevented datasets from being validated.
- Fixed critical bug where data was not collected for the final row in
script get_datasets.pl.
- Fixed bugs with parsing unusual input files, for example commented
header lines in bed files or inconsistent column numbers.
- Fixed bug in script get_intersecting_features.pl where a strand column
was expected even if it was not present.
- Changed all tim library calls to use arrays instead of anonymous
hashes for a cleaner API.
- Changed shebang lines to use /usr/bin/env to improve portability on
systems with different Perl versions installed.
- Cleaned up and made POD documentation more consistent.
- Add warnings about database users and passwords in configuration file.
v.1.9.7 (svn 539)
- Fixed critical bug where an exon containing all three 5'UTR, CDS, and
3'UTR was not properly parsed in the script get_ensembl_annotation.pl.
New command line options for to include or not CDS, UTR, and start/stop
codons were added. Significant changes to improve and organize the code
was also made.
- Changed the method of assigning the GFF type for chromosomes and
scaffolds based on their name in the script ucsc_table2gff3.pl. Also
made the inclusion of start and stop codons enabled by default.
- Removed annoying automatic column assignment for input GFF files in
script data2bed.pl. GFF files are still handled properly if no columns
are specified on the command line.
v.1.9.6 (svn 533)
- Fixed critical bug in script ucsc_table2gff3.pl where single exons
containing all three 5'UTR, CDS, and 3'UTR subfeatures were not properly
parsed into GFF3. This had resulted in an extended CDS longer than
expected. Thanks to H. Stovall for reporting.
- Added warnings when a sequence could not be generated to avoid
division by 0 errors, and a slight correction to fraction calculations,
in script CpG_calculator.pl.
v.1.9.5 (svn 525)
- Changed the non-intuitive --except option to a more intuitive --zero
option in script manipulate_datasets.pl; this is now a boolean option to
include or exclude zero values when calculating statistics. The printed
statistics output has also been cleaned up and no longer includes
decimal formatting. The export function will automatically generate a
name when executed automatically.
- Added capability to use a column of source values rather than a static
text string for the GFF source tag in script data2gff.pl. Also made
improvements to the interactive ask session.
- Added the capability to use a big file dataset as the database for
chromosome information in script find_enriched_regions.pl.
- Added an option to automatically convert the output file to a BED file
( run in 0.730 second using v1.01-cache-2.11-cpan-364913b4093 )