biomart 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,4 @@
1
+ coverage*
2
+ simplecov*
3
+ tmp/metric_fu*
4
+ tmp/*.json
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in lorem.gemspec
4
+ gemspec
@@ -0,0 +1,22 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ biomart (0.2.1)
5
+ builder
6
+
7
+ GEM
8
+ remote: http://rubygems.org/
9
+ specs:
10
+ builder (2.1.2)
11
+ shoulda (2.11.3)
12
+ simplecov (0.4.0)
13
+ simplecov-html (~> 0.4.0)
14
+ simplecov-html (0.4.3)
15
+
16
+ PLATFORMS
17
+ ruby
18
+
19
+ DEPENDENCIES
20
+ biomart!
21
+ shoulda (>= 2.10)
22
+ simplecov
@@ -1,3 +1,11 @@
1
+ === 0.2.1 2011-02-16
2
+
3
+ * 1 minor bugfix:
4
+ * Force retrieved ASCII_8BIT text encoding to UTF-8 when running in
5
+ Ruby 1.9+.
6
+ * 1 minor enhancement:
7
+ * Added support for boolean filters.
8
+
1
9
  === 0.2.0 2010-06-10
2
10
 
3
11
  * 2 major enhancements:
@@ -9,10 +9,11 @@ lib/biomart/database.rb
9
9
  lib/biomart/dataset.rb
10
10
  lib/biomart/filter.rb
11
11
  lib/biomart/server.rb
12
- script/console
13
- script/destroy
14
- script/generate
12
+ lib/biomart/version.rb
15
13
  tasks/metrics.rake
14
+ tasks/rcov.rake
16
15
  tasks/shoulda.rake
16
+ tasks/yard.rake
17
17
  test/test_biomart.rb
18
18
  test/test_helper.rb
19
+ Manifest
@@ -10,7 +10,7 @@ don't have to get down and dirty with the basic webservice calls yourself.
10
10
 
11
11
  == Install
12
12
 
13
- sudo gem install biomart
13
+ gem install biomart
14
14
 
15
15
  == Usage
16
16
 
@@ -80,6 +80,39 @@ just get on with things...
80
80
 
81
81
  See Biomart module and Class docs for more detail.
82
82
 
83
+ == Advanced Filtering
84
+
85
+ Most filters in biomart are just pure textual filters, i.e.
86
+
87
+ kermits.search( :filters => { "marker_symbol" => "Cbx1" } )
88
+
89
+ To filter on more than one term, simply pass a comma concatenated string,
90
+ or an array (the following two searches are equivalent):
91
+
92
+ kermits.search( :filters => { "marker_symbol" => "Cbx1,Mysm1" } )
93
+ kermits.search( :filters => { "marker_symbol" => ["Cbx1","Mysm1"] } )
94
+
95
+ Finally, there are also boolean filters (shown in the standard MartView
96
+ interface as a filter name and then two radio buttons: 'Only' or
97
+ 'Excluded'). These filers can only accept the following:
98
+
99
+ - 'Only': true / 'only' / 'included'
100
+ - 'Excluded': false / 'excluded'
101
+
102
+ Here's some example usage:
103
+
104
+ snp_mart = Biomart::Dataset.new( "http://www.ensembl.org/biomart", { :name => "hsapiens_snp" } )
105
+
106
+ # These are equivalent to selecting 'Only' in MartView
107
+ snp_mart.search( :filters => { 'with_variation_annotation' => true, 'ensembl_gene' => 'ENSG00000244734' } )
108
+ snp_mart.search( :filters => { 'with_variation_annotation' => 'only', 'ensembl_gene' => 'ENSG00000244734' } )
109
+ snp_mart.search( :filters => { 'with_variation_annotation' => 'included', 'ensembl_gene' => 'ENSG00000244734' } )
110
+
111
+ # These are equivalent to selecting 'Excluded' in MartView
112
+ snp_mart.search( :filters => { 'with_variation_annotation' => false, 'ensembl_gene' => 'ENSG00000244734' } )
113
+ snp_mart.search( :filters => { 'with_variation_annotation' => 'excluded', 'ensembl_gene' => 'ENSG00000244734' } )
114
+
115
+
83
116
  == Federated Searches
84
117
 
85
118
  To perform a federated search across two datasets...
@@ -130,6 +163,36 @@ possible to federate across more than two datasets in biomart itself.
130
163
 
131
164
  Count queries are only allowed on single datasets.
132
165
 
166
+ == Required Attributes
167
+
168
+ As biomarts are generally big de-normalised data stores, a common task
169
+ after receiving a set of results is to filter out rows that don't have
170
+ information for a given attribute or set of attributes. A facility for
171
+ doing this has been built into the gem.
172
+
173
+ htgt = Biomart::Server.new( "http://www.sanger.ac.uk/htgt/biomart" )
174
+
175
+ res = htgt.datasets["mmusculus_gene_ensembl"].search(
176
+ :filters => {
177
+ "chromosome_name" => "1",
178
+ "start" => "1",
179
+ "end" => "10000000"
180
+ },
181
+ :attributes => [
182
+ "ensembl_gene_id", "ensembl_transcript_id",
183
+ "mouse_paralog_ensembl_gene", "mouse_paralog_chromosome"
184
+ ],
185
+ :required_attributes => ["mouse_paralog_ensembl_gene"]
186
+ )
187
+
188
+ The above will perform a basic search and then automatically remove
189
+ any result row that does not have a value for the "mouse_paralog_ensembl_gene"
190
+ attribute.
191
+
192
+ Note: You can specify more than one required attribute. If more than one
193
+ required attribute is specified, ALL of these attributes must be present
194
+ for a data row to be returned (it is using AND logic).
195
+
133
196
  == Using a Proxy
134
197
 
135
198
  If you need to channel all of your requests via a proxy, specify your
data/Rakefile CHANGED
@@ -1,32 +1,6 @@
1
- require "rubygems"
1
+ require 'bundler'
2
2
 
3
- gem "flog", "= 2.2.0"
4
- gem "hoe", ">= 2.1.0"
3
+ Bundler::GemHelper.install_tasks
5
4
 
6
- require "hoe"
7
- require "fileutils"
8
- require "./lib/biomart"
9
-
10
- Hoe.plugin :newgem
11
- # Hoe.plugin :website
12
- # Hoe.plugin :cucumberfeatures
13
-
14
- # Generate all the Rake tasks
15
- # Run "rake -T" to see list of generated tasks (from gem root directory)
16
- $hoe = Hoe.spec "biomart" do
17
- self.developer "Darren Oakley", "daz.oakley@gmail.com"
18
- self.rubyforge_name = self.name
19
- self.url = "http://github.com/dazoakley/biomart"
20
- self.summary = "A ruby API for interacting with Biomart services."
21
- self.description = "A ruby API for interacting with Biomart XML based webservices."
22
- self.extra_deps = [["builder",">= 0"]]
23
- self.extra_dev_deps = [["shoulda",">= 2.10"]]
24
- self.extra_rdoc_files = ["README.rdoc"]
25
- end
26
-
27
- require "newgem/tasks"
28
- Dir["tasks/*.rake"].each { |t| load t }
29
-
30
- # TODO - want other tests/tasks run by default? Add them to the list
31
- # remove_task :default
32
- # task :default => [:spec, :features]
5
+ Dir['tasks/*.rake'].each { |t| load t }
6
+ task :default => [:test]
@@ -1,40 +1,25 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "biomart/version"
2
4
 
3
5
  Gem::Specification.new do |s|
4
- s.name = %q{biomart}
5
- s.version = "0.2.0"
6
+ s.name = "biomart"
7
+ s.version = Biomart::VERSION
8
+ s.platform = Gem::Platform::RUBY
9
+ s.authors = ["Darren Oakley"]
10
+ s.email = ["daz.oakley@gmail.com"]
11
+ s.homepage = "http://github.com/dazoakley/biomart"
12
+ s.summary = "A ruby API for interacting with Biomart services."
13
+ s.description = "A ruby API for interacting with Biomart XML based webservices."
6
14
 
7
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
- s.authors = ["Darren Oakley"]
9
- s.date = %q{2010-06-10}
10
- s.description = %q{A ruby API for interacting with Biomart XML based webservices.}
11
- s.email = ["daz.oakley@gmail.com"]
12
- s.extra_rdoc_files = ["History.txt", "Manifest.txt", "README.rdoc"]
13
- s.files = ["History.txt", "Manifest.txt", "README.rdoc", "Rakefile", "biomart.gemspec", "lib/biomart.rb", "lib/biomart/attribute.rb", "lib/biomart/database.rb", "lib/biomart/dataset.rb", "lib/biomart/filter.rb", "lib/biomart/server.rb", "script/console", "script/destroy", "script/generate", "tasks/metrics.task", "tasks/shoulda.task", "test/test_biomart.rb", "test/test_helper.rb"]
14
- s.homepage = %q{http://github.com/dazoakley/biomart}
15
- s.rdoc_options = ["--main", "README.rdoc"]
16
- s.require_paths = ["lib"]
17
- s.rubyforge_project = %q{biomart}
18
- s.rubygems_version = %q{1.3.7}
19
- s.summary = %q{A ruby API for interacting with Biomart services.}
20
- s.test_files = ["test/test_biomart.rb", "test/test_helper.rb"]
21
-
22
- if s.respond_to? :specification_version then
23
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
24
- s.specification_version = 3
15
+ s.rubyforge_project = "biomart"
25
16
 
26
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
27
- s.add_runtime_dependency(%q<builder>, [">= 0"])
28
- s.add_development_dependency(%q<shoulda>, [">= 2.10"])
29
- s.add_development_dependency(%q<hoe>, [">= 2.6.1"])
30
- else
31
- s.add_dependency(%q<builder>, [">= 0"])
32
- s.add_dependency(%q<shoulda>, [">= 2.10"])
33
- s.add_dependency(%q<hoe>, [">= 2.6.1"])
34
- end
35
- else
36
- s.add_dependency(%q<builder>, [">= 0"])
37
- s.add_dependency(%q<shoulda>, [">= 2.10"])
38
- s.add_dependency(%q<hoe>, [">= 2.6.1"])
39
- end
17
+ s.files = `git ls-files`.split("\n")
18
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
19
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
+ s.require_paths = ["lib"]
21
+
22
+ s.add_runtime_dependency("builder", [">= 0"])
23
+ s.add_development_dependency("shoulda", [">= 2.10"])
24
+ s.add_development_dependency("simplecov", [">= 0"])
40
25
  end
@@ -8,8 +8,6 @@ require "rubygems"
8
8
  require "builder"
9
9
 
10
10
  module Biomart
11
- VERSION = "0.2.0"
12
-
13
11
  # This is the base Biomart error/exception class. Rescue it if
14
12
  # you want to catch any exceptions that this code might raise.
15
13
  class BiomartError < StandardError
@@ -71,9 +69,16 @@ module Biomart
71
69
  response = http.request(req)
72
70
  end
73
71
 
74
- check_response( response.body, response.code )
72
+ response_code = response.code
73
+ response_body = response.body
74
+
75
+ if defined? Encoding && response_body.encoding == Encoding::ASCII_8BIT
76
+ response_body = response_body.force_encoding(Encoding::UTF_8).encode
77
+ end
78
+
79
+ check_response( response_body, response_code )
75
80
 
76
- return response.body
81
+ return response_body
77
82
  end
78
83
 
79
84
  class << self
@@ -133,6 +138,7 @@ end
133
138
 
134
139
  directory = File.expand_path(File.dirname(__FILE__))
135
140
 
141
+ require File.join(directory, 'biomart', 'version')
136
142
  require File.join(directory, 'biomart', 'server')
137
143
  require File.join(directory, 'biomart', 'database')
138
144
  require File.join(directory, 'biomart', 'dataset')
@@ -6,6 +6,19 @@ module Biomart
6
6
 
7
7
  attr_reader :name, :display_name, :visible
8
8
 
9
+ # Creates a new Biomart::Dataset object.
10
+ #
11
+ # @param [String] url The URL location of the biomart server.
12
+ # @param [Hash] args An arguments hash giving details of the dataset.
13
+ #
14
+ # arguments hash:
15
+ #
16
+ # {
17
+ # :name => String, #
18
+ # "name" => String, #
19
+ # :display_name => {} #
20
+ #
21
+ # }
9
22
  def initialize( url, args )
10
23
  @url = url or raise ArgumentError, "must pass :url"
11
24
  unless @url =~ /martservice/
@@ -235,15 +248,30 @@ module Biomart
235
248
 
236
249
  if args[:filters]
237
250
  args[:filters].each do |name,value|
238
- if value.is_a? Array
239
- value = value.join(",")
251
+ raise Biomart::ArgumentError, "The filter '#{name}' does not exist" if dataset.filters[name].nil?
252
+
253
+ if dataset.filters[name].type == 'boolean'
254
+ value = value.downcase if value.is_a? String
255
+ if [true,'included','only'].include?(value)
256
+ xml.Filter( :name => name, :excluded => '0' )
257
+ elsif [false,'excluded'].include?(value)
258
+ xml.Filter( :name => name, :excluded => '1' )
259
+ else
260
+ raise Biomart::ArgumentError, "The boolean filter '#{name}' can only accept 'true/included/only' or 'false/excluded' arguments."
261
+ end
262
+ else
263
+ value = value.join(",") if value.is_a? Array
264
+ xml.Filter( :name => name, :value => value )
240
265
  end
241
- xml.Filter( :name => name, :value => value )
242
266
  end
243
267
  else
244
268
  dataset.filters.each do |name,filter|
245
269
  if filter.default?
246
- xml.Filter( :name => name, :value => filter.default_value )
270
+ if filter.type == 'boolean'
271
+ xml.Filter( :name => name, :excluded => filter.default_value )
272
+ else
273
+ xml.Filter( :name => name, :value => filter.default_value )
274
+ end
247
275
  end
248
276
  end
249
277
  end
@@ -13,6 +13,8 @@ module Biomart
13
13
  @qualifier = args["qualifier"]
14
14
  @type = args["type"]
15
15
  @multiple_values = args["multipleValues"] ? true : false
16
+
17
+ @type.downcase! unless @type.nil?
16
18
  end
17
19
 
18
20
  # Convenience method to see if this filter is hidden from
@@ -0,0 +1,3 @@
1
+ module Biomart
2
+ VERSION = "0.2.1"
3
+ end
@@ -0,0 +1,16 @@
1
+ begin
2
+ require "rcov/rcovtask"
3
+
4
+ desc "Analyze code coverage with tests"
5
+ Rcov::RcovTask.new do |t|
6
+ t.libs << "test"
7
+ t.test_files = FileList["test/test*.rb"]
8
+ t.verbose = true
9
+ t.rcov_opts << "--exclude /gems/,/Library/,spec,features"
10
+ end
11
+ rescue LoadError
12
+ if /^1\.8/ === RUBY_VERSION
13
+ puts "[ERROR] Unable to load 'rcov' tasks - please install rcov"
14
+ end
15
+ end
16
+
@@ -1,15 +1,13 @@
1
1
  begin
2
- require 'shoulda'
3
- rescue LoadError
4
- require 'rubygems' unless ENV['NO_RUBYGEMS']
5
- require 'shoulda'
6
- end
2
+ require "shoulda"
3
+ require "rake/testtask"
7
4
 
8
- require 'rake/testtask'
9
-
10
- desc "Run the shoulda test under /spec"
11
- Rake::TestTask.new do |t|
12
- t.libs << "test"
13
- t.test_files = FileList['spec/*_spec.rb']
14
- t.verbose = true
5
+ desc "Run the test suite under /test"
6
+ Rake::TestTask.new do |t|
7
+ t.libs << "test"
8
+ t.test_files = FileList["test/test*.rb"]
9
+ t.verbose = true
10
+ end
11
+ rescue LoadError
12
+ puts "[ERROR] Unable to load 'test' task - please install shoulda"
15
13
  end
@@ -0,0 +1,9 @@
1
+ begin
2
+ require "yard"
3
+
4
+ YARD::Rake::YardocTask.new do |t|
5
+ t.files = ['lib/**/*.rb']
6
+ end
7
+ rescue LoadError
8
+ puts "[ERROR] Unable to load 'yard' tasks - please install yard"
9
+ end
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/test_helper.rb'
1
+ require 'test_helper'
2
2
 
