File Coverage

blib/lib/FAST.pm
Criterion Covered Total %
statement 12 25 48.0
branch 0 10 0.0
condition 0 6 0.0
subroutine 4 5 80.0
pod 0 1 0.0
total 16 47 34.0


line stmt bran cond sub pod time code
1             package FAST;
2 1     1   22662 use 5.10.1;
  1         3  
  1         60  
3 1     1   6 use strict;
  1         2  
  1         36  
4 1     1   5 use Carp;
  1         7  
  1         101  
5 1     1   5 use warnings FATAL => 'all';
  1         2  
  1         409  
6              
7              
8             our $VERSION = '1.04';
9              
10             our $DEF_FORMAT = "fasta";
11             our $DEF_LOGNAME = "FAST.log.txt";
12             our $DEF_JOIN_STRING = " ";
13             our $DEF_SPLIT_REGEX = ' ';
14              
15             sub log {
16 0     0 0   my ($logname, $DATE, $COMMAND, $comment, $fromSTDIN) = @_;
17 0 0 0       unless ($logname and $DATE and $COMMAND) {
      0        
18 0           carp join "","FAST::log: logname, DATE, or COMMAND undefined; logging not possible.\n";
19 0           return;
20             }
21 0 0         open (LOG, ">>$logname") or carp "FAST::log: cannot open logfile $logname\n";
22 0 0         if (*LOG) {
23 0 0         if (!$fromSTDIN) {
24 0           print LOG "\n# FAST $VERSION $DATE ";
25 0 0         print LOG "$comment" if ($comment);
26 0           print LOG "\n";
27 0           print LOG "$COMMAND"
28             }
29             else {
30 0           print LOG " | $COMMAND"
31             }
32 0           close LOG;
33             }
34             }
35              
36              
37             =head1 NAME
38              
39             FAST - FAST Analysis of Sequences Toolbox
40              
41             =head1 VERSION
42              
43             Version 1.03
44              
45             =head1 SYNOPSIS
46              
47             The Fast Analysis of Sequences Toolbox (FAST) is a set of UNIX
48             utilities (for example fasgrep, fascut, fashead and fastr) that
49             extends the UNIX toolbox paradigm to bioinformatic sequence
50             records. Modeled after the UNIX textutils (such as grep, cut, head,
51             tr, etc), FAST workflows are designed for "inline" (serial) processing
52             of flatfile biological sequence record databases per-sequence, rather
53             than per-line, through UNIX pipelines. The default data exchange
54             format is multifasta (specifically, a restriction of BioPerl FastA
55             format). FASTQ format is supported. FAST is designed for learnability,
56             interoperability, interface consistency, rapid prototyping, fine-tuned
57             control, and reproducibility. FAST tools expose the power of Perl and
58             BioPerl to users in an easy-to-learn command-line paradigm.
59              
60             =head1 UTILITIES
61              
62             FAST 1.0x contains the following utilities. Each has its own man page.
63              
64             =over 4
65              
66             =item B
67             select sites based on site variation and gap-content
68              
69             =item B
70             calculate molecular population genetic statistics
71              
72             =item B
73             tally/annotate codon usage
74              
75             =item B
76             tally/annotate monomer frequencies
77              
78             =item B
79             convert sequences to or from from fasta format
80              
81             =item B
82             select/reorder sequence records based on index lists/ranges
83              
84             =item B
85             filter sequence records based on numerical values
86              
87             =item B
88             filter sequence records based on perl regular expressions
89              
90             =item B
91             filter leading sequence records
92              
93             =item B
94             annotate sequence lengths
95              
96             =item B
97             concatenate sequence records
98              
99             =item B
100             reverse complement nucleotide sequences and alignments
101              
102             =item B
103             sort sequence records
104              
105             =item B
106             transform sequence records using regex-based substitutions
107              
108             =item B
109             filter trailing sequence records
110              
111             =item B
112             filter sequence records based on NCBI taxonomy IDs or names
113              
114             =item B
115             sort sequence records based on NCBI taxonomy IDs or names
116              
117             =item B
118             transform sequence records by character, degap, strict
119              
120             =item B
121             remove duplicate sequence records from sorted data
122              
123             =item B
124             tally sequences and characters
125              
126             =item B
127             translate gapped and ungapped sequences and alignments
128              
129             =item B
130             select sites by regex matching of features in a GenBank file
131              
132             =item B
133             print sequences by regex matching to features in a GenBank file
134              
135             =back
136              
137             =head1 AUTHORS
138              
139             David H. Ardell, C<< >>
140             and members of the Ardell Laboratory
141             and other contributors including:
142             Travis Lawrence
143             Dana Carper
144             Katherine Amrine
145             Kyle Kauffman
146             Claudia Canales
147              
148             =head1 BUGS
149              
150             Please report any bugs or feature requests to C, or through
151             the web interface at L. I will be notified, and then you'll
152             automatically be notified of progress on your bug as I make changes.
153              
154             =head1 ACKNOWLEDGEMENTS
155              
156              
157             =head1 LICENSE AND COPYRIGHT
158              
159             Copyright 2015 David H. Ardell.
160              
161             This program is free software; you can redistribute it and/or modify it
162             under the terms of the the Artistic License (2.0). You may obtain a
163             copy of the full license at:
164              
165             L
166              
167             Any use, modification, and distribution of the Standard or Modified
168             Versions is governed by this Artistic License. By using, modifying or
169             distributing the Package, you accept this license. Do not use, modify,
170             or distribute the Package, if you do not accept this license.
171              
172             If your Modified Version has been derived from a Modified Version made
173             by someone other than you, you are nevertheless required to ensure that
174             your Modified Version complies with the requirements of this license.
175              
176             This license does not grant you the right to use any trademark, service
177             mark, tradename, or logo of the Copyright Holder.
178              
179             This license includes the non-exclusive, worldwide, free-of-charge
180             patent license to make, have made, use, offer to sell, sell, import and
181             otherwise transfer the Package with respect to any patent claims
182             licensable by the Copyright Holder that are necessarily infringed by the
183             Package. If you institute patent litigation (including a cross-claim or
184             counterclaim) against any party alleging that the Package constitutes
185             direct or contributory patent infringement, then this Artistic License
186             to you shall terminate on the date that such litigation is filed.
187              
188             Disclaimer of Warranty: THE PACKAGE IS PROVIDED BY THE COPYRIGHT HOLDER
189             AND CONTRIBUTORS "AS IS' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES.
190             THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
191             PURPOSE, OR NON-INFRINGEMENT ARE DISCLAIMED TO THE EXTENT PERMITTED BY
192             YOUR LOCAL LAW. UNLESS REQUIRED BY LAW, NO COPYRIGHT HOLDER OR
193             CONTRIBUTOR WILL BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, OR
194             CONSEQUENTIAL DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THE PACKAGE,
195             EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
196              
197              
198             =cut
199              
200             1; # End of FAST