name_search 0.9.2 → 0.9.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 4e8bba05eb3aeed9c853090c1a0e01470b7be54e
4
+ data.tar.gz: 8afb2c8a4c6cc626339209a5d2cbb128d396ca1d
5
+ SHA512:
6
+ metadata.gz: 7ad2ad4fc7f8d17a5aa0445775e587cf198cd0297b8fef15975b7b4a11e0fe21dd9c6b796fd9d5512f7c54e0253a23e6a0b02b74645506248d147e4e769101c4
7
+ data.tar.gz: 66a27d1fb6f27659db5232090425f752661db0344ec986179306a4f4f8b7351072814ad52b1854781039828cca9219f729ca810a1f7eb4ce5caf4a13bb86fb24
data/Gemfile CHANGED
@@ -1,15 +1,13 @@
1
1
  source 'http://rubygems.org'
2
2
 
3
- gem 'rails', '3.0.7'
4
- gem 'capybara', '>= 0.4.0'
3
+ gem 'rails', '~> 4.0.0'
4
+ gem 'capybara', '~> 0.4.0'
5
5
  gem 'sqlite3'
6
6
 
7
7
  group :development, :test do
8
- gem 'factory_girl'
9
- gem 'ruby-debug19'
8
+ gem 'factory_girl', '1.3.3'
10
9
  end
11
10
 
12
11
  group :test do
13
- gem 'rspec-rails', '>= 2.0.0.beta'
14
- gem 'ruby-debug19'
12
+ gem 'rspec-rails', '~> 2.0'
15
13
  end
data/README.rdoc CHANGED
@@ -1,8 +1,11 @@
1
1
  = Name Search
2
+ {<img src="https://travis-ci.org/paulyoder/name_search.png?branch=master" alt="Build Status" />}[https://travis-ci.org/paulyoder/name_search]
2
3
 
3
- Perform natural searches on people's names
4
+ Perform intelligent searches on people's names.
4
5
 
5
- For example, a search for 'Andrew Smith' will return matches on 'Andy Smith' and 'Smith, Andrew'
6
+ Name search uses common nick names and first name/last name ordering to perform its searches.
7
+
8
+ For example, a search for 'Andrew' will return matches on 'Andrew' and 'Andy', while a search for 'Andrew Smith' will return matches on 'Andy Smith' and 'Smith, Andrew'
6
9
 
7
10
  == Installation
8
11
 
@@ -9,7 +9,7 @@ module NameSearch
9
9
  family = NickNameFamily.create
10
10
  scrubbed_names = nick_names.flatten.map{|x| Name.scrub_and_split_name(x)}.flatten
11
11
  scrubbed_names.each do |name|
12
- family.names << Name.find_or_create_by_value(name)
12
+ family.names << Name.find_or_create_by(value: name)
13
13
  end
14
14
  family
15
15
  end
@@ -22,17 +22,17 @@ module NameSearch
22
22
 
23
23
  def self.process_file_line(line)
24
24
  scrubbed_name_values = line.split.map{|x| Name.scrub_and_split_name(x)}.flatten
25
- names = Name.where(:value => scrubbed_name_values).all
25
+ names = Name.where(:value => scrubbed_name_values).to_a
26
26
  first_name = names.find{|x| x.value == scrubbed_name_values.first}
27
27
 
28
28
  if should_create_new_family?(first_name, names)
29
29
  family = NickNameFamily.create
30
30
  scrubbed_name_values.each do |name|
31
- family.names << Name.find_or_create_by_value(name)
31
+ family.names << Name.find_or_create_by(value: name)
32
32
  end
33
33
  else
34
34
  scrubbed_name_values.from(1).each do |name|
35
- first_name.nick_name_families.first.names << Name.find_or_create_by_value(name)
35
+ first_name.nick_name_families.first.names << Name.find_or_create_by(value: name)
36
36
  end
37
37
  end
38
38
  end
@@ -11,8 +11,8 @@ module NameSearch
11
11
  self.name_search_attributes = attributes
12
12
 
13
13
  after_save :sync_name_searchables
14
- has_many :name_searchables, :as => :searchable, :dependent => :destroy,
15
- :include => :name, :class_name => 'NameSearch::Searchable'
14
+ has_many :name_searchables, -> { includes :name }, as: :searchable,
15
+ dependent: :destroy, class_name: 'NameSearch::Searchable'
16
16
  end
17
17
  end
18
18
  end
@@ -28,7 +28,7 @@ module NameSearch
28
28
  def create_new_name_searchables(names)
29
29
  names_to_add = names - name_searchable_values
30
30
  names_to_add.each do |name|
31
- name_searchables.create :name => NameSearch::Name.find_or_create_by_value(name)
31
+ name_searchables.create name: NameSearch::Name.find_or_create_by(value: name)
32
32
  end
33
33
  end
34
34
 
@@ -24,7 +24,7 @@ module NameSearch
24
24
  klass_or_query.includes(:name_searchables).
25
25
  where(:name_search_searchables => {
26
26
  :name_id => names_to_search.map(&:id) }).
27
- all.
27
+ to_a.
28
28
  uniq
29
29
  end
30
30
 
@@ -1,3 +1,3 @@
1
1
  module NameSearch
2
- VERSION = '0.9.2'
2
+ VERSION = '0.9.3'
3
3
  end
metadata CHANGED
@@ -1,35 +1,31 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: name_search
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.2
5
- prerelease:
4
+ version: 0.9.3
6
5
  platform: ruby
7
6
  authors:
8
7
  - Paul Yoder
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-05-16 00:00:00.000000000 Z
11
+ date: 2014-02-19 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rails
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
- version: 3.0.0
19
+ version: 4.0.0
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - '>='
28
25
  - !ruby/object:Gem::Version
29
- version: 3.0.0
30
- description: A natural search for a person by name will not only take into consideration
31
- word ordering ('Andrew Smith' == 'Smith, Andrew') but it will also look for nick
32
- names ('Andy' == 'Andrew')
26
+ version: 4.0.0
27
+ description: Name search uses common nick names and first name/last name ordering
28
+ to perform its searches.
33
29
  email:
34
30
  - paulyoder@gmail.com
35
31
  executables: []
@@ -59,26 +55,25 @@ files:
59
55
  - README.rdoc
60
56
  homepage: https://github.com/paulyoder/name_search
61
57
  licenses: []
58
+ metadata: {}
62
59
  post_install_message:
63
60
  rdoc_options: []
64
61
  require_paths:
65
62
  - lib
66
63
  required_ruby_version: !ruby/object:Gem::Requirement
67
- none: false
68
64
  requirements:
69
- - - ! '>='
65
+ - - '>='
70
66
  - !ruby/object:Gem::Version
71
67
  version: '0'
72
68
  required_rubygems_version: !ruby/object:Gem::Requirement
73
- none: false
74
69
  requirements:
75
- - - ! '>='
70
+ - - '>='
76
71
  - !ruby/object:Gem::Version
77
72
  version: '0'
78
73
  requirements: []
79
74
  rubyforge_project:
80
- rubygems_version: 1.8.24
75
+ rubygems_version: 2.0.6
81
76
  signing_key:
82
- specification_version: 3
83
- summary: Perform natural searches on people’s names.
77
+ specification_version: 4
78
+ summary: Perform intelligent searches on people’s names.
84
79
  test_files: []