3
3
  class BiomartTest < Test::Unit::TestCase
4
4
  def setup
@@ -42,12 +42,13 @@ class BiomartTest < Test::Unit::TestCase
42
42
 
43
43
  context "A Biomart::Dataset instance" do
44
44
  setup do
45
- @htgt_targ = @htgt.datasets["htgt_targ"]
46
- @htgt_trap = @htgt.datasets["htgt_trap"]
47
- @kermits = @htgt.datasets["kermits"]
48
- @ensembl = @htgt.datasets["mmusculus_gene_ensembl"]
49
- @emma = Biomart::Dataset.new( "http://www.emmanet.org/biomart", { :name => "strains" } )
50
- @dcc = Biomart::Dataset.new( "http://www.i-dcc.org/biomart", { :name => "dcc" } )
45
+ @htgt_targ = @htgt.datasets["htgt_targ"]
46
+ @htgt_trap = @htgt.datasets["htgt_trap"]
47
+ @kermits = @htgt.datasets["kermits"]
48
+ @ensembl = @htgt.datasets["mmusculus_gene_ensembl"]
49
+ @ensembl_var = Biomart::Dataset.new( "http://www.ensembl.org/biomart", { :name => "hsapiens_snp" } )
50
+ @emma = Biomart::Dataset.new( "http://www.emmanet.org/biomart", { :name => "strains" } )
51
+ @dcc = Biomart::Dataset.new( "http://www.knockoutmouse.org/biomart", { :name => "dcc" } )
51
52
  end
