parsley-store 0.3.2 → 0.3.3

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 127205fef9e3d4fc643b63e7952ba9f80069a369
4
+ data.tar.gz: 878294e658908172539d099855d9897d9717908b
5
+ SHA512:
6
+ metadata.gz: 6812a3886b8ca8f2a60e579be49b5e453e577e862e6f834fd2949cf883c2f8fb9fa9097e164dfc8f361eab99895c881c1c0030b0fa0fabb09a48c7c91306e07b
7
+ data.tar.gz: 6d4f5fd32bb151f9e159c3f12855056d69dfed9f21809825c7a6e82605f2e73b27da109125db2d97900036c442227b62f5b6e23c8a47236b73f8a94650e63e30
@@ -0,0 +1,24 @@
1
+ ## MAC OS
2
+ .DS_Store
3
+
4
+ ## TEXTMATE
5
+ *.tmproj
6
+ tmtags
7
+
8
+ ## EMACS
9
+ *~
10
+ \#*
11
+ .\#*
12
+
13
+ ## VIM
14
+ *.swp
15
+
16
+ ## PROJECT::GENERAL
17
+ coverage
18
+ rdoc
19
+ pkg
20
+ parsley-store.gemspec
21
+
22
+ ## PROJECT::SPECIFIC
23
+ .bundle
24
+ bundle_bin
@@ -0,0 +1 @@
1
+ 2.0.0-p353
data/CHANGELOG CHANGED
@@ -1 +1,2 @@
1
+ 0.3.3 -- updated gems, removed jeweler dependency
1
2
  0.3.1 -- updated gems, added rvm and bundle support
data/Gemfile CHANGED
@@ -1,8 +1,7 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'biodiversity', '~> 3.1.0'
3
+ gem 'biodiversity', '~> 3.1'
4
4
  gem 'redis', '~> 3.0'
5
- gem 'jeweler', '~> 1.8'
6
5
 
7
6
  group :test do
8
7
  gem 'rspec', '~> 2.13'
@@ -1,45 +1,38 @@
1
1
  GEM
2
2
  remote: https://rubygems.org/
3
3
  specs:
4
- biodiversity (3.1.0)
4
+ biodiversity (3.1.2)
5
5
  parallel
6
6
  parallel (~> 0.6)
7
7
  rake (~> 10.0)
8
8
  treetop
9
9
  treetop (~> 1.4)
10
10
  unicode_utils (~> 1.4)
11
- builder (3.2.0)
12
- cucumber (1.3.1)
11
+ builder (3.2.2)
12
+ cucumber (1.3.10)
13
13
  builder (>= 2.1.2)
14
14
  diff-lcs (>= 1.1.3)
15
- gherkin (~> 2.12.0)
15
+ gherkin (~> 2.12)
16
+ multi_json (>= 1.7.5, < 2.0)
17
+ multi_test (>= 0.0.2)
18
+ diff-lcs (1.2.5)
19
+ gherkin (2.12.2)
16
20
  multi_json (~> 1.3)
17
- diff-lcs (1.2.4)
18
- gherkin (2.12.0)
19
- multi_json (~> 1.3)
20
- git (1.2.5)
21
- jeweler (1.8.4)
22
- bundler (~> 1.0)
23
- git (>= 1.2.5)
24
- rake
25
- rdoc
26
- json (1.7.7)
27
- multi_json (1.7.3)
28
- parallel (0.7.0)
21
+ multi_json (1.8.2)
22
+ multi_test (0.0.2)
23
+ parallel (0.9.1)
29
24
  polyglot (0.3.3)
30
- rake (10.0.4)
31
- rdoc (4.0.1)
32
- json (~> 1.4)
33
- redis (3.0.4)
34
- rspec (2.13.0)
35
- rspec-core (~> 2.13.0)
36
- rspec-expectations (~> 2.13.0)
37
- rspec-mocks (~> 2.13.0)
38
- rspec-core (2.13.1)
39
- rspec-expectations (2.13.0)
25
+ rake (10.1.0)
26
+ redis (3.0.6)
27
+ rspec (2.14.1)
28
+ rspec-core (~> 2.14.0)
29
+ rspec-expectations (~> 2.14.0)
30
+ rspec-mocks (~> 2.14.0)
31
+ rspec-core (2.14.7)
32
+ rspec-expectations (2.14.4)
40
33
  diff-lcs (>= 1.1.3, < 2.0)
41
- rspec-mocks (2.13.1)
42
- treetop (1.4.14)
34
+ rspec-mocks (2.14.4)
35
+ treetop (1.4.15)
43
36
  polyglot
44
37
  polyglot (>= 0.3.1)
45
38
  unicode_utils (1.4.0)
@@ -48,8 +41,7 @@ PLATFORMS
48
41
  ruby
49
42
 
50
43
  DEPENDENCIES
51
- biodiversity (~> 3.1.0)
44
+ biodiversity (~> 3.1)
52
45
  cucumber (~> 1.3)
53
- jeweler (~> 1.8)
54
46
  redis (~> 3.0)
55
47
  rspec (~> 2.13)
@@ -0,0 +1,41 @@
1
+ parsley-store
2
+ =============
3
+
4
+ This gem allows to dramatically increase speed of 'parsing' scientific names.
5
+ It stores parsed strings in Redis database and does not repeat work already done
6
+
7
+ Installation
8
+ ------------
9
+
10
+ Make sure you have Redis installed on your localhost
11
+
12
+ gem install parsley-store
13
+
14
+ Usage
15
+ -----
16
+
17
+ parser = ParsleyStore.new
18
+ parser.parse('Homo sapiens sapiens Linn. 1758')
19
+ parser.parse('Homo sapiens sapiens Linn. 1758')
20
+
21
+ The second parse must be much faster!
22
+
23
+ To get only canonical name:
24
+
25
+ parser.parse('Homo sapiens sapiens Linn. 1758', :canonical_only => true)
26
+
27
+ Contributing
28
+ ------------
29
+
30
+ 1. Fork it
31
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
32
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
33
+ 4. Push to the branch (`git push origin my-new-feature`)
34
+ 5. Create new Pull Request
35
+
36
+ Copyright
37
+ ---------
38
+
39
+ Authors: [Dmitry Mozzherin][12]
40
+
41
+ Copyright (c) 2010-2014 Marine Biological Laboratory. See LICENSE for details.
data/Rakefile CHANGED
@@ -1,56 +1,26 @@
1
- require 'rake'
2
-
3
- begin
4
- require 'jeweler'
5
- Jeweler::Tasks.new do |gem|
6
- gem.name = "parsley-store"
7
- gem.summary = %Q{Scientific Names Parser with Cached Results}
8
- gem.description = %Q{Scientific names parser/atomizer with cached distributed storage of atomized data}
9
- gem.email = "dmozzherin@gmail.com"
10
- gem.homepage = "http://github.com/GlobalNamesArchitecture/parsley-store"
11
- gem.authors = ["Dmitry Mozzherin"]
12
- # gem.add_development_dependency "rspec", ">= 1.2.9"
13
- # gem.add_development_dependency "cucumber", ">= 0"
14
- # gem.add_dependency "biodiversity", "~> 3.0.1"
15
- # gem.add_dependency "redis"
16
- # gem.add_dependency "SystemTimer"
17
- # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
18
- end
19
- Jeweler::GemcutterTasks.new
20
- rescue LoadError
21
- puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
22
- end
23
-
1
+ require 'bundler'
2
+ require 'bundler/gem_tasks'
24
3
  require 'rspec/core'
25
4
  require 'rspec/core/rake_task'
26
- RSpec::Core::RakeTask.new(:spec) do |spec|
27
- spec.pattern = FileList['spec/**/*_spec.rb']
28
- end
5
+ require 'cucumber'
6
+ require 'cucumber/rake/task'
29
7
 
30
- RSpec::Core::RakeTask.new(:rcov) do |spec|
31
- spec.pattern = 'spec/**/*_spec.rb'
32
- spec.rcov = true
33
- end
8
+ Bundler::GemHelper.install_tasks
34
9
 
35
10
  begin
36
- require 'cucumber/rake/task'
37
- Cucumber::Rake::Task.new(:features)
38
-
39
- task :features => :check_dependencies
40
- rescue LoadError
41
- task :features do
42
- abort "Cucumber is not available. In order to run features, you must: sudo gem install cucumber"
43
- end
11
+ Bundler.setup(:default, :development)
12
+ rescue Bundler::BundlerError => e
13
+ $stderr.puts e.message
14
+ $stderr.puts 'Run `bundle install` to install missing gems'
15
+ exit e.status_code
44
16
  end
45
17
 
46
18
  task :default => :spec
47
19
 
