bio 2.0.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ChangeLog +185 -0
- data/LEGAL +0 -1
- data/RELEASE_NOTES.rdoc +40 -0
- data/bioruby.gemspec +10 -1
- data/lib/bio/db/gff.rb +3 -1
- data/lib/bio/version.rb +1 -1
- data/sample/color_scheme_aa.rb +82 -0
- data/sample/color_scheme_na.rb +5 -6
- data/sample/fastq2html.cwl +23 -0
- data/sample/fastq2html.rb +94 -0
- data/sample/fastq2html.testdata.yaml +5 -0
- data/sample/na2aa.cwl +23 -0
- data/sample/na2aa.rb +11 -25
- data/sample/na2aa.testdata.yaml +7 -0
- data/sample/rev_comp.cwl +23 -0
- data/sample/rev_comp.rb +20 -0
- data/sample/rev_comp.testdata.yaml +7 -0
- data/test/unit/bio/db/test_gff.rb +5 -0
- metadata +11 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ee0226eebc0265a4cab075c2aaba3de55d82eff2767d1e00f6889d385c0037bd
|
|
4
|
+
data.tar.gz: ea4940449ac518b918ad0ddefa512b1ba51cb5ff22d9cbfff2ad1c2eca7433ab
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: be1ed472712c090d5de731e801b644356d3d155a7dd3db1c75cb91c2a9580ecdf50b4f58dd972810900dd9cbb1c907c000fdb968e2b18585901396fef3d01dcb
|
|
7
|
+
data.tar.gz: 53fd895fb65c582f1e2ed9abd21e3c8598056db4f408bbf84b527561cafe17976ece11a9b6a29d3fc89d3eb790a0de1611aa4d08a3d4856ff7344efdd718cde6
|
data/ChangeLog
CHANGED
|
@@ -1,3 +1,188 @@
|
|
|
1
|
+
commit 21bf51a1ec8c18c9cdf8528ffc3c59c503cef042
|
|
2
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
3
|
+
Date: Fri Sep 6 15:45:47 2019 +0900
|
|
4
|
+
|
|
5
|
+
RELEASE_NOTES.rdoc: describe notable changes since 2.0.0
|
|
6
|
+
|
|
7
|
+
RELEASE_NOTES.rdoc | 40 ++++++++++++++++++++++++++++++++++++++++
|
|
8
|
+
1 file changed, 40 insertions(+)
|
|
9
|
+
|
|
10
|
+
commit 9092a629e0e28b416ee7288d349fb9d73dd2b961
|
|
11
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
12
|
+
Date: Fri Sep 6 15:06:11 2019 +0900
|
|
13
|
+
|
|
14
|
+
regenerate bioruby.gemspec with rake regemspec
|
|
15
|
+
|
|
16
|
+
bioruby.gemspec | 11 ++++++++++-
|
|
17
|
+
1 file changed, 10 insertions(+), 1 deletion(-)
|
|
18
|
+
|
|
19
|
+
commit 59e24b6e55d2c9a8887e8e01a91999d33a008042
|
|
20
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
21
|
+
Date: Fri Sep 6 15:04:33 2019 +0900
|
|
22
|
+
|
|
23
|
+
prepare for BioRuby 2.0.1 release
|
|
24
|
+
|
|
25
|
+
lib/bio/version.rb | 2 +-
|
|
26
|
+
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
27
|
+
|
|
28
|
+
commit 9635a38a158db434fd2b6aff7a2ee75622ddecef
|
|
29
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
30
|
+
Date: Fri Sep 6 14:51:23 2019 +0900
|
|
31
|
+
|
|
32
|
+
sample/fastq2html.rb: A html visualization of FASTQ sequences
|
|
33
|
+
|
|
34
|
+
* sample/fastq2html: A html visualization of FASTQ sequences.
|
|
35
|
+
Each sequence is colored with the quality score.
|
|
36
|
+
* sample/fastq2html.cwl: CWL workflow for the above sample script
|
|
37
|
+
* sample/fastq2html.testdata.yaml: Test data for the above workflow
|
|
38
|
+
|
|
39
|
+
sample/fastq2html.cwl | 23 ++++++++++
|
|
40
|
+
sample/fastq2html.rb | 94 +++++++++++++++++++++++++++++++++++++++++
|
|
41
|
+
sample/fastq2html.testdata.yaml | 5 +++
|
|
42
|
+
3 files changed, 122 insertions(+)
|
|
43
|
+
create mode 100644 sample/fastq2html.cwl
|
|
44
|
+
create mode 100644 sample/fastq2html.rb
|
|
45
|
+
create mode 100644 sample/fastq2html.testdata.yaml
|
|
46
|
+
|
|
47
|
+
commit 6bbcf8b66310c225d686f2c59359680a0bc0b4b6
|
|
48
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
49
|
+
Date: Fri Sep 6 14:42:19 2019 +0900
|
|
50
|
+
|
|
51
|
+
sample/rev_comp.rb: Generates reverse-complement sequences
|
|
52
|
+
|
|
53
|
+
* sample/rev_comp.rb: Generates reverse-complement sequences of
|
|
54
|
+
the given nucleotide sequences.
|
|
55
|
+
* sample/rev_comp.cwl: CWL cowkflow for the sample script
|
|
56
|
+
* sample/rev_comp.testdata.yaml: Test data for the above CWL workflow
|
|
57
|
+
|
|
58
|
+
sample/rev_comp.cwl | 23 +++++++++++++++++++++++
|
|
59
|
+
sample/rev_comp.rb | 20 ++++++++++++++++++++
|
|
60
|
+
sample/rev_comp.testdata.yaml | 7 +++++++
|
|
61
|
+
3 files changed, 50 insertions(+)
|
|
62
|
+
create mode 100644 sample/rev_comp.cwl
|
|
63
|
+
create mode 100644 sample/rev_comp.rb
|
|
64
|
+
create mode 100644 sample/rev_comp.testdata.yaml
|
|
65
|
+
|
|
66
|
+
commit ff0e6c3c6b6f1b56d81b5a4b579a6d0984bfc607
|
|
67
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
68
|
+
Date: Fri Sep 6 14:40:45 2019 +0900
|
|
69
|
+
|
|
70
|
+
sample/color_scheme_(na|aa).rb: use String#each_char instead of each_byte
|
|
71
|
+
|
|
72
|
+
sample/color_scheme_aa.rb | 6 +++---
|
|
73
|
+
sample/color_scheme_na.rb | 6 +++---
|
|
74
|
+
2 files changed, 6 insertions(+), 6 deletions(-)
|
|
75
|
+
|
|
76
|
+
commit 6f7c1be09aa3d6cdb76fd029fc0f84efda31c907
|
|
77
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
78
|
+
Date: Thu Sep 5 17:32:07 2019 +0900
|
|
79
|
+
|
|
80
|
+
sample/color_scheme_aa.rb: new sample based on color_scheme_na.rb
|
|
81
|
+
|
|
82
|
+
sample/color_scheme_aa.rb | 82 +++++++++++++++++++++++++++++++++++++++++++++++
|
|
83
|
+
1 file changed, 82 insertions(+)
|
|
84
|
+
create mode 100644 sample/color_scheme_aa.rb
|
|
85
|
+
|
|
86
|
+
commit 51864c3857178f58133b759f7608b8d6d8991c44
|
|
87
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
88
|
+
Date: Thu Sep 5 17:13:20 2019 +0900
|
|
89
|
+
|
|
90
|
+
sample/color_scheme_na.rb: use const_get instead of eval
|
|
91
|
+
|
|
92
|
+
sample/color_scheme_na.rb | 2 +-
|
|
93
|
+
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
94
|
+
|
|
95
|
+
commit ba0b554971a9a387a54fc04c5002853d91357347
|
|
96
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
97
|
+
Date: Thu Sep 5 17:02:20 2019 +0900
|
|
98
|
+
|
|
99
|
+
sample/na2aa.cwl: inputBinding position -1 for the script
|
|
100
|
+
|
|
101
|
+
* sample/na2aa.cwl: inputBinding position -1 is used for the script
|
|
102
|
+
to emphasize that the argument is the first one.
|
|
103
|
+
|
|
104
|
+
sample/na2aa.cwl | 2 +-
|
|
105
|
+
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
106
|
+
|
|
107
|
+
commit 26a27ec261e2251f3ff3a85007147d33682778d0
|
|
108
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
109
|
+
Date: Thu Sep 5 16:56:08 2019 +0900
|
|
110
|
+
|
|
111
|
+
sample/color_scheme_na.rb: Supports more file formats
|
|
112
|
+
|
|
113
|
+
* sample/color_scheme_na.rb: Supports more file formats other than
|
|
114
|
+
fasta format, by using Bio::Flatfile.
|
|
115
|
+
|
|
116
|
+
sample/color_scheme_na.rb | 3 +--
|
|
117
|
+
1 file changed, 1 insertion(+), 2 deletions(-)
|
|
118
|
+
|
|
119
|
+
commit 5c053a606382bb578a2b6884ee639805154433e5
|
|
120
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
121
|
+
Date: Thu Sep 5 12:32:00 2019 +0900
|
|
122
|
+
|
|
123
|
+
sample/na2aa.cwl: use inputBinding
|
|
124
|
+
|
|
125
|
+
sample/na2aa.cwl | 5 ++++-
|
|
126
|
+
1 file changed, 4 insertions(+), 1 deletion(-)
|
|
127
|
+
|
|
128
|
+
commit 6a3c3e02f08549d47dda00dca92d55bbadfc468f
|
|
129
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
130
|
+
Date: Wed Sep 4 22:59:21 2019 +0900
|
|
131
|
+
|
|
132
|
+
Sample CWL workflow to run sample/na2aa.rb
|
|
133
|
+
|
|
134
|
+
* na2aa.cwl: A sample CWL workflow to run na2aa.rb in sample/ dir
|
|
135
|
+
* na2aa.testdata.yaml: Test data for the workflow
|
|
136
|
+
|
|
137
|
+
sample/na2aa.cwl | 20 ++++++++++++++++++++
|
|
138
|
+
sample/na2aa.testdata.yaml | 7 +++++++
|
|
139
|
+
2 files changed, 27 insertions(+)
|
|
140
|
+
create mode 100644 sample/na2aa.cwl
|
|
141
|
+
create mode 100644 sample/na2aa.testdata.yaml
|
|
142
|
+
|
|
143
|
+
commit 960b885036f549863e3cfe9c693c90f9bef27d3d
|
|
144
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
145
|
+
Date: Wed Sep 4 21:00:50 2019 +0900
|
|
146
|
+
|
|
147
|
+
LEGAL: na2aa.rb is now Ruby's License
|
|
148
|
+
|
|
149
|
+
LEGAL | 1 -
|
|
150
|
+
1 file changed, 1 deletion(-)
|
|
151
|
+
|
|
152
|
+
commit 7af9e81988939007eb36dab6b102a7422e8196d8
|
|
153
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
154
|
+
Date: Wed Sep 4 14:34:05 2019 +0900
|
|
155
|
+
|
|
156
|
+
sample/na2aa.rb: Completely rewritten
|
|
157
|
+
|
|
158
|
+
* sample/na2aa.rb: Completely rewritten. License is changed because
|
|
159
|
+
old code is completely wiped out. Note that the old code always
|
|
160
|
+
raises error due to a bug in the code.
|
|
161
|
+
* The old code was trying to replace 'X' (any) to '-' (gap) but
|
|
162
|
+
the new code does not modify translated sequences anymore.
|
|
163
|
+
|
|
164
|
+
sample/na2aa.rb | 36 +++++++++++-------------------------
|
|
165
|
+
1 file changed, 11 insertions(+), 25 deletions(-)
|
|
166
|
+
|
|
167
|
+
commit cf8cac5e32db42b6683c1a837adc9e1c04994062
|
|
168
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
169
|
+
Date: Mon Sep 2 17:11:08 2019 +0900
|
|
170
|
+
|
|
171
|
+
Bug fix: Bio::GFF::GFF2::Record.parse did not return correct object
|
|
172
|
+
|
|
173
|
+
lib/bio/db/gff.rb | 4 +++-
|
|
174
|
+
test/unit/bio/db/test_gff.rb | 5 +++++
|
|
175
|
+
2 files changed, 8 insertions(+), 1 deletion(-)
|
|
176
|
+
|
|
177
|
+
commit 80b387e7e2bb8570d9204e389b6c5d90c6ea31de
|
|
178
|
+
Author: Naohisa Goto <ng@bioruby.org>
|
|
179
|
+
Date: Fri Jun 14 14:33:19 2019 +0900
|
|
180
|
+
|
|
181
|
+
BioRuby 2.0.0 is released
|
|
182
|
+
|
|
183
|
+
ChangeLog | 1051 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
|
|
184
|
+
1 file changed, 1043 insertions(+), 8 deletions(-)
|
|
185
|
+
|
|
1
186
|
commit 2e4046517fd8ee1c105ef53131e69f787d790099
|
|
2
187
|
Author: Naohisa Goto <ng@bioruby.org>
|
|
3
188
|
Date: Fri Jun 14 14:23:19 2019 +0900
|
data/LEGAL
CHANGED
data/RELEASE_NOTES.rdoc
CHANGED
|
@@ -1,3 +1,43 @@
|
|
|
1
|
+
= BioRuby 2.0.1 RELEASE NOTES
|
|
2
|
+
|
|
3
|
+
Some bug fixes and improvements have been made to the BioRuby 2.0.1 after
|
|
4
|
+
the version 2.0.0 is released.
|
|
5
|
+
|
|
6
|
+
== Bug fixes
|
|
7
|
+
|
|
8
|
+
* Bio::GFF::GFF2::Record.parse did not return correct object.
|
|
9
|
+
|
|
10
|
+
== Improvement of sample scripts
|
|
11
|
+
|
|
12
|
+
The following scripts in the sample/ directiry are newly added.
|
|
13
|
+
|
|
14
|
+
* color_scheme_aa.rb: Example of Bio::ColorScheme for an amino acid sequence.
|
|
15
|
+
* fastq2html.rb: Visualization of FASTQ sequences, colored by quality scores.
|
|
16
|
+
* rev_comp.rb: Shows reverse-complement sequences of the given sequences.
|
|
17
|
+
|
|
18
|
+
The floowing scripts are modified to fix bug and/or to improve features.
|
|
19
|
+
|
|
20
|
+
* na2aa.rb: Completely rewritten to fix bug. Shows translated sequences.
|
|
21
|
+
* color_scheme_na.rb: Added support for various sequence formats.
|
|
22
|
+
|
|
23
|
+
=== CWL (Common Workflow Language) workflow files are added
|
|
24
|
+
|
|
25
|
+
CWL (Common Workflow Language) workflow files are added for some sample
|
|
26
|
+
scripts. The usage of each sample script will be clarified with the CWL
|
|
27
|
+
workflow files.
|
|
28
|
+
|
|
29
|
+
Two type of files are prepared for CWL workflow engine. *.cwl is a workflow
|
|
30
|
+
definition file for each sample script. *.testdata.yaml describes sample
|
|
31
|
+
input data for each CWL workflow.
|
|
32
|
+
|
|
33
|
+
In this version, cwl files for the 3 sample scripts are added.
|
|
34
|
+
|
|
35
|
+
* fastq2html.rb: fastq2html.cwl with fastq2html.testdata.yaml
|
|
36
|
+
* na2aa.rb: na2aa.cwl with na2aa.testdata.yaml
|
|
37
|
+
* rev_comp.rb: rev_comp.cwl with rev_comp.testdata.yaml
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
1
41
|
= BioRuby 2.0.0 RELEASE NOTES
|
|
2
42
|
|
|
3
43
|
A lot of changes have been made to the BioRuby 2.0.0 after the version 1.5.x
|
data/bioruby.gemspec
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
#
|
|
4
4
|
Gem::Specification.new do |s|
|
|
5
5
|
s.name = 'bio'
|
|
6
|
-
s.version = "2.0.
|
|
6
|
+
s.version = "2.0.1"
|
|
7
7
|
|
|
8
8
|
s.author = "BioRuby project"
|
|
9
9
|
s.email = "staff@bioruby.org"
|
|
@@ -258,6 +258,7 @@ Gem::Specification.new do |s|
|
|
|
258
258
|
"sample/any2fasta.rb",
|
|
259
259
|
"sample/benchmark_clustalw_report.rb",
|
|
260
260
|
"sample/biofetch.rb",
|
|
261
|
+
"sample/color_scheme_aa.rb",
|
|
261
262
|
"sample/color_scheme_na.rb",
|
|
262
263
|
"sample/demo_aaindex.rb",
|
|
263
264
|
"sample/demo_aminoacid.rb",
|
|
@@ -296,6 +297,9 @@ Gem::Specification.new do |s|
|
|
|
296
297
|
"sample/fasta2tab.rb",
|
|
297
298
|
"sample/fastagrep.rb",
|
|
298
299
|
"sample/fastasort.rb",
|
|
300
|
+
"sample/fastq2html.cwl",
|
|
301
|
+
"sample/fastq2html.rb",
|
|
302
|
+
"sample/fastq2html.testdata.yaml",
|
|
299
303
|
"sample/fsplit.rb",
|
|
300
304
|
"sample/gb2fasta.rb",
|
|
301
305
|
"sample/gb2tab.rb",
|
|
@@ -307,9 +311,14 @@ Gem::Specification.new do |s|
|
|
|
307
311
|
"sample/genome2tab.rb",
|
|
308
312
|
"sample/goslim.rb",
|
|
309
313
|
"sample/gt2fasta.rb",
|
|
314
|
+
"sample/na2aa.cwl",
|
|
310
315
|
"sample/na2aa.rb",
|
|
316
|
+
"sample/na2aa.testdata.yaml",
|
|
311
317
|
"sample/pmfetch.rb",
|
|
312
318
|
"sample/pmsearch.rb",
|
|
319
|
+
"sample/rev_comp.cwl",
|
|
320
|
+
"sample/rev_comp.rb",
|
|
321
|
+
"sample/rev_comp.testdata.yaml",
|
|
313
322
|
"sample/seqdatabase.ini",
|
|
314
323
|
"sample/ssearch2tab.rb",
|
|
315
324
|
"sample/tdiary.rb",
|
data/lib/bio/db/gff.rb
CHANGED
|
@@ -359,7 +359,9 @@ module Bio
|
|
|
359
359
|
# Parses a GFF2-formatted line and returns a new
|
|
360
360
|
# Bio::GFF::GFF2::Record object.
|
|
361
361
|
def self.parse(str)
|
|
362
|
-
self.new
|
|
362
|
+
ret = self.new
|
|
363
|
+
ret.parse(str)
|
|
364
|
+
ret
|
|
363
365
|
end
|
|
364
366
|
|
|
365
367
|
# Creates a Bio::GFF::GFF2::Record object.
|
data/lib/bio/version.rb
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
module Bio
|
|
11
11
|
|
|
12
12
|
# BioRuby version (Array containing Integer)
|
|
13
|
-
BIORUBY_VERSION = [2, 0,
|
|
13
|
+
BIORUBY_VERSION = [2, 0, 1].extend(Comparable).freeze
|
|
14
14
|
|
|
15
15
|
# Extra version specifier (String or nil).
|
|
16
16
|
# Existance of the value indicates development version.
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
#
|
|
3
|
+
# color_scheme_aa.rb - A Bio::ColorScheme demo script for Amino Acid sequences.
|
|
4
|
+
#
|
|
5
|
+
# Usage:
|
|
6
|
+
#
|
|
7
|
+
# % ruby color_scheme_aa.rb > cs-seq-faa.html
|
|
8
|
+
#
|
|
9
|
+
# % cat seq.faa
|
|
10
|
+
# >AA_sequence
|
|
11
|
+
# MKRISTTITTTITITTGNGAG
|
|
12
|
+
# % ruby color_scheme_aa.rb seq.faa > colored-seq-faa.html
|
|
13
|
+
#
|
|
14
|
+
#
|
|
15
|
+
# Copyright:: Copyright (C) 2005
|
|
16
|
+
# Mitsuteru C. Nakao <n@bioruby.org>
|
|
17
|
+
# License:: The Ruby License
|
|
18
|
+
#
|
|
19
|
+
|
|
20
|
+
require 'bio'
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
# returns folded sequence with <br>.
|
|
24
|
+
def br(i, width = 80)
|
|
25
|
+
return "<br\n>" if i % width == 0
|
|
26
|
+
""
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
# returns sequence html doc
|
|
31
|
+
def display(seq, cs)
|
|
32
|
+
html = '<p style="font-family: monospace">'
|
|
33
|
+
postfix = '</span>'
|
|
34
|
+
i = 0
|
|
35
|
+
seq.each_char do |c|
|
|
36
|
+
color = cs[c]
|
|
37
|
+
prefix = %Q(<span style="background:\##{color};">)
|
|
38
|
+
html += prefix + c + postfix
|
|
39
|
+
html += br(i += 1)
|
|
40
|
+
end
|
|
41
|
+
html + '</p>'
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
# returns scheme wise html doc
|
|
46
|
+
def display_scheme(scheme, aaseq)
|
|
47
|
+
html = ''
|
|
48
|
+
cs = Bio::ColorScheme.const_get(scheme.intern)
|
|
49
|
+
[aaseq].each do |seq|
|
|
50
|
+
html += display(seq, cs)
|
|
51
|
+
end
|
|
52
|
+
return ['<div>', "<h3>#{cs}</h3>", html, '</div>']
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
if fna = ARGV.shift
|
|
58
|
+
aaseq = Bio::FlatFile.open(fna) { |ff| ff.next_entry.aaseq }
|
|
59
|
+
else
|
|
60
|
+
aaseq = Bio::Sequence::AA.new('ARNDCQEGHILKMFPSTWYV' * 20).randomize
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
title = 'Bio::ColorScheme for amino acid sequences'
|
|
64
|
+
doc = ['<html>',
|
|
65
|
+
'<header>', '<title>', title, '</title>', '</header>',
|
|
66
|
+
'<body>', '<h1>', title, '</h1>']
|
|
67
|
+
|
|
68
|
+
doc << ['<div>', '<h2>', 'Simple colors', '</h2>']
|
|
69
|
+
|
|
70
|
+
['Zappo', 'Taylor' ].each do |scheme|
|
|
71
|
+
doc << display_scheme(scheme, aaseq)
|
|
72
|
+
end
|
|
73
|
+
doc << ['</div>']
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
doc << ['<div>', '<h2>', 'Score colors', '</h2>']
|
|
77
|
+
['Buried', 'Helix', 'Hydropathy', 'Strand', 'Turn'].each do |score|
|
|
78
|
+
doc << display_scheme(score, aaseq)
|
|
79
|
+
end
|
|
80
|
+
doc << ['</div>']
|
|
81
|
+
|
|
82
|
+
puts doc + ['</body>','</html>']
|
data/sample/color_scheme_na.rb
CHANGED
|
@@ -17,7 +17,6 @@
|
|
|
17
17
|
# Mitsuteru C. Nakao <n@bioruby.org>
|
|
18
18
|
# License:: The Ruby License
|
|
19
19
|
#
|
|
20
|
-
# $Id: color_scheme_na.rb,v 1.3 2007/04/05 23:35:42 trevor Exp $
|
|
21
20
|
#
|
|
22
21
|
|
|
23
22
|
require 'bio'
|
|
@@ -35,10 +34,10 @@ def display(seq, cs)
|
|
|
35
34
|
html = '<p style="font-family: monospace">'
|
|
36
35
|
postfix = '</span>'
|
|
37
36
|
i = 0
|
|
38
|
-
seq.
|
|
39
|
-
color = cs[c
|
|
37
|
+
seq.each_char do |c|
|
|
38
|
+
color = cs[c]
|
|
40
39
|
prefix = %Q(<span style="background:\##{color};">)
|
|
41
|
-
html += prefix + c
|
|
40
|
+
html += prefix + c + postfix
|
|
42
41
|
html += br(i += 1)
|
|
43
42
|
end
|
|
44
43
|
html + '</p>'
|
|
@@ -48,7 +47,7 @@ end
|
|
|
48
47
|
# returns scheme wise html doc
|
|
49
48
|
def display_scheme(scheme, naseq, aaseq)
|
|
50
49
|
html = ''
|
|
51
|
-
cs =
|
|
50
|
+
cs = Bio::ColorScheme.const_get(scheme.intern)
|
|
52
51
|
[naseq, aaseq].each do |seq|
|
|
53
52
|
html += display(seq, cs)
|
|
54
53
|
end
|
|
@@ -58,7 +57,7 @@ end
|
|
|
58
57
|
|
|
59
58
|
|
|
60
59
|
if fna = ARGV.shift
|
|
61
|
-
naseq = Bio::
|
|
60
|
+
naseq = Bio::FlatFile.open(fna) { |ff| ff.next_entry.naseq }
|
|
62
61
|
aaseq = naseq.translate
|
|
63
62
|
else
|
|
64
63
|
naseq = Bio::Sequence::NA.new('acgtu' * 20).randomize
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env cwl-runner
|
|
2
|
+
|
|
3
|
+
cwlVersion: v1.0
|
|
4
|
+
class: CommandLineTool
|
|
5
|
+
baseCommand: [ruby]
|
|
6
|
+
|
|
7
|
+
inputs:
|
|
8
|
+
- id: script
|
|
9
|
+
type: File
|
|
10
|
+
default:
|
|
11
|
+
class: File
|
|
12
|
+
location: fastq2html.rb
|
|
13
|
+
inputBinding:
|
|
14
|
+
position: -1
|
|
15
|
+
- id: fastq
|
|
16
|
+
type: File[]
|
|
17
|
+
inputBinding:
|
|
18
|
+
position: 1
|
|
19
|
+
|
|
20
|
+
outputs:
|
|
21
|
+
- id: out
|
|
22
|
+
type: stdout
|
|
23
|
+
stdout: $(inputs.script.nameroot)-$(inputs.fastq[0].nameroot).html
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
#
|
|
3
|
+
# fastq2html.rb - HTML visualization of FASTQ sequences
|
|
4
|
+
#
|
|
5
|
+
# Usage:
|
|
6
|
+
#
|
|
7
|
+
# % ruby fastq2html.rb seq00.fastq > seq00.html
|
|
8
|
+
#
|
|
9
|
+
#
|
|
10
|
+
# Copyright:: Copyright (C) 2019 BioRuby Project
|
|
11
|
+
# Copyright (C) 2005 Mitsuteru C. Nakao <n@bioruby.org>
|
|
12
|
+
# License:: The Ruby License
|
|
13
|
+
#
|
|
14
|
+
#
|
|
15
|
+
|
|
16
|
+
require 'bio'
|
|
17
|
+
|
|
18
|
+
# thickness to color
|
|
19
|
+
def thickness2color(t)
|
|
20
|
+
c = "%02X" % ((t * 255.0).to_i)
|
|
21
|
+
c * 3
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# Creates
|
|
25
|
+
def create_score2color_hashes
|
|
26
|
+
h_bg = {}
|
|
27
|
+
h_char = {}
|
|
28
|
+
cutoff_low = 0
|
|
29
|
+
cutoff_high = 50
|
|
30
|
+
range = cutoff_high - cutoff_low
|
|
31
|
+
sc_min = -5
|
|
32
|
+
sc_max = 100
|
|
33
|
+
(sc_min..sc_max).each do |i|
|
|
34
|
+
t = if i <= cutoff_low then
|
|
35
|
+
0.0
|
|
36
|
+
elsif i >= cutoff_high then
|
|
37
|
+
1.0
|
|
38
|
+
else
|
|
39
|
+
(i - cutoff_low).to_f / range
|
|
40
|
+
end
|
|
41
|
+
h_bg[i] = thickness2color(t)
|
|
42
|
+
h_char[i] = thickness2color((t > 0.3) ? 0.0 : 0.55)
|
|
43
|
+
end
|
|
44
|
+
h_bg.default = h_bg[cutoff_low]
|
|
45
|
+
h_char.default = h_char[cutoff_low]
|
|
46
|
+
[h_bg, h_char]
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
# Color code from quality score
|
|
50
|
+
SCORE2COLOR_BG, SCORE2COLOR_CHAR = create_score2color_hashes
|
|
51
|
+
|
|
52
|
+
# returns folded sequence with <br>.
|
|
53
|
+
def br(i, width = 80)
|
|
54
|
+
return "<br\n>" if i % width == 0
|
|
55
|
+
""
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
# returns sequence html doc
|
|
59
|
+
def display(naseq, scores)
|
|
60
|
+
html = '<p style="font-family: monospace">'
|
|
61
|
+
postfix = '</span>'
|
|
62
|
+
i = 0
|
|
63
|
+
naseq.each_char.with_index do |c, i|
|
|
64
|
+
sc = scores[i]
|
|
65
|
+
bgcol = SCORE2COLOR_BG[sc]
|
|
66
|
+
col = SCORE2COLOR_CHAR[sc]
|
|
67
|
+
prefix = %Q(<span style="color:\##{col}; background:\##{bgcol};">)
|
|
68
|
+
html += prefix + c + postfix
|
|
69
|
+
html += br(i += 1)
|
|
70
|
+
end
|
|
71
|
+
html + '</p>'
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# returns colorized html doc
|
|
75
|
+
def fastq2html(definition, naseq, scores)
|
|
76
|
+
html = display(naseq, scores)
|
|
77
|
+
return ['<div>', "<div>>#{CGI.escapeHTML(definition)}</div>", html, '</div>']
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
title = 'Sequences with quality scores'
|
|
81
|
+
puts ['<html>',
|
|
82
|
+
'<header>', '<title>', title, '</title>', '</header>',
|
|
83
|
+
'<body>', '<h1>', title, '</h1>']
|
|
84
|
+
|
|
85
|
+
#main loop
|
|
86
|
+
ARGV.each do |filename|
|
|
87
|
+
Bio::FlatFile.open(filename) do |ff|
|
|
88
|
+
ff.each do |e|
|
|
89
|
+
puts fastq2html(e.definition, e.naseq, e.quality_scores)
|
|
90
|
+
end
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
puts ['</body>','</html>']
|
data/sample/na2aa.cwl
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env cwl-runner
|
|
2
|
+
|
|
3
|
+
cwlVersion: v1.0
|
|
4
|
+
class: CommandLineTool
|
|
5
|
+
baseCommand: [ruby]
|
|
6
|
+
|
|
7
|
+
inputs:
|
|
8
|
+
- id: script
|
|
9
|
+
type: File
|
|
10
|
+
default:
|
|
11
|
+
class: File
|
|
12
|
+
location: na2aa.rb
|
|
13
|
+
inputBinding:
|
|
14
|
+
position: -1
|
|
15
|
+
- id: seqFile
|
|
16
|
+
type: File[]
|
|
17
|
+
inputBinding:
|
|
18
|
+
position: 1
|
|
19
|
+
|
|
20
|
+
outputs:
|
|
21
|
+
- id: out
|
|
22
|
+
type: stdout
|
|
23
|
+
stdout: $(inputs.script.nameroot)-$(inputs.seqFile[0].nameroot).fst
|
data/sample/na2aa.rb
CHANGED
|
@@ -1,34 +1,20 @@
|
|
|
1
1
|
#!/usr/bin/env ruby
|
|
2
2
|
#
|
|
3
|
-
#
|
|
3
|
+
# na2aa.rb - translate any NA input into AA FASTA format
|
|
4
4
|
#
|
|
5
|
-
# Copyright (C)
|
|
6
|
-
#
|
|
7
|
-
# This program is free software; you can redistribute it and/or modify
|
|
8
|
-
# it under the terms of the GNU General Public License as published by
|
|
9
|
-
# the Free Software Foundation; either version 2 of the License, or
|
|
10
|
-
# (at your option) any later version.
|
|
11
|
-
#
|
|
12
|
-
# This program is distributed in the hope that it will be useful,
|
|
13
|
-
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
-
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
15
|
-
# GNU General Public License for more details.
|
|
16
|
-
#
|
|
17
|
-
# $Id: na2aa.rb,v 1.1 2008/02/06 16:25:53 pjotr Exp $
|
|
5
|
+
# Copyright:: Copyright (C) 2019 BioRuby Project
|
|
6
|
+
# License:: The Ruby License
|
|
18
7
|
#
|
|
19
8
|
|
|
20
9
|
require 'bio'
|
|
21
|
-
require 'pp'
|
|
22
10
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
print rec
|
|
11
|
+
ARGV.each do |fn|
|
|
12
|
+
Bio::FlatFile.open(fn) do |ff|
|
|
13
|
+
ff.each do |entry|
|
|
14
|
+
next if /\A\s*\z/ =~ ff.entry_raw.to_s
|
|
15
|
+
na = entry.naseq
|
|
16
|
+
aa = na.translate
|
|
17
|
+
print aa.to_fasta(entry.definition, 70)
|
|
18
|
+
end
|
|
32
19
|
end
|
|
33
20
|
end
|
|
34
|
-
|
data/sample/rev_comp.cwl
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env cwl-runner
|
|
2
|
+
|
|
3
|
+
cwlVersion: v1.0
|
|
4
|
+
class: CommandLineTool
|
|
5
|
+
baseCommand: [ruby]
|
|
6
|
+
|
|
7
|
+
inputs:
|
|
8
|
+
- id: script
|
|
9
|
+
type: File
|
|
10
|
+
default:
|
|
11
|
+
class: File
|
|
12
|
+
location: rev_comp.rb
|
|
13
|
+
inputBinding:
|
|
14
|
+
position: -1
|
|
15
|
+
- id: seqFile
|
|
16
|
+
type: File[]
|
|
17
|
+
inputBinding:
|
|
18
|
+
position: 1
|
|
19
|
+
|
|
20
|
+
outputs:
|
|
21
|
+
- id: out
|
|
22
|
+
type: stdout
|
|
23
|
+
stdout: $(inputs.script.nameroot)-$(inputs.seqFile[0].nameroot).fst
|
data/sample/rev_comp.rb
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
#
|
|
3
|
+
# rev_comp.rb - Reverse complement DNA sequences
|
|
4
|
+
#
|
|
5
|
+
# Copyright:: Copyright (C) 2019 BioRuby Project
|
|
6
|
+
# License:: The Ruby License
|
|
7
|
+
#
|
|
8
|
+
|
|
9
|
+
require 'bio'
|
|
10
|
+
|
|
11
|
+
ARGV.each do |fn|
|
|
12
|
+
Bio::FlatFile.open(fn) do |ff|
|
|
13
|
+
ff.each do |entry|
|
|
14
|
+
next if /\A\s*\z/ =~ ff.entry_raw.to_s
|
|
15
|
+
na = entry.naseq
|
|
16
|
+
revcomp = na.reverse_complement
|
|
17
|
+
print revcomp.to_fasta("complement(#{entry.entry_id}) " + entry.definition, 70)
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -182,6 +182,11 @@ END_OF_DATA
|
|
|
182
182
|
assert_equal(str, @obj.to_s)
|
|
183
183
|
end
|
|
184
184
|
|
|
185
|
+
def test_self_parse
|
|
186
|
+
obj2 = Bio::GFF::GFF2::Record.parse(@obj.to_s)
|
|
187
|
+
assert_equal(@obj, obj2)
|
|
188
|
+
end
|
|
189
|
+
|
|
185
190
|
def test_eqeq
|
|
186
191
|
obj2 = Bio::GFF::GFF2::Record.new(@obj.to_s)
|
|
187
192
|
assert_equal(true, @obj == obj2)
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: bio
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.0.
|
|
4
|
+
version: 2.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- BioRuby project
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2019-06
|
|
11
|
+
date: 2019-09-06 00:00:00.000000000 Z
|
|
12
12
|
dependencies: []
|
|
13
13
|
description: BioRuby is a library for bioinformatics (biology + information science).
|
|
14
14
|
email: staff@bioruby.org
|
|
@@ -269,6 +269,7 @@ files:
|
|
|
269
269
|
- sample/any2fasta.rb
|
|
270
270
|
- sample/benchmark_clustalw_report.rb
|
|
271
271
|
- sample/biofetch.rb
|
|
272
|
+
- sample/color_scheme_aa.rb
|
|
272
273
|
- sample/color_scheme_na.rb
|
|
273
274
|
- sample/demo_aaindex.rb
|
|
274
275
|
- sample/demo_aminoacid.rb
|
|
@@ -307,6 +308,9 @@ files:
|
|
|
307
308
|
- sample/fasta2tab.rb
|
|
308
309
|
- sample/fastagrep.rb
|
|
309
310
|
- sample/fastasort.rb
|
|
311
|
+
- sample/fastq2html.cwl
|
|
312
|
+
- sample/fastq2html.rb
|
|
313
|
+
- sample/fastq2html.testdata.yaml
|
|
310
314
|
- sample/fsplit.rb
|
|
311
315
|
- sample/gb2fasta.rb
|
|
312
316
|
- sample/gb2tab.rb
|
|
@@ -318,9 +322,14 @@ files:
|
|
|
318
322
|
- sample/genome2tab.rb
|
|
319
323
|
- sample/goslim.rb
|
|
320
324
|
- sample/gt2fasta.rb
|
|
325
|
+
- sample/na2aa.cwl
|
|
321
326
|
- sample/na2aa.rb
|
|
327
|
+
- sample/na2aa.testdata.yaml
|
|
322
328
|
- sample/pmfetch.rb
|
|
323
329
|
- sample/pmsearch.rb
|
|
330
|
+
- sample/rev_comp.cwl
|
|
331
|
+
- sample/rev_comp.rb
|
|
332
|
+
- sample/rev_comp.testdata.yaml
|
|
324
333
|
- sample/seqdatabase.ini
|
|
325
334
|
- sample/ssearch2tab.rb
|
|
326
335
|
- sample/tdiary.rb
|