basil 0.0.4 → 0.1.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.
- data/Gemfile +9 -3
- data/Rakefile +48 -1
- data/basil.gemspec +73 -17
- data/lib/basil/version.rb +9 -0
- data/spec/basil_spec.rb +7 -3
- data/spec/spec_helper.rb +3 -1
- metadata +69 -38
- data/.gitignore +0 -2
data/Gemfile
CHANGED
data/Rakefile
CHANGED
@@ -1 +1,48 @@
|
|
1
|
-
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'bundler'
|
5
|
+
|
6
|
+
require './lib/basil/version.rb'
|
7
|
+
|
8
|
+
begin
|
9
|
+
Bundler.setup(:default, :development)
|
10
|
+
rescue Bundler::BundlerError => e
|
11
|
+
$stderr.puts e.message
|
12
|
+
$stderr.puts "Run `bundle install` to install missing gems"
|
13
|
+
exit e.status_code
|
14
|
+
end
|
15
|
+
require 'rake'
|
16
|
+
|
17
|
+
require 'jeweler'
|
18
|
+
Jeweler::Tasks.new do |gem|
|
19
|
+
gem.name = "basil"
|
20
|
+
gem.homepage = "http://audy.github.com/basil"
|
21
|
+
gem.license = "MIT"
|
22
|
+
gem.summary = "Weapons-grade HTML demultiplexer"
|
23
|
+
gem.description = "Split multiplexed Illumina/454/IonTorrent/etc... output by barcode"
|
24
|
+
gem.email = "harekrishna@gmail.com"
|
25
|
+
gem.authors = ["Austin G. Davis-Richardson"]
|
26
|
+
gem.version = Basil::Version::STRING
|
27
|
+
end
|
28
|
+
Jeweler::RubygemsDotOrgTasks.new
|
29
|
+
|
30
|
+
require 'rake/testtask'
|
31
|
+
Rake::TestTask.new(:test) do |test|
|
32
|
+
test.libs << 'lib' << 'test'
|
33
|
+
test.pattern = 'test/**/test_*.rb'
|
34
|
+
test.verbose = true
|
35
|
+
end
|
36
|
+
|
37
|
+
task :default => :test
|
38
|
+
|
39
|
+
require 'rdoc/task'
|
40
|
+
Rake::RDocTask.new do |rdoc|
|
41
|
+
|
42
|
+
version = Basil::Version::STRING
|
43
|
+
|
44
|
+
rdoc.rdoc_dir = 'rdoc'
|
45
|
+
rdoc.title = "test #{version}"
|
46
|
+
rdoc.rdoc_files.include('readme.md')
|
47
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
48
|
+
end
|
data/basil.gemspec
CHANGED
@@ -1,22 +1,78 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
1
4
|
# -*- encoding: utf-8 -*-
|
2
|
-
$:.push File.expand_path("../lib", __FILE__)
|
3
|
-
require 'basil/version'
|
4
5
|
|
5
6
|
Gem::Specification.new do |s|
|
6
|
-
s.name
|
7
|
-
s.version
|
8
|
-
|
9
|
-
s.
|
10
|
-
s.
|
11
|
-
s.
|
12
|
-
s.description =
|
13
|
-
s.
|
14
|
-
s.
|
15
|
-
s.
|
16
|
-
|
7
|
+
s.name = "basil"
|
8
|
+
s.version = "0.1.1"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Austin G. Davis-Richardson"]
|
12
|
+
s.date = "2012-09-18"
|
13
|
+
s.description = "Split multiplexed Illumina/454/IonTorrent/etc... output by barcode"
|
14
|
+
s.email = "harekrishna@gmail.com"
|
15
|
+
s.executables = ["basil"]
|
16
|
+
s.files = [
|
17
|
+
".rspec",
|
18
|
+
".rvmrc",
|
19
|
+
"Gemfile",
|
20
|
+
"Rakefile",
|
21
|
+
"basil.gemspec",
|
22
|
+
"bin/basil",
|
23
|
+
"lib/basil.rb",
|
24
|
+
"lib/basil/barcodes.rb",
|
25
|
+
"lib/basil/basil.rb",
|
26
|
+
"lib/basil/buffer.rb",
|
27
|
+
"lib/basil/cli.rb",
|
28
|
+
"lib/basil/version.rb",
|
29
|
+
"readme.md",
|
30
|
+
"spec/basil_spec.rb",
|
31
|
+
"spec/buffer_spec.rb",
|
32
|
+
"spec/cli_spec.rb",
|
33
|
+
"spec/data/barcodes.csv",
|
34
|
+
"spec/data/illumina/s_1_1_001_qseq.txt",
|
35
|
+
"spec/data/illumina/s_1_2_001_qseq.txt",
|
36
|
+
"spec/data/illumina/s_1_3_001_qseq.txt",
|
37
|
+
"spec/data/test.fasta",
|
38
|
+
"spec/data/test.fastq",
|
39
|
+
"spec/data/test.qseq",
|
40
|
+
"spec/spec_helper.rb"
|
41
|
+
]
|
42
|
+
s.homepage = "http://audy.github.com/basil"
|
43
|
+
s.licenses = ["MIT"]
|
17
44
|
s.require_paths = ["lib"]
|
18
|
-
s.
|
19
|
-
s.
|
20
|
-
|
21
|
-
s.
|
45
|
+
s.rubygems_version = "1.8.24"
|
46
|
+
s.summary = "Weapons-grade HTML demultiplexer"
|
47
|
+
|
48
|
+
if s.respond_to? :specification_version then
|
49
|
+
s.specification_version = 3
|
50
|
+
|
51
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
52
|
+
s.add_runtime_dependency(%q<basil>, [">= 0"])
|
53
|
+
s.add_runtime_dependency(%q<dna>, [">= 0"])
|
54
|
+
s.add_runtime_dependency(%q<trollop>, [">= 0"])
|
55
|
+
s.add_development_dependency(%q<jeweler>, [">= 0"])
|
56
|
+
s.add_development_dependency(%q<jeweler>, [">= 0"])
|
57
|
+
s.add_development_dependency(%q<jeweler>, [">= 0"])
|
58
|
+
s.add_development_dependency(%q<jeweler>, [">= 0"])
|
59
|
+
else
|
60
|
+
s.add_dependency(%q<basil>, [">= 0"])
|
61
|
+
s.add_dependency(%q<dna>, [">= 0"])
|
62
|
+
s.add_dependency(%q<trollop>, [">= 0"])
|
63
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
64
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
65
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
66
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
67
|
+
end
|
68
|
+
else
|
69
|
+
s.add_dependency(%q<basil>, [">= 0"])
|
70
|
+
s.add_dependency(%q<dna>, [">= 0"])
|
71
|
+
s.add_dependency(%q<trollop>, [">= 0"])
|
72
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
73
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
74
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
75
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
76
|
+
end
|
22
77
|
end
|
78
|
+
|
data/spec/basil_spec.rb
CHANGED
@@ -19,6 +19,10 @@ describe Basil::Basil do
|
|
19
19
|
barcodes.should_not raise_error TypeError
|
20
20
|
end
|
21
21
|
|
22
|
+
it 'has a version number' do
|
23
|
+
Basil::Version::STRING.should_not be_nil
|
24
|
+
end
|
25
|
+
|
22
26
|
it 'raises an error if duplicate barcodes are specified' do
|
23
27
|
Basil::Basil.new({ 1 => 'gggg', 2 => 'gggg' }).should raise_error
|
24
28
|
end
|
@@ -32,16 +36,16 @@ describe Basil::Basil do
|
|
32
36
|
basil.recognize("NGATC").first.should == 1
|
33
37
|
end
|
34
38
|
|
35
|
-
it 'preserves case sensitivity
|
39
|
+
it '#recognize preserves case sensitivity when given regexp' do
|
36
40
|
basil = Basil::Basil.new(1 => /^.GATC/)
|
37
41
|
basil.recognize("Ngatc").should be_nil
|
38
42
|
end
|
39
43
|
|
40
|
-
it '#recognize is case
|
44
|
+
it '#recognize is case sensitive' do
|
41
45
|
basil.recognize(dna.upcase!).first.should == 1
|
42
46
|
end
|
43
47
|
|
44
|
-
it '#recognize ^ is prepended to barcode regexp if strings are provided' do
|
48
|
+
it '#recognize ^ is automatically prepended to barcode regexp if strings are provided' do
|
45
49
|
basil.recognize('aggggaaa').should be_nil
|
46
50
|
end
|
47
51
|
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: basil
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 0.
|
8
|
+
- 1
|
9
|
+
- 1
|
10
|
+
version: 0.1.1
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Austin G. Davis-Richardson
|
@@ -15,11 +15,10 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-
|
18
|
+
date: 2012-09-18 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
|
-
|
22
|
-
prerelease: false
|
21
|
+
type: :runtime
|
23
22
|
requirement: &id001 !ruby/object:Gem::Requirement
|
24
23
|
none: false
|
25
24
|
requirements:
|
@@ -29,11 +28,11 @@ dependencies:
|
|
29
28
|
segments:
|
30
29
|
- 0
|
31
30
|
version: "0"
|
32
|
-
type: :runtime
|
33
31
|
version_requirements: *id001
|
34
|
-
|
35
|
-
name: trollop
|
32
|
+
name: basil
|
36
33
|
prerelease: false
|
34
|
+
- !ruby/object:Gem::Dependency
|
35
|
+
type: :runtime
|
37
36
|
requirement: &id002 !ruby/object:Gem::Requirement
|
38
37
|
none: false
|
39
38
|
requirements:
|
@@ -43,11 +42,11 @@ dependencies:
|
|
43
42
|
segments:
|
44
43
|
- 0
|
45
44
|
version: "0"
|
46
|
-
type: :runtime
|
47
45
|
version_requirements: *id002
|
48
|
-
|
49
|
-
name: rspec
|
46
|
+
name: dna
|
50
47
|
prerelease: false
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
type: :runtime
|
51
50
|
requirement: &id003 !ruby/object:Gem::Requirement
|
52
51
|
none: false
|
53
52
|
requirements:
|
@@ -57,11 +56,11 @@ dependencies:
|
|
57
56
|
segments:
|
58
57
|
- 0
|
59
58
|
version: "0"
|
60
|
-
type: :runtime
|
61
59
|
version_requirements: *id003
|
62
|
-
|
63
|
-
name: bundler
|
60
|
+
name: trollop
|
64
61
|
prerelease: false
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
type: :development
|
65
64
|
requirement: &id004 !ruby/object:Gem::Requirement
|
66
65
|
none: false
|
67
66
|
requirements:
|
@@ -71,11 +70,53 @@ dependencies:
|
|
71
70
|
segments:
|
72
71
|
- 0
|
73
72
|
version: "0"
|
74
|
-
type: :runtime
|
75
73
|
version_requirements: *id004
|
76
|
-
|
77
|
-
|
78
|
-
-
|
74
|
+
name: jeweler
|
75
|
+
prerelease: false
|
76
|
+
- !ruby/object:Gem::Dependency
|
77
|
+
type: :development
|
78
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
79
|
+
none: false
|
80
|
+
requirements:
|
81
|
+
- - ">="
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
hash: 3
|
84
|
+
segments:
|
85
|
+
- 0
|
86
|
+
version: "0"
|
87
|
+
version_requirements: *id005
|
88
|
+
name: jeweler
|
89
|
+
prerelease: false
|
90
|
+
- !ruby/object:Gem::Dependency
|
91
|
+
type: :development
|
92
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
93
|
+
none: false
|
94
|
+
requirements:
|
95
|
+
- - ">="
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
hash: 3
|
98
|
+
segments:
|
99
|
+
- 0
|
100
|
+
version: "0"
|
101
|
+
version_requirements: *id006
|
102
|
+
name: jeweler
|
103
|
+
prerelease: false
|
104
|
+
- !ruby/object:Gem::Dependency
|
105
|
+
type: :development
|
106
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
107
|
+
none: false
|
108
|
+
requirements:
|
109
|
+
- - ">="
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
hash: 3
|
112
|
+
segments:
|
113
|
+
- 0
|
114
|
+
version: "0"
|
115
|
+
version_requirements: *id007
|
116
|
+
name: jeweler
|
117
|
+
prerelease: false
|
118
|
+
description: Split multiplexed Illumina/454/IonTorrent/etc... output by barcode
|
119
|
+
email: harekrishna@gmail.com
|
79
120
|
executables:
|
80
121
|
- basil
|
81
122
|
extensions: []
|
@@ -83,7 +124,6 @@ extensions: []
|
|
83
124
|
extra_rdoc_files: []
|
84
125
|
|
85
126
|
files:
|
86
|
-
- .gitignore
|
87
127
|
- .rspec
|
88
128
|
- .rvmrc
|
89
129
|
- Gemfile
|
@@ -95,6 +135,7 @@ files:
|
|
95
135
|
- lib/basil/basil.rb
|
96
136
|
- lib/basil/buffer.rb
|
97
137
|
- lib/basil/cli.rb
|
138
|
+
- lib/basil/version.rb
|
98
139
|
- readme.md
|
99
140
|
- spec/basil_spec.rb
|
100
141
|
- spec/buffer_spec.rb
|
@@ -107,9 +148,9 @@ files:
|
|
107
148
|
- spec/data/test.fastq
|
108
149
|
- spec/data/test.qseq
|
109
150
|
- spec/spec_helper.rb
|
110
|
-
homepage: http://github.com/
|
111
|
-
licenses:
|
112
|
-
|
151
|
+
homepage: http://audy.github.com/basil
|
152
|
+
licenses:
|
153
|
+
- MIT
|
113
154
|
post_install_message:
|
114
155
|
rdoc_options: []
|
115
156
|
|
@@ -135,20 +176,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
135
176
|
version: "0"
|
136
177
|
requirements: []
|
137
178
|
|
138
|
-
rubyforge_project:
|
179
|
+
rubyforge_project:
|
139
180
|
rubygems_version: 1.8.24
|
140
181
|
signing_key:
|
141
182
|
specification_version: 3
|
142
|
-
summary:
|
143
|
-
test_files:
|
144
|
-
|
145
|
-
- spec/buffer_spec.rb
|
146
|
-
- spec/cli_spec.rb
|
147
|
-
- spec/data/barcodes.csv
|
148
|
-
- spec/data/illumina/s_1_1_001_qseq.txt
|
149
|
-
- spec/data/illumina/s_1_2_001_qseq.txt
|
150
|
-
- spec/data/illumina/s_1_3_001_qseq.txt
|
151
|
-
- spec/data/test.fasta
|
152
|
-
- spec/data/test.fastq
|
153
|
-
- spec/data/test.qseq
|
154
|
-
- spec/spec_helper.rb
|
183
|
+
summary: Weapons-grade HTML demultiplexer
|
184
|
+
test_files: []
|
185
|
+
|
data/.gitignore
DELETED