48
- require 'rdoc/task'
49
- Rake::RDocTask.new do |rdoc|
50
- version = File.exist?('VERSION') ? File.read('VERSION') : ""
20
+ RSpec::Core::RakeTask.new do |t|
21
+ t.pattern = 'spec/**/*spec.rb'
22
+ end
51
23
 
52
- rdoc.rdoc_dir = 'rdoc'
53
- rdoc.title = "name-stapler #{version}"
54
- rdoc.rdoc_files.include('README*')
55
- rdoc.rdoc_files.include('lib/**/*.rb')
24
+ Cucumber::Rake::Task.new(:features) do |t|
25
+ t.cucumber_opts = "features --format pretty"
56
26
  end
@@ -1,7 +1,10 @@
1
1
  require 'redis'
2
2
  require 'biodiversity'
3
+ require_relative 'parsley-store/version'
3
4
 
4
- raise "IMPORTANT: Parsley-store gem requires ruby >= 1.9.1" if RUBY_VERSION < "1.9.1"
5
+ if RUBY_VERSION < '1.9.1'
6
+ raise 'IMPORTANT: Parsley-store gem requires ruby >= 1.9.1'
7
+ end
5
8
 
6
9
  class ParsleyStore
7
10
  #database numbers for Redis
@@ -37,7 +40,7 @@ class ParsleyStore
37
40
  return stored if stored
38
41
  else
39
42
  stored = @local.get(@scientific_name)
40
- return JSON.parse(stored, :symbolize_names => true) if stored
43
+ return JSON.parse(stored, symbolize_names: true) if stored
41
44
  end
42
45
  end
43
46
 
@@ -46,15 +49,24 @@ class ParsleyStore
46
49
  @parser.parse(@scientific_name)
47
50
  rescue
48
51
  @parser = ScientificNameParser.new
49
- @parser.parse(@scientific_name) rescue {:scientificName => {:parsed => false, :parser_version => ScientificNameParser::VERSION, :anonical => nil, :verbatim => @scientific_name}}
52
+ @parser.parse(@scientific_name) rescue {
53
+ scientificName: {parsed: false,
54
+ parser_version: ScientificNameParser::VERSION,
55
+ anonical: nil,
56
+ verbatim: @scientific_name}}
50
57
  end
51
58
  end
52
59
 
53
60
  def cache_parsed_data(parsed_data)
54
61
  if @canonical_only
55
- @local.hset @scientific_name, 'parsed', parsed_data[:scientificName][:parsed]
56
- @local.hset @scientific_name, 'parser_version', parsed_data[:scientificName][:parser_version]
57
- @local.hset @scientific_name, 'canonical', parsed_data[:scientificName][:canonical]
62
+ @local.hset(@scientific_name,
63
+ 'parsed',
64
+ parsed_data[:scientificName][:parsed])
65
+ @local.hset(@scientific_name,
66
+ 'parser_version',
67
+ parsed_data[:scientificName][:parser_version])
68
+ @local.hset(@scientific_name,
69
+ 'canonical', parsed_data[:scientificName][:canonical])
58
70
  parsed_data[:scientificName][:canonical]
59
71
  else
60
72
  serialized = parsed_data.to_json
@@ -0,0 +1,3 @@
1
+ class ParsleyStore
2
+ VERSION = '0.3.3'
3
+ end
metadata CHANGED
@@ -1,117 +1,70 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: parsley-store
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
5
- prerelease:
4
+ version: 0.3.3
6
5
  platform: ruby
7
6
  authors:
8
7
  - Dmitry Mozzherin
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-06-17 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: biodiversity
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ~>
20
- - !ruby/object:Gem::Version
21
- version: 3.1.0
22
- type: :runtime
23
- prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ~>
28
- - !ruby/object:Gem::Version
29
- version: 3.1.0
30
- - !ruby/object:Gem::Dependency
31
- name: redis
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ~>
36
- - !ruby/object:Gem::Version
37
- version: '3.0'
38
- type: :runtime
39
- prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ~>
44
- - !ruby/object:Gem::Version
45
- version: '3.0'
46
- - !ruby/object:Gem::Dependency
47
- name: jeweler
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
- requirements:
51
- - - ~>
52
- - !ruby/object:Gem::Version
53
- version: '1.8'
54
- type: :runtime
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: '1.8'
62
- description: Scientific names parser/atomizer with cached distributed storage of atomized
63
- data
64
- email: dmozzherin@gmail.com
65
- executables:
66
- - parsley-store
11
+ date: 2013-12-18 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Scientific Names Parser with Cached Results
14
+ email:
15
+ - dmozzherin@gmail.com
16
+ executables: []
67
17
  extensions: []
68
- extra_rdoc_files:
69
- - LICENSE
70
- - README.rdoc
18
+ extra_rdoc_files: []
71
19
  files:
72
20
  - .document
73
- - .rvmrc
21
+ - .gitignore
22
+ - .ruby-version
74
23
  - CHANGELOG
75
24
  - Gemfile
76
25
  - Gemfile.lock
77
26
  - LICENSE
78
- - README.rdoc
27
+ - README.dm
79
28
  - Rakefile
80
- - VERSION
81
- - bin/parsley-store
82
29
  - features/parsley-store.feature
83
30
  - features/step_definitions/parsley-store_steps.rb
84
31
  - features/support/env.rb
85
32
  - features/support/helper.rb
86
33
  - lib/parsley-store.rb
34
+ - lib/parsley-store/version.rb
87
35
  - spec/parsley-store_spec.rb
88
36
  - spec/spec.opts
89
37
  - spec/spec_helper.rb
90
- homepage: http://github.com/GlobalNamesArchitecture/parsley-store
91
- licenses: []
38
+ homepage: https://github.com/GlobalNamesArchitecture/parsley-store
39
+ licenses:
40
+ - MIT
41
+ metadata: {}
92
42
  post_install_message:
93
43
  rdoc_options: []
94
44
  require_paths:
95
45
  - lib
96
46
  required_ruby_version: !ruby/object:Gem::Requirement
97
- none: false
98
47
  requirements:
99
- - - ! '>='
48
+ - - '>='
100
49
  - !ruby/object:Gem::Version
101
50
  version: '0'
102
- segments:
103
- - 0
104
- hash: -627591492272483572
105
51
  required_rubygems_version: !ruby/object:Gem::Requirement
106
- none: false
107
52
  requirements:
108
- - - ! '>='
53
+ - - '>='
109
54
  - !ruby/object:Gem::Version
110
55
  version: '0'
111
56
  requirements: []
112
57
  rubyforge_project:
113
- rubygems_version: 1.8.25
58
+ rubygems_version: 2.0.14
114
59
  signing_key:
115
- specification_version: 3
116
- summary: Scientific Names Parser with Cached Results
117
- test_files: []
60
+ specification_version: 4
61
+ summary: Scientific names parser/atomizer with cached distributed storage of atomized
62
+ data
63
+ test_files:
64
+ - features/parsley-store.feature
65
+ - features/step_definitions/parsley-store_steps.rb
66
+ - features/support/env.rb
67
+ - features/support/helper.rb
68
+ - spec/parsley-store_spec.rb
69
+ - spec/spec.opts
70
+ - spec/spec_helper.rb
data/.rvmrc DELETED
@@ -1,2 +0,0 @@
1
- rvm use ruby-1.9.3-p392@parsley_store --create
2
-
@@ -1,36 +0,0 @@
1
- = parsley-store
2
-
3
- This gem allows to dramatically increase speed of 'parsing' scientific names.
4
- It stores parsed strings in Redis database and does not repeat work already done
5
-
6
- == Installation
7
-
8
- Make sure you have Redis installed on your localhost
9
-
10
- gem install parsley-store
11
-
12
- == Usage
13
-
14
- parser = ParsleyStore.new
15
- parser.parse('Homo sapiens sapiens Linn. 1758')
16
- parser.parse('Homo sapiens sapiens Linn. 1758')
17
-
18
- The second parse must be much faster!
19
-
20
- To get only canonical name:
21
-
22
- parser.parse('Homo sapiens sapiens Linn. 1758', :canonical_only => true)
23
-
24
- == Note on Patches/Pull Requests
25
-
26
- * Fork the project.
27
- * Make your feature addition or bug fix.
28
- * Add tests for it. This is important so I don't break it in a
29
- future version unintentionally.
30
- * Commit, do not mess with rakefile, version, or history.
31
- (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
32
- * Send me a pull request. Bonus points for topic branches.
33
-
34
- == Copyright
35
-
36
- Copyright (c) 2010 Dmitry Mozzherin. See LICENSE for details.
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 0.3.2
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- puts 'it will be command line interface to configure and operate parsley store'