bio-ucsc-api 0.5.1 → 0.5.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,4 +1,5 @@
1
1
  #Change Log
2
+ * **BUG-FIX** (v 0.5.2): Fix a Bio::Ucsc::File::Twobit#subseq error when a query region is all included by a masked (Ns) region
2
3
  * **UPDATE** (v.0.5.1): Mouse mm10 database is supported.
3
4
  * **BUG-FIX** (v.0.5.0): Connecting multiple databeses simultaneously now works well.
4
5
  * **NEW** (v0.5.0): Support automatic definitions of table association using the "all.joiner" schema file.
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # bio-ucsc-api version 0.5.1
1
+ # bio-ucsc-api version 0.5.2
2
2
 
3
3
  **The Ruby UCSC API**: accessing the UCSC Genome Database using Ruby.
4
4
 
@@ -124,9 +124,8 @@ Sometimes, queries using raw SQLs provide elegant solutions.
124
124
  For gene prediction (genePred) tables, such as RefSeq, EndGene, and WgEncodeGencodeBasicV12, Ruby UCSC API automatically implements `#exon`, `#introns`, `#cdss` (or an alias `#cdses`) methods. Exons, introns, and CDSes are accessible as Array objects of `Bio::GenomicInterval`.
125
125
 
126
126
  ```ruby
127
- Bio::Ucsc::Hg19.connec
128
- i = Bio::GenomicInterval.parse("chr1:1,000,000-1,100,000")
129
- r = Bio::Ucsc::Hg19::RefGene.find_by_interval(i)
127
+ Bio::Ucsc::Hg19.connect
128
+ r = Bio::Ucsc::Hg19::RefGene.with_interval("chr1:1,000,000-1,100,000").first
130
129
  puts "gene strand = #{r.strand}"
131
130
  r.exons.each{|x|puts "[#{x.chr_start}, #{x.chr_end}]"}
132
131
  r.cdss.each{|x|puts "[#{x.chr_start}, #{x.chr_end}]"}
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.1
1
+ 0.5.2
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "bio-ucsc-api"
8
- s.version = "0.5.1"
8
+ s.version = "0.5.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Hiroyuki Mishima", "Jan Aerts"]
12
- s.date = "2012-09-27"
12
+ s.date = "2012-12-20"
13
13
  s.description = "Ruby UCSC API: accessing the UCSC Genome Database using Ruby"
14
14
  s.email = "missy@be.to"
15
15
  s.extra_rdoc_files = [
@@ -17,7 +17,7 @@ require "#{base}/gi.rb"
17
17
 
18
18
  module Bio
19
19
  module Ucsc
20
- VERSION = "0.5.1"
20
+ VERSION = "0.5.2"
21
21
  base = "#{::File.dirname(__FILE__)}/bio-ucsc"
22
22
 
23
23
  # mammmals #####################################
@@ -112,18 +112,22 @@ module Bio
112
112
  end
113
113
 
114
114
  def find_by_interval(interval)
115
+ # does not support an interval involving multiple N-blocks
116
+
115
117
  interval = Bio::Ucsc::Gi.wrap(interval)
116
118
  seq = self.find_by_interval_raw(interval)
117
119
  @records[interval.chrom].n_block_intervals.map do |nb|
118
120
  if interval.overlapped?(nb)
119
121
  case interval.compare(nb)
120
- when :equal,:contained_by
122
+ when :equal,:contains
121
123
  seq = 'N' * interval.overlap(nb)
122
- when :contains
123
- left_len = nb.chr_start - interval.chr_start + 1
124
- right_len = interval.chr_end - nb.chr_end + 1
125
- seq[0, left_len] = 'N' * left_len
126
- seq[-right_len, right_len] = 'N' * right_len
124
+ when :contained_by
125
+ left_len = nb.chr_start - interval.chr_start + 1
126
+ right_len = interval.chr_end - nb.chr_end + 1
127
+ seq =
128
+ seq[0 .. left_len] +
129
+ 'N' * (seq.length - left_len - right_len) +
130
+ seq[-right_len .. -1]
127
131
  when :left_overlapped
128
132
  left_len = nb.chr_end - interval.chr_start + 1
129
133
  seq[0, left_len] = 'N' * left_len
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bio-ucsc-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-09-27 00:00:00.000000000 Z
13
+ date: 2012-12-20 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activerecord
17
- requirement: &158480880 !ruby/object:Gem::Requirement
17
+ requirement: &254854620 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: 3.0.7
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *158480880
25
+ version_requirements: *254854620
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: activesupport
28
- requirement: &158480020 !ruby/object:Gem::Requirement
28
+ requirement: &254853820 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: 3.0.7
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *158480020
36
+ version_requirements: *254853820
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: mysql
39
- requirement: &158479400 !ruby/object:Gem::Requirement
39
+ requirement: &254853120 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ~>
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: 2.8.1
45
45
  type: :runtime
46
46
  prerelease: false
47
- version_requirements: *158479400
47
+ version_requirements: *254853120
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: bio-genomic-interval
50
- requirement: &158478820 !ruby/object:Gem::Requirement
50
+ requirement: &254868560 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ! '>='
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: 0.1.2
56
56
  type: :runtime
57
57
  prerelease: false
58
- version_requirements: *158478820
58
+ version_requirements: *254868560
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: safe_attributes
61
- requirement: &158494120 !ruby/object:Gem::Requirement
61
+ requirement: &254867560 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ! '>='
@@ -66,10 +66,10 @@ dependencies:
66
66
  version: 1.0.8
67
67
  type: :runtime
68
68
  prerelease: false
69
- version_requirements: *158494120
69
+ version_requirements: *254867560
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: rake
72
- requirement: &158493200 !ruby/object:Gem::Requirement
72
+ requirement: &254866900 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ~>
@@ -77,10 +77,10 @@ dependencies:
77
77
  version: 0.9.2.2
78
78
  type: :development
79
79
  prerelease: false
80
- version_requirements: *158493200
80
+ version_requirements: *254866900
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: rspec
83
- requirement: &158492580 !ruby/object:Gem::Requirement
83
+ requirement: &254866200 !ruby/object:Gem::Requirement
84
84
  none: false
85
85
  requirements:
86
86
  - - ~>
@@ -88,10 +88,10 @@ dependencies:
88
88
  version: 2.9.0
89
89
  type: :development
90
90
  prerelease: false
91
- version_requirements: *158492580
91
+ version_requirements: *254866200
92
92
  - !ruby/object:Gem::Dependency
93
93
  name: bundler
94
- requirement: &158491920 !ruby/object:Gem::Requirement
94
+ requirement: &254865620 !ruby/object:Gem::Requirement
95
95
  none: false
96
96
  requirements:
97
97
  - - ~>
@@ -99,10 +99,10 @@ dependencies:
99
99
  version: 1.1.0
100
100
  type: :development
101
101
  prerelease: false
102
- version_requirements: *158491920
102
+ version_requirements: *254865620
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: jeweler
105
- requirement: &158491160 !ruby/object:Gem::Requirement
105
+ requirement: &254864760 !ruby/object:Gem::Requirement
106
106
  none: false
107
107
  requirements:
108
108
  - - ~>
@@ -110,10 +110,10 @@ dependencies:
110
110
  version: 1.8.3
111
111
  type: :development
112
112
  prerelease: false
113
- version_requirements: *158491160
113
+ version_requirements: *254864760
114
114
  - !ruby/object:Gem::Dependency
115
115
  name: bio
116
- requirement: &158490320 !ruby/object:Gem::Requirement
116
+ requirement: &254864120 !ruby/object:Gem::Requirement
117
117
  none: false
118
118
  requirements:
119
119
  - - ! '>='
@@ -121,10 +121,10 @@ dependencies:
121
121
  version: 1.4.1
122
122
  type: :development
123
123
  prerelease: false
124
- version_requirements: *158490320
124
+ version_requirements: *254864120
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: rdoc
127
- requirement: &158488760 !ruby/object:Gem::Requirement
127
+ requirement: &254863240 !ruby/object:Gem::Requirement
128
128
  none: false
129
129
  requirements:
130
130
  - - ! '>='
@@ -132,7 +132,7 @@ dependencies:
132
132
  version: 3.9.1
133
133
  type: :development
134
134
  prerelease: false
135
- version_requirements: *158488760
135
+ version_requirements: *254863240
136
136
  description: ! 'Ruby UCSC API: accessing the UCSC Genome Database using Ruby'
137
137
  email: missy@be.to
138
138
  executables: []
@@ -575,7 +575,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
575
575
  version: '0'
576
576
  segments:
577
577
  - 0
578
- hash: 4141800298986362982
578
+ hash: 3725389478649005497
579
579
  required_rubygems_version: !ruby/object:Gem::Requirement
580
580
  none: false
581
581
  requirements: