iroki 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: efdef2ed9ef96334b328c21891ddef36c534ea3e
4
- data.tar.gz: d4b1f546a504d7975a8896b1eb650ceb9470f734
3
+ metadata.gz: 9b9b21077f245bb5dd166b189504376da92112db
4
+ data.tar.gz: 8ccd71597ff5d2f231a7b3d689df1f37b82a5902
5
5
  SHA512:
6
- metadata.gz: b2690be82483bcb8d3359b434f42e7ddaea415d46c3fd9725cc78601b6e71c4e4afba8b43250a0085db9c933dc0697abf6331b24125e0c188928b1f01194bf7d
7
- data.tar.gz: b5459eb94ba1acb9ed252ef22b9a0d118ea178e28fa1852b6a7036f48585aff540e415e1b5fbc6e7532a4ef7a474ae1a6692e0283987fff7903bdd535ad599f7
6
+ metadata.gz: ffb3938259ced78bc637f5ddd95378b61a79c24d3c0b97997e616ab906b2dd281720f5273cf1291b7ccf8b2f4ceb7b6686b5a62bb75a55ec8aa6044e1d6f91c1
7
+ data.tar.gz: 7b896d9575a1ff07b97cc565e0996f7da3293df9957b0cfc566dcc2eaa7786ed172da48eccfe3cc2e3418858274b9632cca592e53aaa2f9742f6685355cf4d83
data/.gitignore CHANGED
@@ -9,3 +9,4 @@
9
9
  /tmp/
10
10
  *.lock
11
11
  .ruby-gemset
12
+ newicks
data/README.md CHANGED
@@ -39,6 +39,18 @@ Or install it yourself as:
39
39
 
40
40
  $ gem install iroki
41
41
 
42
+ ## Other programs ##
43
+
44
+ ### Newick format to PhyloXML ###
45
+
46
+ - `exe/newick_to_phyloxml`
47
+
48
+ This will be installed when you run `gem install iroki`.
49
+
50
+ *Usage*: `newick_to_phyloxml tree.newick > tree.phyloxml`
51
+
52
+ *Note*: No specs for this as of yet.
53
+
42
54
  ## Development ##
43
55
 
44
56
  After checking out the repo, run `bin/setup` to install
@@ -76,3 +88,11 @@ executable, and use RubyGems for installation.
76
88
  ### 0.0.3 ###
77
89
 
78
90
  Add a [Dockerfile](https://github.com/mooreryan/iroki/blob/master/Dockerfile) and a [wrapper script](https://github.com/mooreryan/iroki/blob/master/exe/iroki_docker) for running Iroki with Docker.
91
+
92
+ ### 0.0.4 ###
93
+
94
+ Fix the `iroki_docker` install bug.
95
+
96
+ ### 0.0.5 ###
97
+
98
+ Add `newick_to_phyloxml` script.
@@ -0,0 +1,57 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "set"
4
+ require "bio"
5
+
6
+ def leaf? tree, node
7
+ tree.children(node).empty?
8
+ end
9
+
10
+ newick = ARGV.first
11
+
12
+ treeio = Bio::FlatFile.open(Bio::Newick, newick)
13
+
14
+ newick = treeio.next_entry
15
+ $tree = newick.tree
16
+
17
+ $xml_start = %q{<phyloxml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.phyloxml.org http://www.phyloxml.org/1.10/phyloxml.xsd" xmlns="http://www.phyloxml.org">
18
+ <phylogeny rooted="false">
19
+ <clade>
20
+ }
21
+
22
+ $xml_end = %q{</clade>
23
+ </phylogeny>
24
+ </phyloxml>
25
+ }
26
+
27
+ added_nodes = Set.new
28
+
29
+ def leaf? tree, node
30
+ tree.descendents(node).count.zero?
31
+ end
32
+
33
+ def make_xml_string descendents
34
+ while (node = descendents.shift)
35
+ unless $already_added.include? node
36
+ if leaf? $tree, node
37
+ $xml_start << "<clade>\n<name>#{node.name}</name>\n</clade>\n"
38
+ $already_added << node
39
+ else
40
+ STDERR.puts "LOG -- recurse"
41
+ $xml_start << "<clade>\n"
42
+ make_xml_string $tree.descendents(node)
43
+ $xml_start << "</clade>\n"
44
+ $already_added << node
45
+ end
46
+ end
47
+ end
48
+ end
49
+
50
+ $already_added = Set.new
51
+
52
+ $descendents = $tree.descendents($tree.root)
53
+
54
+ make_xml_string $descendents
55
+
56
+ puts $xml_start
57
+ puts "#{$xml_end}"
data/lib/iroki/version.rb CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  # Library metadata
20
20
  module Iroki
21
- VERSION = "0.0.4"
21
+ VERSION = "0.0.5"
22
22
  COPYRIGHT = "2015 - 2016 Ryan Moore"
23
23
  CONTACT = "moorer@udel.edu"
24
24
  WEBSITE = "https://github.com/mooreryan/iroki"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iroki
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Moore
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-05-18 00:00:00.000000000 Z
11
+ date: 2016-05-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -154,6 +154,7 @@ email:
154
154
  - moorer@udel.edu
155
155
  executables:
156
156
  - iroki
157
+ - newick_to_phyloxml
157
158
  extensions: []
158
159
  extra_rdoc_files: []
159
160
  files:
@@ -172,6 +173,7 @@ files:
172
173
  - bin/iroki_docker
173
174
  - bin/setup
174
175
  - exe/iroki
176
+ - exe/newick_to_phyloxml
175
177
  - iroki.gemspec
176
178
  - lib/iroki.rb
177
179
  - lib/iroki/color/color.rb