52
53
 
53
54
  should "have basic metadata" do
@@ -252,6 +253,47 @@ class BiomartTest < Test::Unit::TestCase
252
253
  assert_equal( false, data_row["ikmc_project_id"].nil?, "The required_attributes search has not filtered out nil values." )
253
254
  end
254
255
  end
256
+
257
+ should "perform searches that involve boolean filters" do
258
+ search_opts = {
259
+ :filters => { 'with_variation_annotation' => true, 'ensembl_gene' => 'ENSG00000244734' },
260
+ :attributes => [ 'refsnp_id','chr_name','chrom_start' ],
261
+ :process_results => true
262
+ }
263
+
264
+ true_results = {}
265
+ assert_nothing_raised( Biomart::BiomartError ) { true_results = @ensembl_var.search( search_opts ) }
266
+ assert( !true_results.empty?, "The search using a boolean filter is empty." )
267
+
268
+ search_opts[:filters].merge!({ 'with_variation_annotation' => 'included' })
269
+ true_results2 = {}
270
+ assert_nothing_raised( Biomart::BiomartError ) { true_results2 = @ensembl_var.search( search_opts ) }
271
+ assert( !true_results2.empty?, "The search using a boolean filter is empty." )
272
+ assert_equal( true_results, true_results2, "Using 'included' for a boolean filter does not give the same result as 'true'." )
273
+
274
+ search_opts[:filters].merge!({ 'with_variation_annotation' => 'only' })
275
+ true_results3 = {}
276
+ assert_nothing_raised( Biomart::BiomartError ) { true_results3 = @ensembl_var.search( search_opts ) }
277
+ assert( !true_results3.empty?, "The search using a boolean filter is empty." )
278
+ assert_equal( true_results, true_results3, "Using 'only' for a boolean filter does not give the same result as 'true'." )
279
+
280
+ search_opts[:filters].merge!({ 'with_variation_annotation' => false })
281
+ false_results = {}
282
+ assert_nothing_raised( Biomart::BiomartError ) { false_results = @ensembl_var.search( search_opts ) }
283
+ assert( !false_results.empty?, "The search using a boolean filter is empty." )
284
+
285
+ search_opts[:filters].merge!({ 'with_variation_annotation' => 'excluded' })
286
+ false_results2 = {}
287
+ assert_nothing_raised( Biomart::BiomartError ) { false_results2 = @ensembl_var.search( search_opts ) }
288
+ assert( !false_results2.empty?, "The search using a boolean filter is empty." )
289
+ assert_equal( false_results, false_results2, "Using 'excluded' for a boolean filter does not give the same result as 'false'." )
290
+
291
+ search_opts[:filters].merge!({ 'with_variation_annotation' => 'flibble' })
292
+ assert_raise( Biomart::ArgumentError ) { @ensembl_var.search( search_opts ) }
293
+
294
+ search_opts[:filters].merge!({ 'with_variation_annot' => true })
295
+ assert_raise( Biomart::ArgumentError ) { @ensembl_var.search( search_opts ) }
296
+ end
255
297
  end
