iroki 0.0.4 → 0.0.5

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.
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