bio-polyploid-tools 0.7.1 → 0.7.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +9 -11
- data/VERSION +1 -1
- data/bin/polymarker.rb +11 -2
- data/bio-polyploid-tools.gemspec +2 -2
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ca90e857f0fdaba3446c19387aea4d2c58a1b450
|
4
|
+
data.tar.gz: 4d52a29b06d2eb283b1b4233e95172231b09ce02
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e07d9eeff0771a1d77d9fe1568b48c1cb0fd485fa79f0ae9c8e1932e8400b8e40b43291495da27490fc86bd721077902b8b1d5e90846b69799c4e16b8fb8cdd2
|
7
|
+
data.tar.gz: f81e1c0cf94ae0b0c77ca29d69f0a6b44919e70965b5c2b9cb0c55c065803e2c01e85954b051d2f6ff1900cc61e5eb385409a23d8e90818e0a39f9fa0db27d36
|
data/README.md
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
#bio-polyploid-tools
|
2
2
|
|
3
3
|
##Introduction
|
4
|
-
This tools are designed to deal with polyploid wheat. The first tool is to design KASP primers,
|
5
|
-
making them as specific as possible.
|
4
|
+
This tools are designed to deal with polyploid wheat. The first tool is to design KASP primers, making them as specific as possible.
|
6
5
|
|
7
6
|
|
8
7
|
##Installation
|
@@ -17,12 +16,9 @@ You need to have in your ```$PATH``` the following programs:
|
|
17
16
|
|
18
17
|
The code has been developed on ruby 2.1.0, but it should work on 1.9.3 and above.
|
19
18
|
|
20
|
-
|
21
19
|
#PolyMarker
|
22
20
|
|
23
|
-
To run poolymerker with the CSS wheat contigs, you need to unzip the
|
24
|
-
[reference file](ftp://ftp.ensemblgenomes.org/pub/release-25/plants/fasta/triticum_aestivum/dna/Triticum_aestivum.IWGSC2.25.dna.genome.fa.gz
|
25
|
-
).
|
21
|
+
To run poolymerker with the CSS wheat contigs, you need to unzip the reference file from [ensembl](http://ftp.ensemblgenomes.org/pub/release-25/plants/fasta/triticum_aestivum/dna/Triticum_aestivum.IWGSC2.25.dna.genome.fa.gz).
|
26
22
|
|
27
23
|
|
28
24
|
|
@@ -30,9 +26,7 @@ To run poolymerker with the CSS wheat contigs, you need to unzip the
|
|
30
26
|
polymarker.rb --contigs Triticum_aestivum.IWGSC2.25.dna.genome.fa --marker_list snp_list.csv --output output_folder
|
31
27
|
```
|
32
28
|
|
33
|
-
The ```snp_list``` file must follow the convention
|
34
|
-
```<ID>,<Chromosome>,<SEQUENCE>```
|
35
|
-
with the SNP inside the sequence in the format [A/T]. As a reference, look at test/data/short_primer_design_test.csv
|
29
|
+
The ```snp_list``` file must follow the convention ```ID,Chromosome,SEQUENCE``` with the SNP inside the sequence in the format [A/T]. As a reference, look at test/data/short_primer_design_test.csv
|
36
30
|
|
37
31
|
If you want to use the web interface, visit the [PolyMarker webservice at TGAC](http://polymarker.tgac.ac.uk)
|
38
32
|
|
@@ -49,6 +43,7 @@ Usage: polymarker.rb [options]
|
|
49
43
|
-r, --reference FILE Fasta file with the sequence for the markers (to complement --snp_list)
|
50
44
|
-o, --output FOLDER Output folder
|
51
45
|
-e, --exonerate_model MODEL Model to be used in exonerate to search for the contigs
|
46
|
+
-i, --min_identity INT Minimum identity to consider a hit (default 90)
|
52
47
|
-a, --arm_selection arm_selection_embl|arm_selection_morex|arm_selection_first_two
|
53
48
|
Function to decide the chromome arm
|
54
49
|
-p, --primer_3_preferences FILE file with preferences to be sent to primer3
|
@@ -61,7 +56,7 @@ Usage: polymarker.rb [options]
|
|
61
56
|
By default, the contigs and pseudomolecules from [ensembl](ftp://ftp.ensemblgenomes.org/pub/release-25/plants/fasta/triticum_aestivum/dna/Triticum_aestivum.IWGSC2.25.dna.genome.fa.gz
|
62
57
|
) are used. However, it is possible to use a custom reference. To define the chromosome where each contig belongs the argument ```arm_selection``` is used. The defailt uses ids like: ```IWGSC_CSS_1AL_scaff_110```, where the third field, separated by underscores is used. A simple way to add costum references is to rename the fasta file to follow that convention. Another way is to use the option ```--arm_selection arm_selection_first_two```, where only the first two characters in each contig is used as identifier, useful when pseudomolecules are named after the chromosomes (ie: ">1A" in the fasta file).
|
63
58
|
|
64
|
-
If your contigs follow a different convention, in ```polymarker.rb``` it is possible to define new parsers, by adding at the begining, with the rest of the parsers a new lambda like:
|
59
|
+
If your contigs follow a different convention, in the file ```polymarker.rb``` it is possible to define new parsers, by adding at the begining, with the rest of the parsers a new lambda like:
|
65
60
|
|
66
61
|
```rb
|
67
62
|
arm_selection_functions[:arm_selection_embl] = lambda do | contig_name|
|
@@ -80,12 +75,15 @@ The function should return a 2 character string, when the first is the chromosom
|
|
80
75
|
|
81
76
|
##Release Notes
|
82
77
|
|
78
|
+
###0.7.2
|
79
|
+
* FEATURE: Added a flag ```min_identity``` to set the minimum identity to consider a hit. The default is 90
|
80
|
+
|
83
81
|
###0.7.1
|
84
82
|
* BUGFIX: Now the parser for ```arm_selection_embl``` works with the mixture of contigs and pseudomolecules
|
85
83
|
* DOC: Added documentation on how to use custom references.
|
86
84
|
|
87
85
|
###0.7.0
|
88
|
-
* Added flag ```
|
86
|
+
* Added flag ```genomes_count``` for number of genomes, to be used on tetraploids, etc.
|
89
87
|
|
90
88
|
###0.6.1
|
91
89
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.7.
|
1
|
+
0.7.2
|
data/bin/polymarker.rb
CHANGED
@@ -61,6 +61,8 @@ options[:flanking_size] = 150;
|
|
61
61
|
options[:variation_free_region] = 0
|
62
62
|
options[:extract_found_contigs] = false
|
63
63
|
options[:genomes_count] = 3
|
64
|
+
options[:min_identity] = 90
|
65
|
+
|
64
66
|
options[:primer_3_preferences] = {
|
65
67
|
:primer_product_size_range => "50-150" ,
|
66
68
|
:primer_max_size => 25 ,
|
@@ -98,6 +100,10 @@ OptionParser.new do |opts|
|
|
98
100
|
opts.on("-r", "--reference FILE", "Fasta file with the sequence for the markers (to complement --snp_list)") do |o|
|
99
101
|
options[:reference] = o
|
100
102
|
end
|
103
|
+
|
104
|
+
opts.on("-i", "--min_identity INT", "Minimum identity to consider a hit (default 90)") do |o|
|
105
|
+
options[:min_identity] = o.to_i
|
106
|
+
end
|
101
107
|
|
102
108
|
opts.on("-o", "--output FOLDER", "Output folder") do |o|
|
103
109
|
options[:output_folder] = o
|
@@ -123,7 +129,7 @@ OptionParser.new do |opts|
|
|
123
129
|
options[:extract_found_contigs] = true
|
124
130
|
end
|
125
131
|
|
126
|
-
opts.on("-P", "--primers_to_order")do
|
132
|
+
opts.on("-P", "--primers_to_order", "If present, save a separate file with the primers with the KASP tails")do
|
127
133
|
#TODO: have a string with the tails, optional.
|
128
134
|
options[:primers_to_order] = true
|
129
135
|
end
|
@@ -131,6 +137,7 @@ OptionParser.new do |opts|
|
|
131
137
|
|
132
138
|
end.parse!
|
133
139
|
|
140
|
+
|
134
141
|
validate_files(options)
|
135
142
|
|
136
143
|
if options[:primer_3_preferences][:primer_product_size_range]
|
@@ -172,6 +179,8 @@ primer_3_output="#{output_folder}/primer_3_output_temp"
|
|
172
179
|
exons_filename="#{output_folder}/exons_genes_and_contigs.fa"
|
173
180
|
output_primers="#{output_folder}/primers.csv"
|
174
181
|
output_to_order="#{output_folder}/primers_to_order.csv"
|
182
|
+
min_identity= options[:min_identity]
|
183
|
+
|
175
184
|
@status_file="#{output_folder}/status.txt"
|
176
185
|
|
177
186
|
primer_3_config=File.expand_path(File.dirname(__FILE__) + '/../conf/primer3_config')
|
@@ -183,7 +192,7 @@ def write_status(status)
|
|
183
192
|
f.close
|
184
193
|
end
|
185
194
|
|
186
|
-
|
195
|
+
|
187
196
|
snps = Array.new
|
188
197
|
|
189
198
|
begin
|
data/bio-polyploid-tools.gemspec
CHANGED
@@ -2,11 +2,11 @@
|
|
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: bio-polyploid-tools 0.7.
|
5
|
+
# stub: bio-polyploid-tools 0.7.2 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "bio-polyploid-tools"
|
9
|
-
s.version = "0.7.
|
9
|
+
s.version = "0.7.2"
|
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"]
|