256
298
 
257
299
  context "A Biomart::Attribute instance" do
@@ -282,6 +324,7 @@ class BiomartTest < Test::Unit::TestCase
282
324
 
283
325
  assert( !ens_gene_id.name.nil?, "Biomart::Filter.name is nil." )
284
326
  assert( !ens_gene_id.display_name.nil?, "Biomart::Filter.display_name is nil." )
327
+ assert( !ens_gene_id.type.nil?, "Biomart::Filter.type is nil." )
285
328
 
286
329
  assert( true_false.include?( ens_gene_id.hidden? ), "Biomart::Filter.hidden? is not returning true/false." )
287
330
  assert( true_false.include?( ens_gene_id.default? ), "Biomart::Filter.default? is not returning true/false." )
@@ -294,7 +337,7 @@ class BiomartTest < Test::Unit::TestCase
294
337
  @not_biomart = Biomart::Server.new( "http://www.sanger.ac.uk" )
295
338
  @htgt_targ = @htgt.datasets["htgt_targ"]
296
339
  @bad_dataset = Biomart::Dataset.new( "http://www.sanger.ac.uk/htgt/biomart", { :name => "wibble" } )
297
- @good_biomart = Biomart::Server.new( "http://www.i-dcc.org/biomart" )
340
+ @good_biomart = Biomart::Server.new( "http://www.knockoutmouse.org/biomart" )
298
341
  end
