iroki 0.0.25 → 0.0.26

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: 1353014b106465bf35d48a151d021f1a75d71be7
4
- data.tar.gz: dc1e7cdb040b541bd19651feb2dd3c64e12d812a
3
+ metadata.gz: 9cf667ad18dfe8bbbbe321c56bcda4c7cb308fd9
4
+ data.tar.gz: 637d39d6337b01a3e91bb194fdd6ead4ec4293c4
5
5
  SHA512:
6
- metadata.gz: cb798fe65976dda134d5e3663261cc69b42c36438ffd42beb21d20c9b9a76c565c820e30f534ce3d1333df18643b950b484e7be7d2b45e3431cf502963b88cdc
7
- data.tar.gz: 1a9ddb377d4c6744f5b1a5c4dc7e58b040afa558d34bfd30165dc97ecf586fe865bc31d09006c8c2cb8ff7368169ed20b7eb193710c03ba1f9d0522c42a21912
6
+ metadata.gz: 91d870557644bf808a515af2c31d930a2e707dcfeff79f97ca377b0641725727bb7942fa6d9b9258afa5a77d187fbbeee90785b4e8814fb8ccb32b3311a71fd1
7
+ data.tar.gz: 27f6130d57b4d6222f4f5d0f3b3a797f963775796ab2d253c9c3bad72b54577e42604c41f236f1fb3f77746cf4b7ecb4874efbae2004fd8c9f22e6440b168290
data/.gitignore CHANGED
@@ -15,4 +15,6 @@ newicks
15
15
  sandbox
16
16
  .coveralls.yml
17
17
  spec/test_files/nexus_files/output.nex
18
- .idea
18
+ .idea
19
+ .DS_Store
20
+ spec/.DS_Store
data/README.md CHANGED
@@ -184,3 +184,7 @@ Add `reorder_nodes` script.
184
184
  ### 0.0.25 ###
185
185
 
186
186
  - Bugfix
187
+
188
+ ### 0.0.26 ###
189
+
190
+ - Basic validation of Newick files (issue 9)
@@ -37,6 +37,18 @@ end
37
37
  module Iroki
38
38
  module CoreExt
39
39
  module File
40
+ # @note Only checks that first and last chars off the file
41
+ # (minus trailing newlines) are correct. I.e., first char is
42
+ # '(' and last char is ';'
43
+ def valid_newick? fname
44
+ str = Object::File.read(fname).chomp
45
+ first_char = str[0]
46
+ last_char = str[-1]
47
+
48
+ p [:ryan, first_char, last_char]
49
+ first_char == "(" && last_char == ";"
50
+ end
51
+
40
52
  def check_file arg, which
41
53
  help = " Try iroki --help for help."
42
54
 
@@ -214,6 +214,9 @@ module Iroki
214
214
 
215
215
  newick = check_file newick_f, :newick
216
216
 
217
+ abort_unless valid_newick?(newick_f),
218
+ "The Newick file doesn't look like a real Newick file"
219
+
217
220
  abort_if out_f.nil?,
218
221
  "--outfile is a required arg. Try iroki --help for help."
219
222
 
data/lib/iroki/version.rb CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  # Library metadata
20
20
  module Iroki
21
- VERSION = "0.0.25"
21
+ VERSION = "0.0.26"
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.25
4
+ version: 0.0.26
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-09-13 00:00:00.000000000 Z
11
+ date: 2016-09-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler