solvebio 1.7.1 → 1.7.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.bumpversion.cfg +1 -1
- data/Gemfile +1 -1
- data/README.md +1 -3
- data/Rakefile +1 -1
- data/installer +31 -6
- data/lib/solvebio/cli/irbrc.rb +4 -11
- data/lib/solvebio/filter.rb +8 -8
- data/lib/solvebio/query.rb +3 -0
- data/lib/solvebio/version.rb +1 -1
- data/solvebio.gemspec +3 -4
- data/test/solvebio/test_filter.rb +5 -5
- metadata +38 -46
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 31db4c26b2c9b63dcbebbe8696a37b3e0946c831
|
4
|
+
data.tar.gz: 84b6c054b263fde61e0123c03eabbe9240cd4177
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 6874a148c1e5a109981fdb3aa649437c58c8037232f3cbcdd25b9c31365290575c1a3f29ec6934710695aea5986f96ef419686b7eff07fad4cfcea153eb7a41d
|
7
|
+
data.tar.gz: 24f926d966b43b7ab239993169bfe35f87abfb1f0e0c9f3a4f93d91133e0a9b1647d31b253ecc18c8d645219ee1da631163dd6846a8142515704a6a1c2a8cd1c
|
data/.bumpversion.cfg
CHANGED
data/Gemfile
CHANGED
data/README.md
CHANGED
data/Rakefile
CHANGED
data/installer
CHANGED
@@ -43,20 +43,36 @@ function ctrl_c() {
|
|
43
43
|
|
44
44
|
echo " Installing SolveBio for Ruby..."
|
45
45
|
echo
|
46
|
-
echo " IMPORTANT: Your computer's password may be required. It will NOT be sent to SolveBio."
|
47
46
|
|
48
47
|
# Setup the log
|
49
48
|
LOG=/tmp/solvebio-ruby.log
|
50
49
|
echo "SolveBio Ruby Guided Installer log" > $LOG
|
51
50
|
echo `date` >> $LOG
|
52
51
|
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
52
|
+
RUBY=`which ruby`
|
53
|
+
|
54
|
+
if [ "$RUBY" == "" ]; then
|
55
|
+
echo " Ruby is not installed. Please install Ruby before installing SolveBio for Ruby."
|
56
|
+
fail_exit
|
57
|
+
fi
|
58
|
+
|
59
|
+
GEM=`which gem`
|
60
|
+
|
61
|
+
if [ "$RUBY" == "" ]; then
|
62
|
+
echo " Ruby is not installed. Please install Ruby before installing SolveBio for Ruby."
|
63
|
+
fail_exit
|
64
|
+
fi
|
65
|
+
|
66
|
+
# TODO: check ruby and gem versions
|
67
|
+
GEM_OWNER=`ls -l $GEM | awk '{ print $3 }'`
|
68
|
+
|
69
|
+
if [ "$GEM_OWNER" == "root" ]; then
|
70
|
+
GEM="sudo ${GEM}"
|
71
|
+
echo " IMPORTANT: Your computer's password may be required. It will NOT be sent to SolveBio."
|
58
72
|
fi
|
59
73
|
|
74
|
+
$GEM install solvebio 2>&1 >> $LOG
|
75
|
+
|
60
76
|
if [ $? -eq 0 ]; then
|
61
77
|
VERSION=`ruby -e "require 'solvebio'; print SolveBio::VERSION"`
|
62
78
|
echo
|
@@ -68,6 +84,15 @@ if [ $? -eq 0 ]; then
|
|
68
84
|
echo
|
69
85
|
echo " ##############################################"
|
70
86
|
echo
|
87
|
+
|
88
|
+
# Detect old credentials in ~/.netrc (they will interfere with Ruby's Rest Client)
|
89
|
+
NETRC_WARN=`grep -c "solvebio" ~/.netrc`
|
90
|
+
if [ "$NETRC_WARN" -gt "0" ]; then
|
91
|
+
echo
|
92
|
+
echo "Warning: SolveBio credentials were found in ~/.netrc"
|
93
|
+
echo "Please delete the lines in ~/.netrc with SolveBio credentials."
|
94
|
+
echo
|
95
|
+
fi
|
71
96
|
else
|
72
97
|
fail_exit
|
73
98
|
fi
|
data/lib/solvebio/cli/irbrc.rb
CHANGED
@@ -12,21 +12,14 @@ IRB.conf[:PROMPT][:SIMPLE] = {
|
|
12
12
|
require 'solvebio'
|
13
13
|
require 'solvebio/cli'
|
14
14
|
|
15
|
-
have_completion = nil
|
16
15
|
begin
|
17
|
-
require 'bond'
|
18
|
-
|
16
|
+
require 'bond'
|
17
|
+
Bond.start
|
19
18
|
rescue LoadError
|
20
19
|
begin
|
21
|
-
|
20
|
+
require 'irb/completion'
|
22
21
|
rescue LoadError
|
23
|
-
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
unless have_completion
|
28
|
-
if have_completion != 'bond'
|
29
|
-
puts "Please install the 'bond' getm for better autocompletion"
|
22
|
+
puts "To enable tab-completion, please install the 'bond' gem (gem install bond)."
|
30
23
|
end
|
31
24
|
end
|
32
25
|
|
data/lib/solvebio/filter.rb
CHANGED
@@ -144,9 +144,11 @@ module SolveBio
|
|
144
144
|
begin
|
145
145
|
value = Float(value)
|
146
146
|
rescue
|
147
|
-
|
148
|
-
|
149
|
-
|
147
|
+
if /\d{4}-\d{2}-\d{2}/ !~ value
|
148
|
+
raise(TypeError,
|
149
|
+
"Invalid field value #{value} for #{key}; " +
|
150
|
+
"Should be a number or a date in the format 'YYYY-MM-DD'.")
|
151
|
+
end
|
150
152
|
end
|
151
153
|
tuple = [key, value]
|
152
154
|
when 'range'
|
@@ -230,10 +232,8 @@ module SolveBio
|
|
230
232
|
else
|
231
233
|
rv << {key => process_filters(val)}
|
232
234
|
end
|
233
|
-
elsif f.kind_of?(Array)
|
234
|
-
rv << f
|
235
235
|
else
|
236
|
-
|
236
|
+
rv << f
|
237
237
|
end
|
238
238
|
end
|
239
239
|
end
|
@@ -300,9 +300,9 @@ module SolveBio
|
|
300
300
|
end
|
301
301
|
|
302
302
|
if chromosome.nil?
|
303
|
-
f &= SolveBio::Filter.new({"
|
303
|
+
f &= SolveBio::Filter.new({"#{FIELD_CHR}" => nil})
|
304
304
|
else
|
305
|
-
f &= SolveBio::Filter.new({"
|
305
|
+
f &= SolveBio::Filter.new({"#{FIELD_CHR}" => chromosome.sub('chr', '')})
|
306
306
|
end
|
307
307
|
|
308
308
|
@filters = f.filters
|
data/lib/solvebio/query.rb
CHANGED
@@ -151,6 +151,9 @@ module SolveBio
|
|
151
151
|
result = Tabulate.tabulate(buffer[0], ['Fields', 'Data'], ['right', 'left'], true)
|
152
152
|
return "\n#{result}\n\n... #{(size - 1).pretty_int} more results."
|
153
153
|
end
|
154
|
+
# Force inspect to always call to_s.
|
155
|
+
# This happens automatically in Ruby < 2.0.0
|
156
|
+
alias_method(:inspect, :to_s)
|
154
157
|
|
155
158
|
# Convert SolveBio::QueryPaging object to a Hash type
|
156
159
|
def to_h
|
data/lib/solvebio/version.rb
CHANGED
data/solvebio.gemspec
CHANGED
@@ -52,13 +52,12 @@ EOD
|
|
52
52
|
## List your runtime dependencies here. Runtime dependencies are those
|
53
53
|
## that are needed for an end user to actually USE your code.
|
54
54
|
|
55
|
-
s.add_dependency('netrc',
|
56
|
-
s.add_dependency('rest_client', '>=1.8.1')
|
57
|
-
s.add_dependency('addressable', '>=2.3.6')
|
55
|
+
s.add_dependency('netrc', '~> 0.7')
|
56
|
+
s.add_dependency('rest_client', '~> 1.8', '>= 1.8.1')
|
57
|
+
s.add_dependency('addressable', '~> 2.3', '>= 2.3.6')
|
58
58
|
|
59
59
|
## List your development dependencies here. Development dependencies are
|
60
60
|
## those that are only needed during development
|
61
|
-
# s.add_development_dependency('DEVDEPNAME', [">= 1.1.0", "< 2.0.0"])
|
62
61
|
s.add_development_dependency('rake')
|
63
62
|
s.add_development_dependency('rdoc')
|
64
63
|
s.add_development_dependency('webmock')
|
@@ -49,7 +49,7 @@ module SolveBio
|
|
49
49
|
|
50
50
|
def test_genomic_filter
|
51
51
|
assert_equal(
|
52
|
-
'<GenomicFilter [{:and=>[["genomic_coordinates.start", 13], ["genomic_coordinates.stop", 32200000], ["chromosome", "hg38"]]}]>',
|
52
|
+
'<GenomicFilter [{:and=>[["genomic_coordinates.start", 13], ["genomic_coordinates.stop", 32200000], ["genomic_coordinates.chromosome", "hg38"]]}]>',
|
53
53
|
SolveBio::GenomicFilter.
|
54
54
|
new("hg38", "13", 32200000, 32500000).inspect)
|
55
55
|
end
|
@@ -65,21 +65,21 @@ module SolveBio
|
|
65
65
|
def test_genomic_single_position
|
66
66
|
f = SolveBio::GenomicFilter.new('chr1', 100)
|
67
67
|
assert_equal(
|
68
|
-
'<GenomicFilter [{:and=>[["genomic_coordinates.start__gte", 100.0], ["genomic_coordinates.start__lte", 100.0], ["chromosome", "1"]]}]>',
|
68
|
+
'<GenomicFilter [{:and=>[["genomic_coordinates.start__gte", 100.0], ["genomic_coordinates.start__lte", 100.0], ["genomic_coordinates.chromosome", "1"]]}]>',
|
69
69
|
f.inspect)
|
70
70
|
|
71
71
|
f = SolveBio::GenomicFilter.new('chr1', 100, 100, true)
|
72
72
|
assert_equal(
|
73
|
-
'<GenomicFilter [{:and=>[["genomic_coordinates.start", 100], ["genomic_coordinates.stop", 100], ["chromosome", "1"]]}]>',
|
73
|
+
'<GenomicFilter [{:and=>[["genomic_coordinates.start", 100], ["genomic_coordinates.stop", 100], ["genomic_coordinates.chromosome", "1"]]}]>',
|
74
74
|
f.inspect)
|
75
75
|
end
|
76
76
|
|
77
77
|
def test_range
|
78
78
|
f = SolveBio::GenomicFilter.new('chr1', 100, 200)
|
79
|
-
assert_equal('<GenomicFilter [{:and=>[{:or=>[{:and=>[["genomic_coordinates.start__gte", 200.0], ["genomic_coordinates.start__lte", 100.0]]}, ["genomic_coordinates.start__range", [100, 201]], ["genomic_coordinates.stop__range", [100, 201]]]}, ["chromosome", "1"]]}]>',
|
79
|
+
assert_equal('<GenomicFilter [{:and=>[{:or=>[{:and=>[["genomic_coordinates.start__gte", 200.0], ["genomic_coordinates.start__lte", 100.0]]}, ["genomic_coordinates.start__range", [100, 201]], ["genomic_coordinates.stop__range", [100, 201]]]}, ["genomic_coordinates.chromosome", "1"]]}]>',
|
80
80
|
f.inspect)
|
81
81
|
f = SolveBio::GenomicFilter.new('chr1', 100, 200, true)
|
82
|
-
assert_equal('<GenomicFilter [{:and=>[["genomic_coordinates.start", 100], ["genomic_coordinates.stop", 200], ["chromosome", "1"]]}]>',
|
82
|
+
assert_equal('<GenomicFilter [{:and=>[["genomic_coordinates.start", 100], ["genomic_coordinates.stop", 200], ["genomic_coordinates.chromosome", "1"]]}]>',
|
83
83
|
f.inspect)
|
84
84
|
end
|
85
85
|
end
|
metadata
CHANGED
@@ -1,125 +1,118 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: solvebio
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.7.
|
5
|
-
prerelease:
|
4
|
+
version: 1.7.2
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- SolveBio
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2014-12-
|
11
|
+
date: 2014-12-15 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: netrc
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - "~>"
|
20
18
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.7
|
19
|
+
version: '0.7'
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - "~>"
|
28
25
|
- !ruby/object:Gem::Version
|
29
|
-
version: 0.7
|
26
|
+
version: '0.7'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rest_client
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.8'
|
34
|
+
- - ">="
|
36
35
|
- !ruby/object:Gem::Version
|
37
36
|
version: 1.8.1
|
38
37
|
type: :runtime
|
39
38
|
prerelease: false
|
40
39
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
40
|
requirements:
|
43
|
-
- -
|
41
|
+
- - "~>"
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '1.8'
|
44
|
+
- - ">="
|
44
45
|
- !ruby/object:Gem::Version
|
45
46
|
version: 1.8.1
|
46
47
|
- !ruby/object:Gem::Dependency
|
47
48
|
name: addressable
|
48
49
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
50
|
requirements:
|
51
|
-
- -
|
51
|
+
- - "~>"
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '2.3'
|
54
|
+
- - ">="
|
52
55
|
- !ruby/object:Gem::Version
|
53
56
|
version: 2.3.6
|
54
57
|
type: :runtime
|
55
58
|
prerelease: false
|
56
59
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
60
|
requirements:
|
59
|
-
- -
|
61
|
+
- - "~>"
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '2.3'
|
64
|
+
- - ">="
|
60
65
|
- !ruby/object:Gem::Version
|
61
66
|
version: 2.3.6
|
62
67
|
- !ruby/object:Gem::Dependency
|
63
68
|
name: rake
|
64
69
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
70
|
requirements:
|
67
|
-
- -
|
71
|
+
- - ">="
|
68
72
|
- !ruby/object:Gem::Version
|
69
73
|
version: '0'
|
70
74
|
type: :development
|
71
75
|
prerelease: false
|
72
76
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
77
|
requirements:
|
75
|
-
- -
|
78
|
+
- - ">="
|
76
79
|
- !ruby/object:Gem::Version
|
77
80
|
version: '0'
|
78
81
|
- !ruby/object:Gem::Dependency
|
79
82
|
name: rdoc
|
80
83
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
84
|
requirements:
|
83
|
-
- -
|
85
|
+
- - ">="
|
84
86
|
- !ruby/object:Gem::Version
|
85
87
|
version: '0'
|
86
88
|
type: :development
|
87
89
|
prerelease: false
|
88
90
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
91
|
requirements:
|
91
|
-
- -
|
92
|
+
- - ">="
|
92
93
|
- !ruby/object:Gem::Version
|
93
94
|
version: '0'
|
94
95
|
- !ruby/object:Gem::Dependency
|
95
96
|
name: webmock
|
96
97
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
98
|
requirements:
|
99
|
-
- -
|
99
|
+
- - ">="
|
100
100
|
- !ruby/object:Gem::Version
|
101
101
|
version: '0'
|
102
102
|
type: :development
|
103
103
|
prerelease: false
|
104
104
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
105
|
requirements:
|
107
|
-
- -
|
106
|
+
- - ">="
|
108
107
|
- !ruby/object:Gem::Version
|
109
108
|
version: '0'
|
110
|
-
description:
|
111
|
-
can
|
112
|
-
|
109
|
+
description: |
|
110
|
+
SolveBio is a platform for biomedical datasets. With SolveBio you can
|
113
111
|
forget about parsing complex flat files and sifting through cryptic
|
114
|
-
|
115
112
|
datasets. Just use the Ruby Client and API to explore massive
|
116
|
-
|
117
113
|
datasets and automate just about any bioinformatics workflow.
|
118
114
|
|
119
|
-
|
120
115
|
See https://www.solvebio.com/ for more information.
|
121
|
-
|
122
|
-
'
|
123
116
|
email: contact@solvebio.com
|
124
117
|
executables:
|
125
118
|
- solvebio.rb
|
@@ -127,9 +120,9 @@ extensions: []
|
|
127
120
|
extra_rdoc_files:
|
128
121
|
- LICENSE
|
129
122
|
files:
|
130
|
-
- .bumpversion.cfg
|
131
|
-
- .gitignore
|
132
|
-
- .travis.yml
|
123
|
+
- ".bumpversion.cfg"
|
124
|
+
- ".gitignore"
|
125
|
+
- ".travis.yml"
|
133
126
|
- Gemfile
|
134
127
|
- Gemspec
|
135
128
|
- LICENSE
|
@@ -194,26 +187,25 @@ files:
|
|
194
187
|
homepage: https://www.solvebio.com
|
195
188
|
licenses:
|
196
189
|
- MIT
|
190
|
+
metadata: {}
|
197
191
|
post_install_message:
|
198
192
|
rdoc_options:
|
199
|
-
- --charset=UTF-8
|
193
|
+
- "--charset=UTF-8"
|
200
194
|
require_paths:
|
201
195
|
- lib
|
202
196
|
required_ruby_version: !ruby/object:Gem::Requirement
|
203
|
-
none: false
|
204
197
|
requirements:
|
205
|
-
- -
|
198
|
+
- - ">="
|
206
199
|
- !ruby/object:Gem::Version
|
207
200
|
version: 1.9.0
|
208
201
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
209
|
-
none: false
|
210
202
|
requirements:
|
211
|
-
- -
|
203
|
+
- - ">="
|
212
204
|
- !ruby/object:Gem::Version
|
213
205
|
version: '0'
|
214
206
|
requirements: []
|
215
207
|
rubyforge_project:
|
216
|
-
rubygems_version:
|
208
|
+
rubygems_version: 2.4.5
|
217
209
|
signing_key:
|
218
210
|
specification_version: 2
|
219
211
|
summary: Ruby bindings for the SolveBio API
|