299
342
 
300
343
  should "allow you to ping a server" do
@@ -308,7 +351,7 @@ class BiomartTest < Test::Unit::TestCase
308
351
  end
309
352
 
310
353
  should "handle biomart server errors gracefully" do
311
- assert_raise( Biomart::FilterError ) { @htgt_targ.count( :filters => { "wibbleblibbleblip" => "1" } ) }
354
+ assert_raise( Biomart::ArgumentError ) { @htgt_targ.count( :filters => { "wibbleblibbleblip" => "1" } ) }
312
355
  assert_raise( Biomart::AttributeError ) { @htgt_targ.search( :attributes => ["wibbleblibbleblip"] ) }
313
356
  assert_raise( Biomart::DatasetError ) { @bad_dataset.count() }
314
357
 
@@ -1,9 +1,16 @@
1
- begin
2
- require 'shoulda'
3
- rescue LoadError
4
- require 'rubygems' unless ENV['NO_RUBYGEMS']
5
- require 'shoulda'
1
+
2
+ $:.unshift( "#{File.expand_path(File.dirname(__FILE__))}/../lib" )
3
+
4
+ require 'rubygems'
5
+ require 'bundler/setup'
6
+ require 'shoulda'
7
+
8
+ # Set-up SimpleCov (code coverage tool for Ruby 1.9)
9
+ if /^1.9/ === RUBY_VERSION
10
+ require 'simplecov'
11
+ SimpleCov.start do
12
+ coverage_dir 'simplecov'
13
+ end
6
14
  end
7
15
 
8
- $:.unshift(File.dirname(__FILE__) + '/../lib')
9
16
  require 'biomart'
metadata CHANGED
@@ -1,13 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: biomart
3
3
  version: !ruby/object:Gem::Version
4
- hash: 23
5
4
  prerelease: false
6
5
  segments:
7
6
  - 0
8
7
  - 2
9
- - 0
10
- version: 0.2.0
8
+ - 1
9
+ version: 0.2.1
11
10
  platform: ruby
12
11
  authors:
13
12
  - Darren Oakley
@@ -15,7 +14,7 @@ autorequire:
15
14
  bindir: bin
16
15
  cert_chain: []
17
16
 
18
- date: 2010-06-10 00:00:00 +01:00
17
+ date: 2011-02-16 00:00:00 +00:00
19
18
  default_executable:
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
@@ -26,7 +25,6 @@ dependencies:
26
25
  requirements:
27
26
  - - ">="
28
27
  - !ruby/object:Gem::Version
29
- hash: 3
30
28
  segments:
31
29
  - 0
32
30
  version: "0"
@@ -40,7 +38,6 @@ dependencies:
40
38
  requirements:
41
39
  - - ">="
42
40
  - !ruby/object:Gem::Version
43
- hash: 23
44
41
  segments:
