taxonifi 0.4.0 → 0.5.0

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
- SHA1:
3
- metadata.gz: 9d85186e1881c23e9b86bfe4b16fffc0e49975eb
4
- data.tar.gz: 67a97f32c554be5d8c0a3b7cbb263519315b13b4
2
+ SHA256:
3
+ metadata.gz: 15ea6036e683f7de25293b311a0c85082480f32013b7a8427dbb90a247937076
4
+ data.tar.gz: 37f71618bd92e1af915361c0328856708097f76badbe80fbe6fda93edb0e4c02
5
5
  SHA512:
6
- metadata.gz: a7114b112d9b612c4b609fb781c9dd176bb86f63a873de4fa6e4f90197cc0bd57af0567402a660e2fadb950073d200f2ee6fb5a946af251665fb03e1c203b722
7
- data.tar.gz: e777bd25aa4e5d22b672985483ffa697a4b94fa43cca51a2334a65559b0c62247cd60045e99c3861027f9e14d3057fbd18873586d5d0e10f3310fe80a4a097ec
6
+ metadata.gz: fa9586dde79b0abd633bbea51a739a807a299621ba0bade46953dd477a7dd8e6710770527c8ad18035f7467c275952064d4548a0fd641a299a0663ce1b9851d5
7
+ data.tar.gz: 171c01787b879fea5fcbb65e1a344ce0f9e95d34a013f6b4a917112edb1a18c48a78fa4f8adf59b86a154e8bed3fc5009a44455058ea2cb9fa8fc829b3478801
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.3.1
1
+ 2.6.5
data/.travis.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 2.1.5
3
+ - 2.3.1
4
4
  bundler_args: --without development
5
5
  before_install: ./travis/before_install.sh
6
6
  branches:
data/Gemfile.lock CHANGED
@@ -1,36 +1,34 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- taxonifi (0.4.0)
5
- require_all (~> 1.3.3)
4
+ taxonifi (0.5.0)
5
+ require_all (~> 3.0)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- awesome_print (1.6.1)
11
- builder (3.2.2)
12
- byebug (8.2.5)
13
- json (1.8.3)
14
- power_assert (0.3.0)
15
- rake (11.1.2)
16
- rdoc (4.2.2)
17
- json (~> 1.4)
18
- require_all (1.3.3)
19
- test-unit (3.1.8)
10
+ awesome_print (1.8.0)
11
+ builder (3.2.4)
12
+ byebug (11.1.1)
13
+ power_assert (1.1.5)
14
+ rake (13.0.1)
15
+ rdoc (6.2.1)
16
+ require_all (3.0.0)
17
+ test-unit (3.3.5)
20
18
  power_assert
21
19
 
22
20
  PLATFORMS
23
21
  ruby
24
22
 
25
23
  DEPENDENCIES
26
- awesome_print (~> 1.6)
24
+ awesome_print (~> 1.8)
27
25
  builder (~> 3.2)
28
26
  bundler (~> 1.12)
29
- byebug (~> 8.2)
30
- rake (~> 11.1)
31
- rdoc (~> 4.2.2)
27
+ byebug (~> 11)
28
+ rake (~> 13.0)
29
+ rdoc (~> 6.2)
32
30
  taxonifi!
33
- test-unit (~> 3.1.8)
31
+ test-unit (~> 3.3.5)
34
32
 
35
33
  BUNDLED WITH
36
- 1.12.3
34
+ 1.17.3
data/README.md CHANGED
@@ -1,11 +1,11 @@
1
1
 
