unipept 0.5.7 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE.txt +18 -17
- data/README.md +37 -0
- data/Rakefile +6 -5
- data/VERSION +1 -1
- data/bin/unipept +6 -51
- data/lib/unipept/{api_runner.rb → commands/api_runner.rb} +61 -39
- data/lib/unipept/commands/pept2lca.rb +6 -0
- data/lib/unipept/commands/pept2prot.rb +20 -0
- data/lib/unipept/commands/pept2taxa.rb +5 -0
- data/lib/unipept/commands/taxa2lca.rb +12 -0
- data/lib/unipept/commands/taxonomy.rb +5 -0
- data/lib/unipept/commands.rb +7 -0
- data/lib/unipept/formatters.rb +28 -18
- data/lib/unipept/version.rb +3 -0
- data/lib/unipept.rb +2 -1
- data/unipept.gemspec +19 -11
- metadata +19 -10
- data/README.rdoc +0 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 76c5c9cf72e0988ad2b3af3bb718b5f771ff64f0
|
4
|
+
data.tar.gz: df8d0bb303b89dc56780cbf41f27c74c3573bdd6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 14e08400bd1e8f94aee029cd78b355e3abacf628d68cd1a9ea41f133a97d0afcab1d94facb8cdc41dc0ceebf410237bfae0dca458ae513baa47f272d762a37c9
|
7
|
+
data.tar.gz: db5ff353e531b26c094a4a1662922d8e5d409a8e0fb569afb332b6a3abc7ab28c792454de37a5f85e98b6dbb5131ee37ce721981470fe4e3b783c4983671b8b3
|
data/LICENSE.txt
CHANGED
@@ -1,20 +1,21 @@
|
|
1
|
-
|
1
|
+
The MIT License (MIT)
|
2
2
|
|
3
|
-
|
4
|
-
a copy of this software and associated documentation files (the
|
5
|
-
"Software"), to deal in the Software without restriction, including
|
6
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
-
permit persons to whom the Software is furnished to do so, subject to
|
9
|
-
the following conditions:
|
3
|
+
Copyright (c) 2010-2014 Universiteit Gent <unipept@ugent.be>
|
10
4
|
|
11
|
-
|
12
|
-
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
13
11
|
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
+
SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
# unipept-cli
|
2
|
+
|
3
|
+
[![Code Climate](https://codeclimate.com/github/unipept/unipept-cli/badges/gpa.svg)](https://codeclimate.com/github/unipept/unipept-cli)
|
4
|
+
|
5
|
+
Unipept-cli offers a command line interface to the [Unipept](http://unipept.ugent.be) web service.
|
6
|
+
Documentation about the web service can be found at [http://unipept.ugent.be/apidocs](http://unipept.ugent.be/apidocs).
|
7
|
+
|
8
|
+
## Installation
|
9
|
+
|
10
|
+
To use the Unipept CLI, Ruby version 1.9.3 or higher needs to be installed. You can check this by running `ruby -v` on the commandline:
|
11
|
+
|
12
|
+
```
|
13
|
+
$ ruby -v
|
14
|
+
ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin12.0]
|
15
|
+
```
|
16
|
+
|
17
|
+
More information on installing Ruby can be found at https://www.ruby-lang.org/en/installation/
|
18
|
+
|
19
|
+
The Unipept CLI is available as a *gem*. This means it can easily be installed with the following command:
|
20
|
+
|
21
|
+
```bash
|
22
|
+
$ gem install unipept
|
23
|
+
Successfully installed unipept-0.6.0
|
24
|
+
Parsing documentation for unipept-0.6.0
|
25
|
+
Done installing documentation for unipept after 0 seconds
|
26
|
+
1 gem installed
|
27
|
+
```
|
28
|
+
|
29
|
+
After successful installation, the unipept command should be available:
|
30
|
+
|
31
|
+
```bash
|
32
|
+
$ unipept -v
|
33
|
+
0.6.0
|
34
|
+
```
|
35
|
+
|
36
|
+
The help can be accessed by running `unipept -h`.
|
37
|
+
|
data/Rakefile
CHANGED
@@ -16,12 +16,13 @@ Jeweler::Tasks.new do |gem|
|
|
16
16
|
# gem is a Gem::Specification... see http://guides.rubygems.org/specification-reference/ for more options
|
17
17
|
gem.name = "unipept"
|
18
18
|
gem.executables = ['unipept', 'prot2pept', 'peptfilter', 'uniprot']
|
19
|
-
gem.homepage = "
|
19
|
+
gem.homepage = "https://github.com/unipept/unipept/"
|
20
20
|
gem.license = "MIT"
|
21
|
-
gem.summary = %Q{
|
22
|
-
gem.description = %Q{
|
23
|
-
gem.email = "
|
24
|
-
gem.authors = ["Toon Willems"]
|
21
|
+
gem.summary = %Q{Command line interface to Unipept web services.}
|
22
|
+
gem.description = %Q{Command line interface to Unipept web services.}
|
23
|
+
gem.email = "unipept@ugent.be"
|
24
|
+
gem.authors = ["Toon Willems", "Bart Mesuere", "Tom Naessens"]
|
25
|
+
gem.required_ruby_version = '>= 1.9.3'
|
25
26
|
# dependencies defined in Gemfile
|
26
27
|
gem.add_dependency 'typhoeus', '~> 0.6'
|
27
28
|
gem.add_dependency 'cri', '~> 2.6'
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.6.1
|
data/bin/unipept
CHANGED
@@ -8,55 +8,10 @@ require 'fileutils'
|
|
8
8
|
|
9
9
|
require_relative '../lib/unipept'
|
10
10
|
|
11
|
+
# Prevent broken pipe errors
|
11
12
|
Signal.trap("PIPE", "EXIT")
|
12
13
|
Signal.trap("INT", "EXIT")
|
13
14
|
|
14
|
-
module Unipept
|
15
|
-
class Taxa2lca < ApiRunner
|
16
|
-
|
17
|
-
def mapping
|
18
|
-
{"taxa2lca" => "taxa2lca"}
|
19
|
-
end
|
20
|
-
|
21
|
-
def peptide_iterator(peptides, &block)
|
22
|
-
block.call(peptides.to_a, 0)
|
23
|
-
end
|
24
|
-
|
25
|
-
def batch_size
|
26
|
-
raise "NOT NEEDED FOR TAXA2LCA"
|
27
|
-
end
|
28
|
-
|
29
|
-
end
|
30
|
-
|
31
|
-
class Pept2prot < ApiRunner
|
32
|
-
|
33
|
-
def mapping
|
34
|
-
{"pept2prot" => "pept2prot"}
|
35
|
-
end
|
36
|
-
|
37
|
-
def download_xml(result)
|
38
|
-
if options[:xml]
|
39
|
-
FileUtils.mkdir_p(options[:xml])
|
40
|
-
result.first.each do |prot|
|
41
|
-
File.open(options[:xml] + "/#{prot['uniprot_id']}.xml", "wb") do |f|
|
42
|
-
f.write Typhoeus.get("http://www.uniprot.org/uniprot/#{prot['uniprot_id']}.xml").response_body
|
43
|
-
end
|
44
|
-
end
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
def batch_size
|
49
|
-
10
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
class Taxonomy < ApiRunner
|
54
|
-
def mapping
|
55
|
-
{"taxonomy" => "taxonomy"}
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
59
|
-
|
60
15
|
root_cmd = Cri::Command.new_basic_root.modify do
|
61
16
|
name 'unipept'
|
62
17
|
flag :v, :version, "print version"
|
@@ -101,7 +56,7 @@ root_cmd.define_command('pept2taxa') do
|
|
101
56
|
option :a, :extra, "Show full lineage"
|
102
57
|
option :x, :xml, "Download taxonomy from NCBI as xml (specify output filename)", :argument => :required
|
103
58
|
|
104
|
-
runner Unipept::
|
59
|
+
runner Unipept::Commands::Pept2taxa
|
105
60
|
end
|
106
61
|
|
107
62
|
root_cmd.define_command('pept2lca') do
|
@@ -114,7 +69,7 @@ root_cmd.define_command('pept2lca') do
|
|
114
69
|
option :s, :select, "select the attributes", :argument => :required, :multiple => true
|
115
70
|
option :a, :extra, "Show full lineage"
|
116
71
|
|
117
|
-
runner Unipept::
|
72
|
+
runner Unipept::Commands::Pept2lca
|
118
73
|
end
|
119
74
|
|
120
75
|
root_cmd.define_command('taxa2lca') do
|
@@ -126,7 +81,7 @@ root_cmd.define_command('taxa2lca') do
|
|
126
81
|
option :s, :select, "select the attributes", :argument => :required, :multiple => true
|
127
82
|
option :a, :extra, "Show full lineage"
|
128
83
|
|
129
|
-
runner Unipept::Taxa2lca
|
84
|
+
runner Unipept::Commands::Taxa2lca
|
130
85
|
end
|
131
86
|
|
132
87
|
root_cmd.define_command('pept2prot') do
|
@@ -140,7 +95,7 @@ root_cmd.define_command('pept2prot') do
|
|
140
95
|
option :x, :xml, "download uniprot record in specified directory", :argument => :required
|
141
96
|
flag :a, :extra, "include all information. WARNING: will take much longer!"
|
142
97
|
|
143
|
-
runner Unipept::Pept2prot
|
98
|
+
runner Unipept::Commands::Pept2prot
|
144
99
|
end
|
145
100
|
|
146
101
|
root_cmd.define_command('taxonomy') do
|
@@ -152,7 +107,7 @@ root_cmd.define_command('taxonomy') do
|
|
152
107
|
option :s, :select, "select the attributes", :argument => :required, :multiple => true
|
153
108
|
flag :a, :extra, "include all information. WARNING: will take much longer!"
|
154
109
|
|
155
|
-
runner Unipept::Taxonomy
|
110
|
+
runner Unipept::Commands::Taxonomy
|
156
111
|
end
|
157
112
|
|
158
113
|
root_cmd.run(ARGV)
|
@@ -1,4 +1,6 @@
|
|
1
|
-
|
1
|
+
require 'set'
|
2
|
+
|
3
|
+
module Unipept::Commands
|
2
4
|
class ApiRunner < Cri::CommandRunner
|
3
5
|
|
4
6
|
def initialize(args, opts, cmd)
|
@@ -7,7 +9,7 @@ module Unipept
|
|
7
9
|
|
8
10
|
set_configuration
|
9
11
|
|
10
|
-
@url = "#{@host}/api/v1/#{
|
12
|
+
@url = "#{@host}/api/v1/#{cmd.name}.json"
|
11
13
|
@message_url = "#{@host}/api/v1/messages.json"
|
12
14
|
end
|
13
15
|
|
@@ -31,10 +33,6 @@ module Unipept
|
|
31
33
|
@host = host
|
32
34
|
end
|
33
35
|
|
34
|
-
def mapping
|
35
|
-
{'pept2taxa' => 'pept2taxa', 'pept2lca' => 'pept2lca'}
|
36
|
-
end
|
37
|
-
|
38
36
|
def input_iterator
|
39
37
|
# Argument over file input over stdin
|
40
38
|
if !arguments.empty?
|
@@ -71,7 +69,7 @@ module Unipept
|
|
71
69
|
return unless STDOUT.tty?
|
72
70
|
last_fetched = @configuration['last_fetch_date']
|
73
71
|
if last_fetched.nil? || (last_fetched + 60 * 60 * 24) < Time.now
|
74
|
-
version =
|
72
|
+
version = Unipept::VERSION
|
75
73
|
resp = Typhoeus.get(@message_url, params: {version: version})
|
76
74
|
puts resp.body unless resp.body.chomp.empty?
|
77
75
|
@configuration['last_fetch_date'] = Time.now
|
@@ -97,7 +95,7 @@ module Unipept
|
|
97
95
|
hydra = Typhoeus::Hydra.new(max_concurrency: 10)
|
98
96
|
num_req = 0
|
99
97
|
|
100
|
-
peptide_iterator(peptides) do |sub_division, i,
|
98
|
+
peptide_iterator(peptides) do |sub_division, i, fasta_input|
|
101
99
|
request = Typhoeus::Request.new(
|
102
100
|
@url,
|
103
101
|
method: :post,
|
@@ -105,35 +103,54 @@ module Unipept
|
|
105
103
|
accept_encoding: "gzip"
|
106
104
|
)
|
107
105
|
request.on_complete do |resp|
|
108
|
-
if resp.timed_out?
|
109
|
-
$stderr.puts "request timed out, continuing anyway, but results might be incomplete"
|
110
|
-
else
|
111
|
-
if resp.success?
|
112
|
-
# if JSON parsing goes wrong
|
113
|
-
sub_result = JSON[resp.response_body] rescue []
|
114
|
-
sub_result = [sub_result] if not sub_result.kind_of? Array
|
115
106
|
|
116
|
-
|
107
|
+
if resp.success?
|
108
|
+
# if JSON parsing goes wrong
|
109
|
+
sub_result = JSON[resp.response_body] rescue []
|
110
|
+
sub_result = [sub_result] if not sub_result.kind_of? Array
|
117
111
|
|
118
|
-
|
119
|
-
result << sub_result
|
120
|
-
end
|
112
|
+
sub_result.map! {|r| r.select! {|k,v| filter_list.any? {|f| f.match k } } } if ! filter_list.empty?
|
121
113
|
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
114
|
+
if options[:xml]
|
115
|
+
result << sub_result
|
116
|
+
end
|
117
|
+
|
118
|
+
# wait till it's our turn to write
|
119
|
+
batch_order.wait(i) do
|
120
|
+
if ! sub_result.empty?
|
121
|
+
if ! printed_header
|
122
|
+
write_to_output formatter.header(sub_result, fasta_input)
|
123
|
+
printed_header = true
|
130
124
|
end
|
125
|
+
write_to_output formatter.format(sub_result, fasta_input)
|
131
126
|
end
|
132
|
-
else
|
133
|
-
save_error(resp.response_body)
|
134
127
|
end
|
128
|
+
|
129
|
+
elsif resp.timed_out?
|
130
|
+
|
131
|
+
batch_order.wait(i) do
|
132
|
+
$stderr.puts "request timed out, continuing anyway, but results might be incomplete"
|
133
|
+
save_error("request timed out, continuing anyway, but results might be incomplete")
|
134
|
+
end
|
135
|
+
|
136
|
+
elsif resp.code == 0
|
137
|
+
|
138
|
+
batch_order.wait(i) do
|
139
|
+
$stderr.puts "could not get an http response, continuing anyway, but results might be incomplete"
|
140
|
+
save_error(resp.return_message)
|
141
|
+
end
|
142
|
+
|
143
|
+
else
|
144
|
+
|
145
|
+
batch_order.wait(i) do
|
146
|
+
$stderr.puts "received a non-successful http response #{resp.code.to_s}, continuing anyway, but results might be incomplete"
|
147
|
+
save_error("Got #{resp.code.to_s}: #{resp.response_body}")
|
148
|
+
end
|
149
|
+
|
135
150
|
end
|
151
|
+
|
136
152
|
end
|
153
|
+
|
137
154
|
hydra.queue request
|
138
155
|
|
139
156
|
num_req += 1
|
@@ -187,19 +204,24 @@ module Unipept
|
|
187
204
|
# FASTA MODE ENGAGED
|
188
205
|
fasta_header = first.chomp
|
189
206
|
peptides.each_slice(batch_size).with_index do |sub,i|
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
207
|
+
fasta_input = []
|
208
|
+
# Use a set so we don't ask data twice
|
209
|
+
newsub = Set.new
|
210
|
+
|
211
|
+
# Iterate to find fasta headers
|
212
|
+
sub.each do |s|
|
213
|
+
s.chomp!
|
214
|
+
if s.start_with? '>'
|
215
|
+
# Save the FASTA header when found
|
216
|
+
fasta_header = s
|
196
217
|
else
|
197
|
-
|
218
|
+
# Add the input pair to our input list
|
219
|
+
fasta_input << [fasta_header, s]
|
220
|
+
newsub << s
|
198
221
|
end
|
199
|
-
j += 1
|
200
222
|
end
|
201
|
-
|
202
|
-
block.call(
|
223
|
+
|
224
|
+
block.call(newsub.to_a, i, fasta_input)
|
203
225
|
end
|
204
226
|
else
|
205
227
|
# shame we have to be this explicit, but it appears to be the only way
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require_relative 'api_runner'
|
2
|
+
|
3
|
+
module Unipept::Commands
|
4
|
+
class Pept2prot < ApiRunner
|
5
|
+
def download_xml(result)
|
6
|
+
if options[:xml]
|
7
|
+
FileUtils.mkdir_p(options[:xml])
|
8
|
+
result.first.each do |prot|
|
9
|
+
File.open(options[:xml] + "/#{prot['uniprot_id']}.xml", "wb") do |f|
|
10
|
+
f.write Typhoeus.get("http://www.uniprot.org/uniprot/#{prot['uniprot_id']}.xml").response_body
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
def batch_size
|
17
|
+
10
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/unipept/formatters.rb
CHANGED
@@ -50,13 +50,13 @@ module Unipept
|
|
50
50
|
|
51
51
|
register :csv
|
52
52
|
|
53
|
-
def header(data,
|
53
|
+
def header(data, fasta_input = nil)
|
54
54
|
CSV.generate do |csv|
|
55
55
|
first = data.first
|
56
56
|
if first.kind_of? Array
|
57
57
|
first = first.first
|
58
58
|
end
|
59
|
-
if
|
59
|
+
if fasta_input
|
60
60
|
csv << (['fasta_header'] + first.keys).map(&:to_s) if first
|
61
61
|
else
|
62
62
|
csv << first.keys.map(&:to_s) if first
|
@@ -64,26 +64,36 @@ module Unipept
|
|
64
64
|
end
|
65
65
|
end
|
66
66
|
|
67
|
-
def format(data,
|
67
|
+
def format(data, fasta_input = nil)
|
68
68
|
CSV.generate do |csv|
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
69
|
+
|
70
|
+
if fasta_input
|
71
|
+
# Process the output from {key1: value1, key2: value2, ...}
|
72
|
+
# to {value => {key1: value1, key2: value2, ...}}
|
73
|
+
data_dict = {}
|
74
|
+
data.each do |d|
|
75
|
+
data_dict[d.values.first.to_s] ||= []
|
76
|
+
data_dict[d.values.first.to_s] << d
|
77
|
+
end
|
78
|
+
|
79
|
+
# Iterate over the input
|
80
|
+
fasta_input.each do |input_pair|
|
81
|
+
fasta_header, id = input_pair
|
82
|
+
|
83
|
+
# Retrieve the corresponding API result (if any)
|
84
|
+
unless data_dict[id].nil?
|
85
|
+
data_dict[id].each do |r|
|
86
|
+
csv << ([fasta_header] + r.values).map { |v| v == "" ? nil : v }
|
77
87
|
end
|
78
88
|
end
|
79
|
-
else
|
80
|
-
if fasta_mapper
|
81
|
-
extra_key = [fasta_mapper[o.values.first]]
|
82
|
-
csv << (extra_key + o.values).map { |v| v == "" ? nil : v }
|
83
|
-
else
|
84
|
-
csv << o.values.map { |v| v == "" ? nil : v }
|
85
|
-
end
|
86
89
|
end
|
90
|
+
|
91
|
+
else
|
92
|
+
|
93
|
+
data.each do |o|
|
94
|
+
csv << o.values.map { |v| v == "" ? nil : v }
|
95
|
+
end
|
96
|
+
|
87
97
|
end
|
88
98
|
end
|
89
99
|
end
|
data/lib/unipept.rb
CHANGED
data/unipept.gemspec
CHANGED
@@ -2,29 +2,29 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: unipept 0.
|
5
|
+
# stub: unipept 0.6.1 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "unipept"
|
9
|
-
s.version = "0.
|
9
|
+
s.version = "0.6.1"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["lib"]
|
13
|
-
s.authors = ["Toon Willems"]
|
14
|
-
s.date = "
|
15
|
-
s.description = "
|
16
|
-
s.email = "
|
13
|
+
s.authors = ["Toon Willems", "Bart Mesuere", "Tom Naessens"]
|
14
|
+
s.date = "2015-04-22"
|
15
|
+
s.description = "Command line interface to Unipept web services."
|
16
|
+
s.email = "unipept@ugent.be"
|
17
17
|
s.executables = ["unipept", "prot2pept", "peptfilter", "uniprot"]
|
18
18
|
s.extra_rdoc_files = [
|
19
19
|
"LICENSE.txt",
|
20
|
-
"README.
|
20
|
+
"README.md"
|
21
21
|
]
|
22
22
|
s.files = [
|
23
23
|
".document",
|
24
24
|
"Gemfile",
|
25
25
|
"Gemfile.lock",
|
26
26
|
"LICENSE.txt",
|
27
|
-
"README.
|
27
|
+
"README.md",
|
28
28
|
"Rakefile",
|
29
29
|
"VERSION",
|
30
30
|
"bin/peptfilter",
|
@@ -32,18 +32,26 @@ Gem::Specification.new do |s|
|
|
32
32
|
"bin/unipept",
|
33
33
|
"bin/uniprot",
|
34
34
|
"lib/unipept.rb",
|
35
|
-
"lib/unipept/api_runner.rb",
|
36
35
|
"lib/unipept/batch_order.rb",
|
36
|
+
"lib/unipept/commands.rb",
|
37
|
+
"lib/unipept/commands/api_runner.rb",
|
38
|
+
"lib/unipept/commands/pept2lca.rb",
|
39
|
+
"lib/unipept/commands/pept2prot.rb",
|
40
|
+
"lib/unipept/commands/pept2taxa.rb",
|
41
|
+
"lib/unipept/commands/taxa2lca.rb",
|
42
|
+
"lib/unipept/commands/taxonomy.rb",
|
37
43
|
"lib/unipept/configuration.rb",
|
38
44
|
"lib/unipept/formatters.rb",
|
45
|
+
"lib/unipept/version.rb",
|
39
46
|
"test/helper.rb",
|
40
47
|
"test/test_unipept.rb",
|
41
48
|
"unipept.gemspec"
|
42
49
|
]
|
43
|
-
s.homepage = "
|
50
|
+
s.homepage = "https://github.com/unipept/unipept/"
|
44
51
|
s.licenses = ["MIT"]
|
52
|
+
s.required_ruby_version = Gem::Requirement.new(">= 1.9.3")
|
45
53
|
s.rubygems_version = "2.2.2"
|
46
|
-
s.summary = "
|
54
|
+
s.summary = "Command line interface to Unipept web services."
|
47
55
|
|
48
56
|
if s.respond_to? :specification_version then
|
49
57
|
s.specification_version = 4
|
metadata
CHANGED
@@ -1,14 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: unipept
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Toon Willems
|
8
|
+
- Bart Mesuere
|
9
|
+
- Tom Naessens
|
8
10
|
autorequire:
|
9
11
|
bindir: bin
|
10
12
|
cert_chain: []
|
11
|
-
date:
|
13
|
+
date: 2015-04-22 00:00:00.000000000 Z
|
12
14
|
dependencies:
|
13
15
|
- !ruby/object:Gem::Dependency
|
14
16
|
name: shoulda
|
@@ -108,8 +110,8 @@ dependencies:
|
|
108
110
|
- - "~>"
|
109
111
|
- !ruby/object:Gem::Version
|
110
112
|
version: '2.6'
|
111
|
-
description:
|
112
|
-
email:
|
113
|
+
description: Command line interface to Unipept web services.
|
114
|
+
email: unipept@ugent.be
|
113
115
|
executables:
|
114
116
|
- unipept
|
115
117
|
- prot2pept
|
@@ -118,13 +120,13 @@ executables:
|
|
118
120
|
extensions: []
|
119
121
|
extra_rdoc_files:
|
120
122
|
- LICENSE.txt
|
121
|
-
- README.
|
123
|
+
- README.md
|
122
124
|
files:
|
123
125
|
- ".document"
|
124
126
|
- Gemfile
|
125
127
|
- Gemfile.lock
|
126
128
|
- LICENSE.txt
|
127
|
-
- README.
|
129
|
+
- README.md
|
128
130
|
- Rakefile
|
129
131
|
- VERSION
|
130
132
|
- bin/peptfilter
|
@@ -132,14 +134,21 @@ files:
|
|
132
134
|
- bin/unipept
|
133
135
|
- bin/uniprot
|
134
136
|
- lib/unipept.rb
|
135
|
-
- lib/unipept/api_runner.rb
|
136
137
|
- lib/unipept/batch_order.rb
|
138
|
+
- lib/unipept/commands.rb
|
139
|
+
- lib/unipept/commands/api_runner.rb
|
140
|
+
- lib/unipept/commands/pept2lca.rb
|
141
|
+
- lib/unipept/commands/pept2prot.rb
|
142
|
+
- lib/unipept/commands/pept2taxa.rb
|
143
|
+
- lib/unipept/commands/taxa2lca.rb
|
144
|
+
- lib/unipept/commands/taxonomy.rb
|
137
145
|
- lib/unipept/configuration.rb
|
138
146
|
- lib/unipept/formatters.rb
|
147
|
+
- lib/unipept/version.rb
|
139
148
|
- test/helper.rb
|
140
149
|
- test/test_unipept.rb
|
141
150
|
- unipept.gemspec
|
142
|
-
homepage:
|
151
|
+
homepage: https://github.com/unipept/unipept/
|
143
152
|
licenses:
|
144
153
|
- MIT
|
145
154
|
metadata: {}
|
@@ -151,7 +160,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
151
160
|
requirements:
|
152
161
|
- - ">="
|
153
162
|
- !ruby/object:Gem::Version
|
154
|
-
version:
|
163
|
+
version: 1.9.3
|
155
164
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
156
165
|
requirements:
|
157
166
|
- - ">="
|
@@ -162,5 +171,5 @@ rubyforge_project:
|
|
162
171
|
rubygems_version: 2.2.2
|
163
172
|
signing_key:
|
164
173
|
specification_version: 4
|
165
|
-
summary:
|
174
|
+
summary: Command line interface to Unipept web services.
|
166
175
|
test_files: []
|
data/README.rdoc
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
= unipept
|
2
|
-
|
3
|
-
Description goes here.
|
4
|
-
|
5
|
-
== Contributing to unipept
|
6
|
-
|
7
|
-
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
|
8
|
-
* Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it.
|
9
|
-
* Fork the project.
|
10
|
-
* Start a feature/bugfix branch.
|
11
|
-
* Commit and push until you are happy with your contribution.
|
12
|
-
* Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
|
13
|
-
* Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.
|
14
|
-
|
15
|
-
== Copyright
|
16
|
-
|
17
|
-
Copyright (c) 2014 Toon Willems. See LICENSE.txt for
|
18
|
-
further details.
|
19
|
-
|