45
42
  - 2
46
43
  - 10
@@ -48,19 +45,16 @@ dependencies:
48
45
  type: :development
49
46
  version_requirements: *id002
50
47
  - !ruby/object:Gem::Dependency
51
- name: hoe
48
+ name: simplecov
52
49
  prerelease: false
53
50
  requirement: &id003 !ruby/object:Gem::Requirement
54
51
  none: false
55
52
  requirements:
56
53
  - - ">="
57
54
  - !ruby/object:Gem::Version
58
- hash: 21
59
55
  segments:
60
- - 2
61
- - 6
62
- - 1
63
- version: 2.6.1
56
+ - 0
57
+ version: "0"
64
58
  type: :development
65
59
  version_requirements: *id003
66
60
  description: A ruby API for interacting with Biomart XML based webservices.
@@ -70,13 +64,14 @@ executables: []
70
64
 
71
65
  extensions: []
72
66
 
73
- extra_rdoc_files:
74
- - History.txt
75
- - Manifest.txt
76
- - README.rdoc
67
+ extra_rdoc_files: []
68
+
77
69
  files:
70
+ - .gitignore
71
+ - Gemfile
72
+ - Gemfile.lock
78
73
  - History.txt
79
- - Manifest.txt
74
+ - Manifest
80
75
  - README.rdoc
81
76
  - Rakefile
82
77
  - biomart.gemspec
@@ -86,11 +81,12 @@ files:
86
81
  - lib/biomart/dataset.rb
87
82
  - lib/biomart/filter.rb
88
83
  - lib/biomart/server.rb
84
+ - lib/biomart/version.rb
89
85
  - script/console
90
- - script/destroy
91
- - script/generate
92
86
  - tasks/metrics.rake
87
+ - tasks/rcov.rake
93
88
  - tasks/shoulda.rake
89
+ - tasks/yard.rake
94
90
  - test/test_biomart.rb
95
91
  - test/test_helper.rb
96
92
  has_rdoc: true
@@ -98,9 +94,8 @@ homepage: http://github.com/dazoakley/biomart
98
94
  licenses: []
99
95
 
100
96
  post_install_message:
101
- rdoc_options:
102
- - --main
103
- - README.rdoc
97
+ rdoc_options: []
98
+
104
99
  require_paths:
105
100
  - lib
106
101
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -108,7 +103,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
108
103
  requirements:
109
104
  - - ">="
110
105
  - !ruby/object:Gem::Version
111
- hash: 3
112
106
  segments:
113
107
  - 0
114
108
  version: "0"
@@ -117,7 +111,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
117
111
  requirements:
118
112
  - - ">="
119
113
  - !ruby/object:Gem::Version
120
- hash: 3
121
114
  segments:
122
115
  - 0
123
116
  version: "0"
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env ruby
2
- APP_ROOT = File.expand_path(File.join(File.dirname(__FILE__), '..'))
3
-
4
- begin
5
- require 'rubigen'
6
- rescue LoadError
7
- require 'rubygems'
8
- require 'rubigen'
9
- end
10
- require 'rubigen/scripts/destroy'
11
-
12
- ARGV.shift if ['--help', '-h'].include?(ARGV[0])
13
- RubiGen::Base.use_component_sources! [:rubygems, :newgem, :newgem_theme, :test_unit]
14
- RubiGen::Scripts::Destroy.new.run(ARGV)
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env ruby
2
- APP_ROOT = File.expand_path(File.join(File.dirname(__FILE__), '..'))
3
-
4
- begin
5
- require 'rubigen'
6
- rescue LoadError
7
- require 'rubygems'
8
- require 'rubigen'
9
- end
10
- require 'rubigen/scripts/generate'
11
-
12
- ARGV.shift if ['--help', '-h'].include?(ARGV[0])
13
- RubiGen::Base.use_component_sources! [:rubygems, :newgem, :newgem_theme, :test_unit]
14
- RubiGen::Scripts::Generate.new.run(ARGV)