2
- [![Continuous Integration Status][1]][2]
2
+ [![Build Status](https://travis-ci.org/SpeciesFileGroup/taxonifi.svg?branch=master)](https://travis-ci.org/SpeciesFileGroup/taxonifi)
3
3
  [![Dependency Status][7]][8]
4
4
 
5
5
 
6
6
  taxonifi
7
7
  ========
8
- There will always be "legacy" taxonomic data that needs shuffling around. The taxonifi gem is a suite of general purpose tools that act as a middle layer for data-conversion purposes (e.g. migrating legacy taxonomic databases). It's first application was to convert DwC-style data downloaded from EoL into a Species File. The code is well documented in unit tests, poke around to see if it might be useful. In particular, if you've considered building a collection of regular expressions particular to biodiversity data look at the Tokens code and related tests.
8
+ There will always be "legacy" taxonomic data that needs shuffling around. The taxonifi gem is a suite of general purpose tools that act as a middle layer for data-conversion purposes (e.g. migrating legacy taxonomic databases). Its first application was to convert DwC-style data downloaded from EoL into a Species File. The code is well documented in unit tests, poke around to see if it might be useful. In particular, if you've considered building a collection of regular expressions particular to biodiversity data look at the Tokens code and related tests.
9
9
 
10
10
  Overall, the goal is to provide well documented (and unit-tested) coded that is broadly useful, and vanilla enough to encourage other to fork and hack on their own.
11
11
 
@@ -16,9 +16,9 @@ Source is available at https://github.com/SpeciesFile/taxonifi . The rdoc API i
16
16
  What's next?
17
17
  ------------
18
18
 
19
- Before you jump on board you should also check out similar code from the Global Names team at https://github.com/GlobalNamesArchitecture. Future integration and merging of shared functionality is planned. Code will be released in an "early-and-often" approach.
19
+ Before you jump on board you should also check out similar code from the Global Names team at https://github.com/GlobalNamesArchitecture. Future integration and merging of shared functionality is planned.
20
20
 
21
- Taxonifi is presently coded for convience, not speed (though it's not necessarily slow). It assumes that conversion processes are typically one-offs that can afford to run over a longer period of time (read minutes rather than seconds). Reading, and fully parsing into objects, around 25k rows of nomenclature (class to species, inc. author year, = ~45k names) in to memory as Taxonifi objects benchmarks at around 2 minutes. Faster indexing is planned as needed, likely using Redis (see GNA link above).
21
+ Taxonifi is presently coded for convience, not speed (though it's not necessarily slow). It assumes that conversion processes are typically one-offs that can afford to run over a longer period of time (read minutes rather than seconds). Reading, and fully parsing into objects, around 25k rows of nomenclature (class to species, inc. author year, = ~45k names) in to memory as Taxonifi objects benchmarks at around 2 minutes.
22
22
 
23
23
  Getting started
24
24
  ---------------
data/lib/taxonifi.rb CHANGED
@@ -7,7 +7,7 @@ module Taxonifi
7
7
 
8
8
  class TaxonifiError < StandardError; end;
9
9
 
10
- # Taxonomic ranks.
10
+ # Taxonomic ranks.
11
11
  RANKS = %w{
12
12
  kingdom
13
13
  phylum
@@ -17,7 +17,7 @@ module Taxonifi
17
17
  infraclass
18
18
  cohort
19
19
  superorder
20
- order
20
+ order
21
21
  suborder
22
22
  infraorder
23
23
  superfamily
@@ -1,4 +1,4 @@
1
- require File.expand_path(File.join(File.dirname(__FILE__), "../model/base.rb"))
1
+ require_rel 'base'
2
2
 
3
3
  module Taxonifi
4
4
  module Model
@@ -1,9 +1,11 @@
1
+ require_rel 'shared_class_methods'
2
+
1
3
  module Taxonifi
2
4
  module Model
3
5
 
4
6
  # A base class for all Taxonifi::Models that represent
5
- # "individuals" (as opposed to collections of indviduals).
6
- class Base
7
+ # "individuals" (as opposed to collections of indviduals).
8
+ class Base
7
9
 
8
10
  include Taxonifi::Model::SharedClassMethods
9
11
 
@@ -23,8 +25,8 @@ module Taxonifi
23
25
  @properties = {}
24
26
  end
25
27
 
26
- # Assign on new() all attributes for the ATTRIBUTES
27
- # constant in a given subclass.
28
+ # Assign on new() all attributes for the ATTRIBUTES
29
+ # constant in a given subclass.
28
30
  # !! Check validity prior to building.
29
31
  def build(attributes, opts)
30
32
  attributes.each do |c|
@@ -39,12 +41,12 @@ module Taxonifi
39
41
 
40
42
  # Add a key/value pair to @properties
41
43
  def add_property(key, value)
42
- if @properties[key]
44
+ if @properties[key]
43
45
  return false
44
46
  else
45
47
  @properties.merge!(key => value)
46
48
  end
47
- end
49
+ end
48
50
 
49
51
  # Replace an existing key/value pair in @properties
50
52
  def replace_property(key,value)
@@ -53,19 +55,19 @@ module Taxonifi
53
55
  else
54
56
  @properties.merge!(key => value)
55
57
  end
56
- end
57
-
58
- # Delete an existing key/value pair in @properties
58
+ end
59
+
60
+ # Delete an existing key/value pair in @properties
59
61
  def delete_property(key)
60
62
  if !@properties[key]
61
- @properties.delete(key)
63
+ @properties.delete(key)
62
64
  else
63
65
  @properties.merge!(key => value)
64
66
  end
65
67
  end
66
68
 
67
69
  def id=(id)
68
- raise Taxonifi::ModelError, "Base model objects must have Fixnum ids." if !id.nil? && id.class != Fixnum
70
+ raise Taxonifi::ModelError, "Base model objects must have Fixnum ids." if !id.nil? && id.class != ::Integer
69
71
  @id = id
70
72
  end
71
73
 
@@ -74,7 +76,7 @@ module Taxonifi
74
76
  def ancestor_ids
75
77
  i = 0 # check for recursion
76
78
  ids = []
77
- p = parent
79
+ p = parent
78
80
  while !p.nil?
79
81
  ids.unshift p.id
80
82
  p = p.parent
@@ -90,14 +92,14 @@ module Taxonifi
90
92
  def ancestors
91
93
  i = 0 # check for recursion
92
94
  ancestors = []
93
- p = parent
95
+ p = parent
94
96
  while !p.nil?
95
97
  ancestors.unshift p
96
98
  p = p.parent
97
99
  i += 1
98
100
  raise Taxonifi::ModelError, "Infite recursion in parent string detected for Base model object #{id.display_name}." if i > 100
99
101
  end
100
- ancestors
102
+ ancestors
101
103
  end
102
104
  end
103
105
 
@@ -1,3 +1,3 @@
1
1
  module Taxonifi
2
- VERSION = "0.4.0"
2
+ VERSION = "0.5.0"
3
3
  end
data/taxonifi.gemspec CHANGED
@@ -8,7 +8,7 @@ Gem::Specification.new do |s|
8
8
  s.version = Taxonifi::VERSION
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["mjy"]
11
+ s.authors = ["Matt Yoder"]
12
12
  s.date = "2013-03-27"
13
13
 
14
14
  s.summary = "A general purpose framework for scripted handling of taxonomic names or other heirarchical metadata."
@@ -22,20 +22,21 @@ Gem::Specification.new do |s|
22
22
  s.files = `git ls-files -z`.split("\x0")
23
23
  s.executables = s.files.grep(%r{^bin/}) { |f| File.basename(f) }
24
24
  s.test_files = s.files.grep(%r{^(test|spec|features)/})
25
- s.homepage = "http://github.com/SpeciesFile/taxonifi"
25
+ s.homepage = "https://github.com/SpeciesFile/taxonifi"
26
26
  s.licenses = ["MIT"]
27
27
  s.require_paths = ["lib"]
28
28
  s.rubygems_version = "2.4.5"
29
+ s.metadata = { "source_code_uri" => "https://github.com/SpeciesFileGroup/taxonifi" }
29
30
 
30
- s.add_dependency "require_all", "~> 1.3.3"
31
+ s.add_dependency "require_all", "~> 3.0"
32
+ s.required_ruby_version = '~> 2.6'
31
33
 
32
- s.add_development_dependency "rake", '~> 11.1'
33
- s.add_development_dependency "byebug", "~> 8.2"
34
+ s.add_development_dependency "rake", '~> 13.0'
35
+ s.add_development_dependency "byebug", "~> 11"
34
36
  s.add_development_dependency "bundler", "~> 1.12"
35
- s.add_development_dependency 'awesome_print', '~> 1.6'
36
- s.add_development_dependency 'test-unit', '~> 3.1.8'
37
- s.add_development_dependency "rdoc", "~> 4.2.2"
37
+ s.add_development_dependency 'awesome_print', '~> 1.8'
38
+ s.add_development_dependency 'test-unit', '~> 3.3.5'
39
+ s.add_development_dependency "rdoc", "~> 6.2"
38
40
  s.add_development_dependency "builder", "~> 3.2"
39
41
 
40
42
  end
41
-
data/test/helper.rb CHANGED
@@ -26,14 +26,12 @@ def generic_csv_with_names
26
26
  end
27
27
 
28
28
  def names
29
- file = File.expand_path(File.join(File.dirname(__FILE__), 'file_fixtures/names.csv'))
30
-
31
- csv = CSV.read(file, {
32
- headers: true,
33
- col_sep: ",",
34
- header_converters: :downcase
35
- } )
36
- nc = Taxonifi::Lumper.create_name_collection(:csv => csv, :initial_id => 1)
29
+ file = File.expand_path(File.join(File.dirname(__FILE__), 'file_fixtures/names.csv'))
30
+
31
+ csv = CSV.read(file, {
32
+ headers: true,
33
+ col_sep: ",",
34
+ header_converters: :downcase
35
+ } )
36
+ nc = Taxonifi::Lumper.create_name_collection(csv: csv, initial_id: 1)
37
37
  end
38
-
39
-
@@ -7,66 +7,66 @@ class TestTaxonifiName < Test::Unit::TestCase
7
7
  end
8
8
 
9
9
  def test_new_name
10
- assert n = Taxonifi::Model::Name.new()
10
+ assert n = Taxonifi::Model::Name.new()
11
11
  end
12
12
 
13
13
  def test_that_name_has_a_name
14
- n = Taxonifi::Model::Name.new()
14
+ n = Taxonifi::Model::Name.new()
15
15
  assert n.respond_to?(:name)
16
16
  end
17
17
 
18
18
  def test_that_name_has_an_id
19
- n = Taxonifi::Model::Name.new()
19
+ n = Taxonifi::Model::Name.new()
20
20
  assert n.respond_to?(:id)
21
21
  end
22
22
 
23
23
  def test_that_name_has_a_parent
24
- n = Taxonifi::Model::Name.new()
25
- assert n.respond_to?(:parent)
24
+ n = Taxonifi::Model::Name.new()
25
+ assert n.respond_to?(:parent)
26
26
  end
27
27
 
28
28
  def test_that_name_has_a_rank
29
- n = Taxonifi::Model::Name.new()
30
- assert n.respond_to?(:rank)
29
+ n = Taxonifi::Model::Name.new()
30
+ assert n.respond_to?(:rank)
31
31
  end
32
32
 
33
33
  def test_that_name_has_an_author
34
- n = Taxonifi::Model::Name.new()
35
- assert n.respond_to?(:author)
34
+ n = Taxonifi::Model::Name.new()
35
+ assert n.respond_to?(:author)
36
36
  end
37
37
 
38
38
  def test_that_name_has_a_year
39
- n = Taxonifi::Model::Name.new()
40
- assert n.respond_to?(:year)
39
+ n = Taxonifi::Model::Name.new()
40
+ assert n.respond_to?(:year)
41
41
  end
42
42
 
43
43
  def test_that_name_returns_false_with_bad_rank
44
- n = Taxonifi::Model::Name.new()
44
+ n = Taxonifi::Model::Name.new()
45
45
  assert_raise Taxonifi::NameError do
46
46
  n.rank = "FOO"
47
- end
47
+ end
48
48
  end
49
49
 
50
50
  def test_that_name_allows_legal_rank
51
- n = Taxonifi::Model::Name.new()
51
+ n = Taxonifi::Model::Name.new()
52
52
  assert n.rank = "genus"
53
53
  end
54
54
 
55
55
  def test_that_name_rank_is_case_insensitive
56
- n = Taxonifi::Model::Name.new()
56
+ n = Taxonifi::Model::Name.new()
57
57
  assert n.rank = "Genus"
58
58
  assert n.rank = "GENUS"
59
59
  end
60
60
 
61
61
  def test_that_rank_is_required_before_parent
62
- n = Taxonifi::Model::Name.new()
62
+ n = Taxonifi::Model::Name.new()
63
63
  assert_raise Taxonifi::NameError do
64
- n.parent = Taxonifi::Model::Name.new()
64
+ n.parent = Taxonifi::Model::Name.new()
65
65
  end
66
66
  end
67
67
 
68
68
  def test_that_parent_is_a_taxonifi_name
69
- n = Taxonifi::Model::Name.new()
69
+ n = Taxonifi::Model::Name.new()
70
70
  n.rank = "genus" # avoid that raise
71
71
  assert_raise Taxonifi::NameError do
72
72
  n.parent = "foo"
@@ -74,15 +74,15 @@ class TestTaxonifiName < Test::Unit::TestCase
74
74
  end
75
75
 
76
76
  def test_that_rank_can_be_set
77
- n = Taxonifi::Model::Name.new()
77
+ n = Taxonifi::Model::Name.new()
78
78
  n.rank = "family"
79
79
  assert_equal "family", n.rank
80
80
  end
81
81
 
82
82
  def test_that_parent_is_higher_rank_than_child
83
- n = Taxonifi::Model::Name.new()
83
+ n = Taxonifi::Model::Name.new()
84
84
  n.rank = "genus"
85
- p = Taxonifi::Model::Name.new()
85
+ p = Taxonifi::Model::Name.new()
86
86
  p.rank = "species"
87
87
  assert_raise Taxonifi::NameError do
88
88
  n.parent = p
@@ -90,9 +90,9 @@ class TestTaxonifiName < Test::Unit::TestCase
90
90
  end
91
91
 
92
92
  def test_that_parent_can_be_set
93
- n = Taxonifi::Model::Name.new()
93
+ n = Taxonifi::Model::Name.new()
94
94
  n.rank = "genus"
95
- p = Taxonifi::Model::Name.new()
95
+ p = Taxonifi::Model::Name.new()
96
96
  p.rank = "species"
97
97
  assert p.parent = n
98
98
  assert_equal "genus", p.parent.rank
@@ -139,30 +139,30 @@ class TestTaxonifiName < Test::Unit::TestCase
139
139
  create_a_few_names
140
140
  n5 = Taxonifi::Model::Name.new(:name => "beep", :rank => "Subspecies", :author => "Frank", :year => 2020, :id => 11, :parent => @n4 )
141
141
 
142
- assert_equal 'Foo', @n2.nomenclator_name
142
+ assert_equal 'Foo', @n2.nomenclator_name
143
143
  assert_equal 'Foo (Bar)', @n3.nomenclator_name
144
144
  assert_equal 'Foo (Bar) boo', @n4.nomenclator_name
145
145
  assert_equal 'Foo (Bar) boo beep', n5.nomenclator_name
146
146
  end
147
147
 
148
148
  def test_ancestors
149
- create_a_few_names
149
+ create_a_few_names
150
150
  assert_equal [@n0, @n1], @n2.ancestors
151
151
  end
152
152
 
153
153
  def test_ancestor_ids
154
- create_a_few_names
154
+ create_a_few_names
155
155
  assert_equal [2,15], @n2.ancestor_ids
156
156
  end
157
157
 
158
158
  # TODO: fix to inject valid id to confirm to SF
159
159
  def test_parent_ids_sf_style
160
- create_a_few_names
160
+ create_a_few_names
161
161
  assert_equal '2-15-14g-19s-11', @n4.parent_ids_sf_style
162
162
  assert_equal '2-15-14g-19s', @n3.parent_ids_sf_style
163
163
  assert_equal '2-15-14g', @n2.parent_ids_sf_style
164
164
  assert_equal '2-15', @n1.parent_ids_sf_style
165
- end
165
+ end
166
166
 
167
167
  def test_author_year_index
168
168
  n = Taxonifi::Model::Name.new(author_year: 'Smith and Jones, 1920')
@@ -170,17 +170,21 @@ class TestTaxonifiName < Test::Unit::TestCase
170
170
  end
171
171
 
172
172
  def test_genus_group_parent
173
- n1 = Taxonifi::Model::Name.new(name: "Fooidae", rank: "family", author: nil, year: nil) #
174
- n2 = Taxonifi::Model::Name.new(name: "Foo", rank: "genus", author: nil , year: nil, :parent => n1) # Foo
173
+ n1 = Taxonifi::Model::Name.new(name: "Fooidae", rank: "family", author: nil, year: nil) #
174
+ n2 = Taxonifi::Model::Name.new(name: "Foo", rank: "genus", author: nil , year: "", :parent => n1) # Foo
175
175
  n3 = Taxonifi::Model::Name.new(name: "Bar", rank: "subgenus", author: nil , year: nil, :parent => n2) # Foo (Bar)
176
- n4 = Taxonifi::Model::Name.new(name: "aus", rank: "species", author: nil , year: nil, :parent => n3) # Foo (Bar) aus
176
+ n4 = Taxonifi::Model::Name.new(name: "aus", rank: "species", author: nil , year: nil, :parent => n3) # Foo (Bar) aus
177
177
  n5 = Taxonifi::Model::Name.new(name: "bus", rank: "subspecies", author: 'Smith', year: 1920, :parent => n4) # Foo (Bar) aus bus
178
178
 
179
179
  assert_equal n3, n4.genus_group_parent
180
180
  assert_equal n3, n5.genus_group_parent
181
+
182
+ # No zeros injected
183
+ assert_equal nil, n3.year
184
+ assert_equal "", n2.year
181
185
  end
182
186
 
183
- #
187
+ #
184
188
  # ICZN Subclass
185
189
  #
186
190
 
metadata CHANGED
@@ -1,10 +1,10 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: taxonifi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
- - mjy
7
+ - Matt Yoder
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
@@ -16,42 +16,42 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.3.3
19
+ version: '3.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.3.3
26
+ version: '3.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '11.1'
33
+ version: '13.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '11.1'
40
+ version: '13.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: byebug
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '8.2'
47
+ version: '11'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '8.2'
54
+ version: '11'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: bundler
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -72,42 +72,42 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '1.6'
75
+ version: '1.8'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '1.6'
82
+ version: '1.8'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: test-unit
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 3.1.8
89
+ version: 3.3.5
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 3.1.8
96
+ version: 3.3.5
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rdoc
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 4.2.2
103
+ version: '6.2'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 4.2.2
110
+ version: '6.2'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: builder
113
113
  requirement: !ruby/object:Gem::Requirement
@@ -202,27 +202,27 @@ files:
202
202
  - test/test_taxonifi_ref_collection.rb
203
203
  - test/test_taxonifi_species_name.rb
204
204
  - travis/before_install.sh
205
- homepage: http://github.com/SpeciesFile/taxonifi
205
+ homepage: https://github.com/SpeciesFile/taxonifi
206
206
  licenses:
207
207
  - MIT
208
- metadata: {}
208
+ metadata:
209
+ source_code_uri: https://github.com/SpeciesFileGroup/taxonifi
209
210
  post_install_message:
210
211
  rdoc_options: []
211
212
  require_paths:
212
213
  - lib
213
214
  required_ruby_version: !ruby/object:Gem::Requirement
214
215
  requirements:
215
- - - ">="
216
+ - - "~>"
216
217
  - !ruby/object:Gem::Version
217
- version: '0'
218
+ version: '2.6'
218
219
  required_rubygems_version: !ruby/object:Gem::Requirement
219
220
  requirements:
220
221
  - - ">="
221
222
  - !ruby/object:Gem::Version
222
223
  version: '0'
223
224
  requirements: []
224
- rubyforge_project:
225
- rubygems_version: 2.5.1
225
+ rubygems_version: 3.0.6
226
226
  signing_key:
227
227
  specification_version: 4
228
228
  summary: A general purpose framework for scripted handling of taxonomic names or other