fuzzy_where 0.5.0 → 0.6.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 +4 -4
- data/.codeclimate.yml +2 -0
- data/.coveralls.yml +1 -0
- data/.gitignore +1 -0
- data/.simplecov +0 -0
- data/.travis.yml +24 -1
- data/CHANGELOG.md +9 -2
- data/MIT-LICENSE +1 -1
- data/README.md +20 -10
- data/fuzzy_where.gemspec +2 -3
- data/gemfiles/active_record_40.gemfile +7 -3
- data/gemfiles/active_record_41.gemfile +7 -3
- data/gemfiles/active_record_42.gemfile +7 -3
- data/lib/fuzzy_where/active_record_model_extension.rb +9 -4
- data/lib/fuzzy_where/config.rb +23 -20
- data/lib/fuzzy_where/fuzzy_derivation.rb +1 -1
- data/lib/fuzzy_where/fuzzy_relation_builder.rb +20 -1
- data/lib/fuzzy_where/predicate_membership_degree.rb +6 -9
- data/lib/fuzzy_where/version.rb +1 -1
- data/lib/generators/fuzzy_where/config_generator.rb +2 -2
- data/lib/generators/fuzzy_where/predicate_generator.rb +3 -2
- data/lib/generators/fuzzy_where/templates/fuzzy_where_config.rb +1 -1
- metadata +23 -9
- data/gemfiles/active_record_40.gemfile.lock +0 -97
- data/gemfiles/active_record_41.gemfile.lock +0 -95
- data/gemfiles/active_record_42.gemfile.lock +0 -116
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 51471d96225661d9babb08615f40728df70476ae
|
4
|
+
data.tar.gz: 02b0af8e7efcbe6c982c3763eb772dfbd0b0b5f8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d70169d28a6617c52b26e2612522e4160a693d43c1b10d09b12a5ff4d657be86f9ec0d313c2485bd001dd25ef53decb26a98361b01dd79b2161139490d5a3800
|
7
|
+
data.tar.gz: 241f22537ae065c72d1ec2e62a229098a0223a001417b3c38cc936cb365531de153b76d4ea18ca3c1c9fc65e0affb63e644b0e2f3d8f2c1807cb585cee9723f3
|
data/.codeclimate.yml
ADDED
data/.coveralls.yml
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
service_name: travis-ci
|
data/.gitignore
CHANGED
data/.simplecov
ADDED
File without changes
|
data/.travis.yml
CHANGED
@@ -1,3 +1,26 @@
|
|
1
1
|
language: ruby
|
2
2
|
rvm:
|
3
|
-
- 2.
|
3
|
+
- 2.0.0
|
4
|
+
- 2.1
|
5
|
+
- 2.2.3
|
6
|
+
- 2.3.0
|
7
|
+
- ruby-head
|
8
|
+
- jruby
|
9
|
+
- jruby-head
|
10
|
+
|
11
|
+
gemfile:
|
12
|
+
- gemfiles/active_record_40.gemfile
|
13
|
+
- gemfiles/active_record_41.gemfile
|
14
|
+
- gemfiles/active_record_42.gemfile
|
15
|
+
|
16
|
+
sudo: false
|
17
|
+
|
18
|
+
script: 'bundle exec rake spec'
|
19
|
+
|
20
|
+
cache: bundler
|
21
|
+
|
22
|
+
matrix:
|
23
|
+
allow_failures:
|
24
|
+
- rvm: ruby-head
|
25
|
+
- rvm: jruby-head
|
26
|
+
fast_finish: true
|
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,11 @@
|
|
1
|
-
###
|
1
|
+
### master
|
2
|
+
|
3
|
+
### 0.6.0 - 2016-01-08
|
4
|
+
|
5
|
+
* Travis, coveralls and code climate integrations
|
6
|
+
* Add calibration option to `fuzzy_where`
|
7
|
+
|
8
|
+
### 0.5.0 - 2015-07-05
|
2
9
|
|
3
10
|
* enhancements
|
4
11
|
* add fuzzy predicate generator
|
@@ -9,7 +16,7 @@
|
|
9
16
|
### 0.1.4 - 2015-06-21
|
10
17
|
|
11
18
|
* bug fixes
|
12
|
-
*
|
19
|
+
* Fix query derivation
|
13
20
|
|
14
21
|
### 0.1.3 - 2015-06-09
|
15
22
|
|
data/MIT-LICENSE
CHANGED
data/README.md
CHANGED
@@ -1,8 +1,12 @@
|
|
1
1
|
# FuzzyWhere
|
2
|
+
[](http://badge.fury.io/rb/fuzzy_where)
|
3
|
+
[](https://travis-ci.org/koombea/fuzzy_where)
|
4
|
+
[](https://codeclimate.com/github/koombea/fuzzy_where)
|
5
|
+
[](https://coveralls.io/github/koombea/fuzzy_where)
|
2
6
|
|
3
7
|
An `ActiveRecord` implementation of [SQLf](http://en.wikipedia.org/wiki/SQLf).
|
4
8
|
At this moment it allows you to load fuzzy definitions from a yaml file and use
|
5
|
-
them as
|
9
|
+
them as `WHERE` conditions. More features from SQLf will be added to this gem in future iterations.
|
6
10
|
|
7
11
|
## Installation
|
8
12
|
|
@@ -14,22 +18,28 @@ gem 'fuzzy_where'
|
|
14
18
|
|
15
19
|
And then execute:
|
16
20
|
|
17
|
-
|
21
|
+
```console
|
22
|
+
bundle
|
23
|
+
```
|
18
24
|
|
19
25
|
Or install it yourself as:
|
20
26
|
|
21
|
-
|
27
|
+
```console
|
28
|
+
gem install fuzzy_where
|
29
|
+
```
|
22
30
|
|
23
|
-
|
31
|
+
Finally generate the configuration files:
|
24
32
|
|
25
|
-
|
33
|
+
```console
|
34
|
+
rails generate fuzzy_where:config
|
35
|
+
```
|
26
36
|
|
27
37
|
## Usage
|
28
38
|
|
29
|
-
Fuzzy predicates are stored in `config/fuzzy_predicates.yml`. You can use a generator to populate
|
39
|
+
Fuzzy predicates are stored in `config/fuzzy_predicates.yml`. You can use a generator to populate this file.
|
30
40
|
|
31
41
|
```console
|
32
|
-
rails
|
42
|
+
rails generate fuzzy_where:predicate PREDICATE min core1 core2 max
|
33
43
|
```
|
34
44
|
|
35
45
|
Replace PREDICATE with the name you wish to use for you linguistic expression and set the values for the trapezoid function.
|
@@ -37,7 +47,7 @@ Replace PREDICATE with the name you wish to use for you linguistic expression an
|
|
37
47
|
### Example:
|
38
48
|
|
39
49
|
```console
|
40
|
-
rails
|
50
|
+
rails generate fuzzy_where:predicate young 10 15 20 25
|
41
51
|
```
|
42
52
|
|
43
53
|
Will produce:
|
@@ -51,7 +61,7 @@ young:
|
|
51
61
|
max: 25
|
52
62
|
```
|
53
63
|
|
54
|
-
Then you can use your definitions as
|
64
|
+
Then you can use your definitions as follows:
|
55
65
|
|
56
66
|
```ruby
|
57
67
|
Person.fuzzy_where(age: :young)
|
@@ -67,4 +77,4 @@ Person.fuzzy_where(age: :young)
|
|
67
77
|
|
68
78
|
## License
|
69
79
|
|
70
|
-
MIT License. Copyright 2015 Koombea. http://koombea.com
|
80
|
+
MIT License. Copyright 2015-2016 Koombea. http://koombea.com
|
data/fuzzy_where.gemspec
CHANGED
@@ -15,17 +15,16 @@ Gem::Specification.new do |spec|
|
|
15
15
|
spec.license = 'MIT'
|
16
16
|
|
17
17
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
18
|
-
spec.bindir = 'exe'
|
19
|
-
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
20
18
|
spec.require_paths = ['lib']
|
21
19
|
|
22
20
|
spec.add_dependency 'activesupport', '~> 4.0', '>= 4.0.0'
|
23
21
|
spec.add_dependency 'actionpack', '~> 4.0', '>= 4.0.0'
|
24
22
|
spec.add_dependency 'activerecord', '~> 4.0', '>= 4.0.0'
|
25
23
|
|
26
|
-
spec.add_development_dependency 'bundler', '~> 1.
|
24
|
+
spec.add_development_dependency 'bundler', '~> 1.7'
|
27
25
|
spec.add_development_dependency 'rake', '~> 10.0'
|
28
26
|
spec.add_development_dependency 'rspec', '~> 3.2', '>= 3.2.0'
|
27
|
+
spec.add_development_dependency 'coveralls', '~>0.8.0'
|
29
28
|
spec.add_development_dependency 'database_cleaner', '~> 1.4.1'
|
30
29
|
spec.add_development_dependency 'yard', '~> 0.8.7', '>= 0.8.0'
|
31
30
|
end
|
@@ -1,11 +1,11 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
gem 'activerecord', '~> 4.0.0', :
|
3
|
+
gem 'activerecord', '~> 4.0.0', require: 'active_record'
|
4
4
|
gem 'rspec-rails', '~> 3.2.0'
|
5
5
|
gem 'generator_spec', '~>0.9.0'
|
6
6
|
|
7
7
|
platforms :ruby do
|
8
|
-
if RUBY_VERSION >
|
8
|
+
if RUBY_VERSION > '2.1.0'
|
9
9
|
gem 'sqlite3'
|
10
10
|
gem 'test-unit'
|
11
11
|
else
|
@@ -13,4 +13,8 @@ platforms :ruby do
|
|
13
13
|
end
|
14
14
|
end
|
15
15
|
|
16
|
-
|
16
|
+
platforms :jruby do
|
17
|
+
gem 'activerecord-jdbcsqlite3-adapter', '>= 1.3.0'
|
18
|
+
end
|
19
|
+
|
20
|
+
gemspec path: '../'
|
@@ -1,15 +1,19 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
gem 'activerecord', '~> 4.1.0', :
|
3
|
+
gem 'activerecord', '~> 4.1.0', require: 'active_record'
|
4
4
|
gem 'rspec-rails', '~> 3.2.0'
|
5
5
|
gem 'generator_spec', '~>0.9.0'
|
6
6
|
|
7
7
|
platforms :ruby do
|
8
|
-
if RUBY_VERSION >
|
8
|
+
if RUBY_VERSION > '2.1.0'
|
9
9
|
gem 'sqlite3'
|
10
10
|
else
|
11
11
|
gem 'sqlite3', '1.3.8'
|
12
12
|
end
|
13
13
|
end
|
14
14
|
|
15
|
-
|
15
|
+
platforms :jruby do
|
16
|
+
gem 'activerecord-jdbcsqlite3-adapter', '>= 1.3.0'
|
17
|
+
end
|
18
|
+
|
19
|
+
gemspec path: '../'
|
@@ -1,16 +1,20 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
gem 'activerecord', '~> 4.2.0', :
|
3
|
+
gem 'activerecord', '~> 4.2.0', require: 'active_record'
|
4
4
|
gem 'test-unit'
|
5
5
|
gem 'rspec-rails', '~> 3.2.0'
|
6
6
|
gem 'generator_spec', '~>0.9.0'
|
7
7
|
|
8
8
|
platforms :ruby do
|
9
|
-
if RUBY_VERSION >
|
9
|
+
if RUBY_VERSION > '2.1.0'
|
10
10
|
gem 'sqlite3'
|
11
11
|
else
|
12
12
|
gem 'sqlite3', '1.3.8'
|
13
13
|
end
|
14
14
|
end
|
15
15
|
|
16
|
-
|
16
|
+
platforms :jruby do
|
17
|
+
gem 'activerecord-jdbcsqlite3-adapter', '>= 1.3.0'
|
18
|
+
end
|
19
|
+
|
20
|
+
gemspec path: '../'
|
@@ -10,13 +10,18 @@ module FuzzyWhere
|
|
10
10
|
class << self
|
11
11
|
define_method(FuzzyWhere.config.where_method_name) do |conditions|
|
12
12
|
conditions ||= {}
|
13
|
-
|
14
|
-
fail ArgumentError,
|
15
|
-
"conditions must be a Hash, got #{conditions.inspect}"
|
16
|
-
end
|
13
|
+
validate_conditions(conditions)
|
17
14
|
FuzzyRelationBuilder.new(quoted_table_name, where(nil), conditions)
|
18
15
|
.build
|
19
16
|
end
|
17
|
+
|
18
|
+
private
|
19
|
+
|
20
|
+
def validate_conditions(conditions)
|
21
|
+
return if conditions.respond_to?(:key)
|
22
|
+
fail ArgumentError,
|
23
|
+
"conditions must be a Hash, got #{conditions.inspect}"
|
24
|
+
end
|
20
25
|
end
|
21
26
|
end
|
22
27
|
end
|
data/lib/fuzzy_where/config.rb
CHANGED
@@ -5,17 +5,18 @@ require 'active_support/configurable'
|
|
5
5
|
|
6
6
|
# SQLf implementation for ActiveRecord
|
7
7
|
module FuzzyWhere
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
def self.configure(&_block)
|
13
|
-
yield @config ||= FuzzyWhere::Configuration.new
|
14
|
-
end
|
8
|
+
class << self
|
9
|
+
# @!attribute [r] config
|
10
|
+
# @return [FuzzyWhere::Configuration] gem configuration
|
11
|
+
attr_reader :config
|
15
12
|
|
16
|
-
|
17
|
-
|
18
|
-
|
13
|
+
# Configures global settings for FuzzyWhere
|
14
|
+
# FuzzyWhere.configure do |config|
|
15
|
+
# config.where_method_name = :fuzzy_where
|
16
|
+
# end
|
17
|
+
def configure(&_block)
|
18
|
+
yield @config ||= FuzzyWhere::Configuration.new
|
19
|
+
end
|
19
20
|
end
|
20
21
|
|
21
22
|
# {FuzzyWhere} Configuration class
|
@@ -28,6 +29,9 @@ module FuzzyWhere
|
|
28
29
|
# @!attribute [rw] membership_degree_column_name
|
29
30
|
# @return [String] membership degree column name definition
|
30
31
|
config_accessor :membership_degree_column_name
|
32
|
+
# @!attribute [rw] calibration_name
|
33
|
+
# @return [String] calibration condition name definition
|
34
|
+
config_accessor :calibration_name
|
31
35
|
# @!attribute [rw] predicates_file
|
32
36
|
# configuration file location
|
33
37
|
config_accessor :predicates_file
|
@@ -47,22 +51,21 @@ module FuzzyWhere
|
|
47
51
|
# @return [Hash] fuzzy predicate definitions
|
48
52
|
def load_yml(path)
|
49
53
|
fail ConfigError, 'The configuration file is not defined.' unless path
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
fail ConfigError, "The configuration file #{
|
55
|
-
elsif !
|
56
|
-
fail ConfigError, "The configuration file #{
|
57
|
-
elsif !path.readable?
|
58
|
-
fail ConfigError, "The configuration file #{@path} is not readable."
|
54
|
+
file = path.is_a?(Pathname) ? path : Pathname.new(path)
|
55
|
+
if !file.exist?
|
56
|
+
fail ConfigError, "The configuration file #{path} was not found."
|
57
|
+
elsif !file.file?
|
58
|
+
fail ConfigError, "The configuration file #{path} is not a file."
|
59
|
+
elsif !file.readable?
|
60
|
+
fail ConfigError, "The configuration file #{path} is not readable."
|
59
61
|
end
|
60
|
-
HashWithIndifferentAccess.new(YAML.load_file(
|
62
|
+
HashWithIndifferentAccess.new(YAML.load_file(file))
|
61
63
|
end
|
62
64
|
end
|
63
65
|
|
64
66
|
configure do |config|
|
65
67
|
config.where_method_name = :fuzzy_where
|
66
68
|
config.membership_degree_column_name = :membership_degree
|
69
|
+
config.calibration_name = :calibration
|
67
70
|
end
|
68
71
|
end
|
@@ -8,7 +8,7 @@ module FuzzyWhere
|
|
8
8
|
attr_reader :query
|
9
9
|
|
10
10
|
# New FuzzyDerivation intance
|
11
|
-
# @param query [ActiveRecord_Relation] query
|
11
|
+
# @param query [ActiveRecord_Relation] query to append
|
12
12
|
# @param table [String] table name
|
13
13
|
# @param column [String] column name
|
14
14
|
# @param fuzzy_predicate [Hash] fuzzy predicate
|
@@ -24,12 +24,13 @@ module FuzzyWhere
|
|
24
24
|
|
25
25
|
# New FuzzyRelationBuilder intance
|
26
26
|
# @param table [String] table name
|
27
|
-
# @param relation [ActiveRecord_Relation] query
|
27
|
+
# @param relation [ActiveRecord_Relation] query to append
|
28
28
|
# @param conditions [Hash] fuzzy conditions
|
29
29
|
def initialize(table, relation, conditions)
|
30
30
|
@table = table
|
31
31
|
@conditions = conditions
|
32
32
|
@relation = relation
|
33
|
+
@calibration = calibration
|
33
34
|
@membership_degrees = []
|
34
35
|
end
|
35
36
|
|
@@ -39,11 +40,25 @@ module FuzzyWhere
|
|
39
40
|
def build
|
40
41
|
process_conditions
|
41
42
|
add_membership_column
|
43
|
+
add_calibration_column
|
42
44
|
order_by_membership_degree
|
43
45
|
end
|
44
46
|
|
45
47
|
private
|
46
48
|
|
49
|
+
def calibration
|
50
|
+
@calibration = @conditions.delete(FuzzyWhere.config.calibration_name)
|
51
|
+
@calibration ||= 0.5
|
52
|
+
validate_calibration
|
53
|
+
end
|
54
|
+
|
55
|
+
def validate_calibration
|
56
|
+
Float @calibration
|
57
|
+
rescue
|
58
|
+
raise ArgumentError,
|
59
|
+
"calibration must be a Float, got #{@calibration.inspect}"
|
60
|
+
end
|
61
|
+
|
47
62
|
def process_conditions
|
48
63
|
@conditions.each do |column, predicate|
|
49
64
|
pred_def = load_fuzzy_predicate_definition(predicate)
|
@@ -77,6 +92,10 @@ module FuzzyWhere
|
|
77
92
|
.select("#{@table}.*, (#{membership_degree}) AS #{name}")
|
78
93
|
end
|
79
94
|
|
95
|
+
def add_calibration_column
|
96
|
+
@relation = @relation.where("(#{membership_degree}) >= ?", @calibration)
|
97
|
+
end
|
98
|
+
|
80
99
|
def membership_degree
|
81
100
|
if @membership_degrees.size > 1
|
82
101
|
min_membership_degree
|
@@ -17,8 +17,8 @@ module FuzzyWhere
|
|
17
17
|
@fuzzy_predicate = fuzzy_predicate
|
18
18
|
end
|
19
19
|
|
20
|
-
# Take instance
|
21
|
-
# Based on
|
20
|
+
# Take instance attributes and return a calculations for them
|
21
|
+
# Based on fuzzy set trapezium function
|
22
22
|
# @return [String] the calculation query to be used for the column
|
23
23
|
def membership_function
|
24
24
|
min = @fuzzy_predicate[:min]
|
@@ -40,17 +40,15 @@ module FuzzyWhere
|
|
40
40
|
def decreasing
|
41
41
|
"CASE WHEN #{less_than(:core2, true)} THEN 1.0 "\
|
42
42
|
"WHEN #{greater_than(:core2)} AND #{less_than(:max)} THEN "\
|
43
|
-
"(#{right_border_formula}) "
|
44
|
-
'ELSE 0 END'
|
43
|
+
"(#{right_border_formula}) ELSE 0 END"
|
45
44
|
end
|
46
45
|
|
47
|
-
#
|
46
|
+
# Increasing function calculation
|
48
47
|
# @return [String] condition representation for membership calculation
|
49
48
|
def increasing
|
50
49
|
"CASE WHEN #{greater_than(:core1, true)} THEN 1.0 "\
|
51
50
|
"WHEN #{greater_than(:min)} AND #{less_than(:core1)} THEN "\
|
52
|
-
"(#{left_border_formula}) "
|
53
|
-
'ELSE 0 END'
|
51
|
+
"(#{left_border_formula}) ELSE 0 END"
|
54
52
|
end
|
55
53
|
|
56
54
|
# Unimodal function calculation
|
@@ -61,8 +59,7 @@ module FuzzyWhere
|
|
61
59
|
"WHEN #{greater_than(:min)} AND #{less_than(:core1)} THEN "\
|
62
60
|
"(#{left_border_formula})"\
|
63
61
|
"WHEN #{greater_than(:core2)} AND #{less_than(:max)} THEN "\
|
64
|
-
"(#{right_border_formula}) "
|
65
|
-
'ELSE 0 END'
|
62
|
+
"(#{right_border_formula}) ELSE 0 END"
|
66
63
|
end
|
67
64
|
|
68
65
|
def greater_than(x, equal = false)
|
data/lib/fuzzy_where/version.rb
CHANGED
@@ -2,12 +2,12 @@
|
|
2
2
|
module FuzzyWhere
|
3
3
|
module Generators #:nodoc
|
4
4
|
# Generate gem configuration files
|
5
|
-
class ConfigGenerator < Rails::Generators::Base
|
5
|
+
class ConfigGenerator < ::Rails::Generators::Base
|
6
6
|
source_root File.expand_path(File.join(File.dirname(__FILE__), 'templates'))
|
7
7
|
|
8
8
|
desc <<DESC
|
9
9
|
Description:
|
10
|
-
Copies FuzzyWhere configuration
|
10
|
+
Copies FuzzyWhere configuration files to your application's initializer directory.
|
11
11
|
DESC
|
12
12
|
# Create FuzzyWhere config file
|
13
13
|
def copy_config_file
|
@@ -2,7 +2,7 @@
|
|
2
2
|
module FuzzyWhere
|
3
3
|
module Generators #:nodoc
|
4
4
|
# Generate a new fuzzy predicate
|
5
|
-
class PredicateGenerator < Rails::Generators::NamedBase
|
5
|
+
class PredicateGenerator < ::Rails::Generators::NamedBase
|
6
6
|
argument :attributes, type: :array, default: [], banner: '1 4 infinite infinite'
|
7
7
|
|
8
8
|
desc <<DESC
|
@@ -12,7 +12,8 @@ DESC
|
|
12
12
|
# Add Fuzzy predicate
|
13
13
|
def add_fuzzy_predicate
|
14
14
|
return if attributes.empty?
|
15
|
-
append_to_file 'config/fuzzy_predicates.yml',
|
15
|
+
append_to_file 'config/fuzzy_predicates.yml',
|
16
|
+
predicate_content(name, attributes)
|
16
17
|
end
|
17
18
|
|
18
19
|
private
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fuzzy_where
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gustavo Bazan
|
8
8
|
autorequire:
|
9
|
-
bindir:
|
9
|
+
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-01-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -76,14 +76,14 @@ dependencies:
|
|
76
76
|
requirements:
|
77
77
|
- - "~>"
|
78
78
|
- !ruby/object:Gem::Version
|
79
|
-
version: '1.
|
79
|
+
version: '1.7'
|
80
80
|
type: :development
|
81
81
|
prerelease: false
|
82
82
|
version_requirements: !ruby/object:Gem::Requirement
|
83
83
|
requirements:
|
84
84
|
- - "~>"
|
85
85
|
- !ruby/object:Gem::Version
|
86
|
-
version: '1.
|
86
|
+
version: '1.7'
|
87
87
|
- !ruby/object:Gem::Dependency
|
88
88
|
name: rake
|
89
89
|
requirement: !ruby/object:Gem::Requirement
|
@@ -118,6 +118,20 @@ dependencies:
|
|
118
118
|
- - ">="
|
119
119
|
- !ruby/object:Gem::Version
|
120
120
|
version: 3.2.0
|
121
|
+
- !ruby/object:Gem::Dependency
|
122
|
+
name: coveralls
|
123
|
+
requirement: !ruby/object:Gem::Requirement
|
124
|
+
requirements:
|
125
|
+
- - "~>"
|
126
|
+
- !ruby/object:Gem::Version
|
127
|
+
version: 0.8.0
|
128
|
+
type: :development
|
129
|
+
prerelease: false
|
130
|
+
version_requirements: !ruby/object:Gem::Requirement
|
131
|
+
requirements:
|
132
|
+
- - "~>"
|
133
|
+
- !ruby/object:Gem::Version
|
134
|
+
version: 0.8.0
|
121
135
|
- !ruby/object:Gem::Dependency
|
122
136
|
name: database_cleaner
|
123
137
|
requirement: !ruby/object:Gem::Requirement
|
@@ -159,8 +173,11 @@ executables: []
|
|
159
173
|
extensions: []
|
160
174
|
extra_rdoc_files: []
|
161
175
|
files:
|
176
|
+
- ".codeclimate.yml"
|
177
|
+
- ".coveralls.yml"
|
162
178
|
- ".gitignore"
|
163
179
|
- ".rspec"
|
180
|
+
- ".simplecov"
|
164
181
|
- ".travis.yml"
|
165
182
|
- ".yardopts"
|
166
183
|
- CHANGELOG.md
|
@@ -173,11 +190,8 @@ files:
|
|
173
190
|
- config/initializers/fuzzy_where_config.rb
|
174
191
|
- fuzzy_where.gemspec
|
175
192
|
- gemfiles/active_record_40.gemfile
|
176
|
-
- gemfiles/active_record_40.gemfile.lock
|
177
193
|
- gemfiles/active_record_41.gemfile
|
178
|
-
- gemfiles/active_record_41.gemfile.lock
|
179
194
|
- gemfiles/active_record_42.gemfile
|
180
|
-
- gemfiles/active_record_42.gemfile.lock
|
181
195
|
- lib/fuzzy_where.rb
|
182
196
|
- lib/fuzzy_where/active_record_model_extension.rb
|
183
197
|
- lib/fuzzy_where/config.rb
|
@@ -211,7 +225,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
211
225
|
version: '0'
|
212
226
|
requirements: []
|
213
227
|
rubyforge_project:
|
214
|
-
rubygems_version: 2.
|
228
|
+
rubygems_version: 2.5.1
|
215
229
|
signing_key:
|
216
230
|
specification_version: 4
|
217
231
|
summary: SQLf
|
@@ -1,97 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: ../
|
3
|
-
specs:
|
4
|
-
fuzzy_where (0.1.4)
|
5
|
-
actionpack (~> 4.0, >= 4.0.0)
|
6
|
-
activerecord (~> 4.0, >= 4.0.0)
|
7
|
-
activesupport (~> 4.0, >= 4.0.0)
|
8
|
-
|
9
|
-
GEM
|
10
|
-
remote: https://rubygems.org/
|
11
|
-
specs:
|
12
|
-
actionpack (4.0.13)
|
13
|
-
activesupport (= 4.0.13)
|
14
|
-
builder (~> 3.1.0)
|
15
|
-
erubis (~> 2.7.0)
|
16
|
-
rack (~> 1.5.2)
|
17
|
-
rack-test (~> 0.6.2)
|
18
|
-
activemodel (4.0.13)
|
19
|
-
activesupport (= 4.0.13)
|
20
|
-
builder (~> 3.1.0)
|
21
|
-
activerecord (4.0.13)
|
22
|
-
activemodel (= 4.0.13)
|
23
|
-
activerecord-deprecated_finders (~> 1.0.2)
|
24
|
-
activesupport (= 4.0.13)
|
25
|
-
arel (~> 4.0.0)
|
26
|
-
activerecord-deprecated_finders (1.0.4)
|
27
|
-
activesupport (4.0.13)
|
28
|
-
i18n (~> 0.6, >= 0.6.9)
|
29
|
-
minitest (~> 4.2)
|
30
|
-
multi_json (~> 1.3)
|
31
|
-
thread_safe (~> 0.1)
|
32
|
-
tzinfo (~> 0.3.37)
|
33
|
-
arel (4.0.2)
|
34
|
-
builder (3.1.4)
|
35
|
-
database_cleaner (1.4.1)
|
36
|
-
diff-lcs (1.2.5)
|
37
|
-
erubis (2.7.0)
|
38
|
-
generator_spec (0.9.3)
|
39
|
-
activesupport (>= 3.0.0)
|
40
|
-
railties (>= 3.0.0)
|
41
|
-
i18n (0.7.0)
|
42
|
-
minitest (4.7.5)
|
43
|
-
multi_json (1.11.0)
|
44
|
-
power_assert (0.2.3)
|
45
|
-
rack (1.5.5)
|
46
|
-
rack-test (0.6.3)
|
47
|
-
rack (>= 1.0)
|
48
|
-
railties (4.0.13)
|
49
|
-
actionpack (= 4.0.13)
|
50
|
-
activesupport (= 4.0.13)
|
51
|
-
rake (>= 0.8.7)
|
52
|
-
thor (>= 0.18.1, < 2.0)
|
53
|
-
rake (10.4.2)
|
54
|
-
rspec (3.2.0)
|
55
|
-
rspec-core (~> 3.2.0)
|
56
|
-
rspec-expectations (~> 3.2.0)
|
57
|
-
rspec-mocks (~> 3.2.0)
|
58
|
-
rspec-core (3.2.3)
|
59
|
-
rspec-support (~> 3.2.0)
|
60
|
-
rspec-expectations (3.2.1)
|
61
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
62
|
-
rspec-support (~> 3.2.0)
|
63
|
-
rspec-mocks (3.2.1)
|
64
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
65
|
-
rspec-support (~> 3.2.0)
|
66
|
-
rspec-rails (3.2.3)
|
67
|
-
actionpack (>= 3.0, < 4.3)
|
68
|
-
activesupport (>= 3.0, < 4.3)
|
69
|
-
railties (>= 3.0, < 4.3)
|
70
|
-
rspec-core (~> 3.2.0)
|
71
|
-
rspec-expectations (~> 3.2.0)
|
72
|
-
rspec-mocks (~> 3.2.0)
|
73
|
-
rspec-support (~> 3.2.0)
|
74
|
-
rspec-support (3.2.2)
|
75
|
-
sqlite3 (1.3.10)
|
76
|
-
test-unit (3.1.2)
|
77
|
-
power_assert
|
78
|
-
thor (0.19.1)
|
79
|
-
thread_safe (0.3.5)
|
80
|
-
tzinfo (0.3.44)
|
81
|
-
yard (0.8.7.6)
|
82
|
-
|
83
|
-
PLATFORMS
|
84
|
-
ruby
|
85
|
-
|
86
|
-
DEPENDENCIES
|
87
|
-
activerecord (~> 4.0.0)
|
88
|
-
bundler (~> 1.8)
|
89
|
-
database_cleaner (~> 1.4.1)
|
90
|
-
fuzzy_where!
|
91
|
-
generator_spec (~> 0.9.0)
|
92
|
-
rake (~> 10.0)
|
93
|
-
rspec (~> 3.2, >= 3.2.0)
|
94
|
-
rspec-rails (~> 3.2.0)
|
95
|
-
sqlite3
|
96
|
-
test-unit
|
97
|
-
yard (~> 0.8.7, >= 0.8.0)
|
@@ -1,95 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: ../
|
3
|
-
specs:
|
4
|
-
fuzzy_where (0.1.4)
|
5
|
-
actionpack (~> 4.0, >= 4.0.0)
|
6
|
-
activerecord (~> 4.0, >= 4.0.0)
|
7
|
-
activesupport (~> 4.0, >= 4.0.0)
|
8
|
-
|
9
|
-
GEM
|
10
|
-
remote: https://rubygems.org/
|
11
|
-
specs:
|
12
|
-
actionpack (4.1.10)
|
13
|
-
actionview (= 4.1.10)
|
14
|
-
activesupport (= 4.1.10)
|
15
|
-
rack (~> 1.5.2)
|
16
|
-
rack-test (~> 0.6.2)
|
17
|
-
actionview (4.1.10)
|
18
|
-
activesupport (= 4.1.10)
|
19
|
-
builder (~> 3.1)
|
20
|
-
erubis (~> 2.7.0)
|
21
|
-
activemodel (4.1.10)
|
22
|
-
activesupport (= 4.1.10)
|
23
|
-
builder (~> 3.1)
|
24
|
-
activerecord (4.1.10)
|
25
|
-
activemodel (= 4.1.10)
|
26
|
-
activesupport (= 4.1.10)
|
27
|
-
arel (~> 5.0.0)
|
28
|
-
activesupport (4.1.10)
|
29
|
-
i18n (~> 0.6, >= 0.6.9)
|
30
|
-
json (~> 1.7, >= 1.7.7)
|
31
|
-
minitest (~> 5.1)
|
32
|
-
thread_safe (~> 0.1)
|
33
|
-
tzinfo (~> 1.1)
|
34
|
-
arel (5.0.1.20140414130214)
|
35
|
-
builder (3.2.2)
|
36
|
-
database_cleaner (1.4.1)
|
37
|
-
diff-lcs (1.2.5)
|
38
|
-
erubis (2.7.0)
|
39
|
-
generator_spec (0.9.3)
|
40
|
-
activesupport (>= 3.0.0)
|
41
|
-
railties (>= 3.0.0)
|
42
|
-
i18n (0.7.0)
|
43
|
-
json (1.8.3)
|
44
|
-
minitest (5.7.0)
|
45
|
-
rack (1.5.5)
|
46
|
-
rack-test (0.6.3)
|
47
|
-
rack (>= 1.0)
|
48
|
-
railties (4.1.10)
|
49
|
-
actionpack (= 4.1.10)
|
50
|
-
activesupport (= 4.1.10)
|
51
|
-
rake (>= 0.8.7)
|
52
|
-
thor (>= 0.18.1, < 2.0)
|
53
|
-
rake (10.4.2)
|
54
|
-
rspec (3.2.0)
|
55
|
-
rspec-core (~> 3.2.0)
|
56
|
-
rspec-expectations (~> 3.2.0)
|
57
|
-
rspec-mocks (~> 3.2.0)
|
58
|
-
rspec-core (3.2.3)
|
59
|
-
rspec-support (~> 3.2.0)
|
60
|
-
rspec-expectations (3.2.1)
|
61
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
62
|
-
rspec-support (~> 3.2.0)
|
63
|
-
rspec-mocks (3.2.1)
|
64
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
65
|
-
rspec-support (~> 3.2.0)
|
66
|
-
rspec-rails (3.2.3)
|
67
|
-
actionpack (>= 3.0, < 4.3)
|
68
|
-
activesupport (>= 3.0, < 4.3)
|
69
|
-
railties (>= 3.0, < 4.3)
|
70
|
-
rspec-core (~> 3.2.0)
|
71
|
-
rspec-expectations (~> 3.2.0)
|
72
|
-
rspec-mocks (~> 3.2.0)
|
73
|
-
rspec-support (~> 3.2.0)
|
74
|
-
rspec-support (3.2.2)
|
75
|
-
sqlite3 (1.3.10)
|
76
|
-
thor (0.19.1)
|
77
|
-
thread_safe (0.3.5)
|
78
|
-
tzinfo (1.2.2)
|
79
|
-
thread_safe (~> 0.1)
|
80
|
-
yard (0.8.7.6)
|
81
|
-
|
82
|
-
PLATFORMS
|
83
|
-
ruby
|
84
|
-
|
85
|
-
DEPENDENCIES
|
86
|
-
activerecord (~> 4.1.0)
|
87
|
-
bundler (~> 1.8)
|
88
|
-
database_cleaner (~> 1.4.1)
|
89
|
-
fuzzy_where!
|
90
|
-
generator_spec (~> 0.9.0)
|
91
|
-
rake (~> 10.0)
|
92
|
-
rspec (~> 3.2, >= 3.2.0)
|
93
|
-
rspec-rails (~> 3.2.0)
|
94
|
-
sqlite3
|
95
|
-
yard (~> 0.8.7, >= 0.8.0)
|
@@ -1,116 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: ../
|
3
|
-
specs:
|
4
|
-
fuzzy_where (0.1.4)
|
5
|
-
actionpack (~> 4.0, >= 4.0.0)
|
6
|
-
activerecord (~> 4.0, >= 4.0.0)
|
7
|
-
activesupport (~> 4.0, >= 4.0.0)
|
8
|
-
|
9
|
-
GEM
|
10
|
-
remote: https://rubygems.org/
|
11
|
-
specs:
|
12
|
-
actionpack (4.2.3)
|
13
|
-
actionview (= 4.2.3)
|
14
|
-
activesupport (= 4.2.3)
|
15
|
-
rack (~> 1.6)
|
16
|
-
rack-test (~> 0.6.2)
|
17
|
-
rails-dom-testing (~> 1.0, >= 1.0.5)
|
18
|
-
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
19
|
-
actionview (4.2.3)
|
20
|
-
activesupport (= 4.2.3)
|
21
|
-
builder (~> 3.1)
|
22
|
-
erubis (~> 2.7.0)
|
23
|
-
rails-dom-testing (~> 1.0, >= 1.0.5)
|
24
|
-
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
25
|
-
activemodel (4.2.3)
|
26
|
-
activesupport (= 4.2.3)
|
27
|
-
builder (~> 3.1)
|
28
|
-
activerecord (4.2.3)
|
29
|
-
activemodel (= 4.2.3)
|
30
|
-
activesupport (= 4.2.3)
|
31
|
-
arel (~> 6.0)
|
32
|
-
activesupport (4.2.3)
|
33
|
-
i18n (~> 0.7)
|
34
|
-
json (~> 1.7, >= 1.7.7)
|
35
|
-
minitest (~> 5.1)
|
36
|
-
thread_safe (~> 0.3, >= 0.3.4)
|
37
|
-
tzinfo (~> 1.1)
|
38
|
-
arel (6.0.0)
|
39
|
-
builder (3.2.2)
|
40
|
-
database_cleaner (1.4.1)
|
41
|
-
diff-lcs (1.2.5)
|
42
|
-
erubis (2.7.0)
|
43
|
-
generator_spec (0.9.3)
|
44
|
-
activesupport (>= 3.0.0)
|
45
|
-
railties (>= 3.0.0)
|
46
|
-
i18n (0.7.0)
|
47
|
-
json (1.8.3)
|
48
|
-
loofah (2.0.2)
|
49
|
-
nokogiri (>= 1.5.9)
|
50
|
-
mini_portile (0.6.2)
|
51
|
-
minitest (5.7.0)
|
52
|
-
nokogiri (1.6.6.2)
|
53
|
-
mini_portile (~> 0.6.0)
|
54
|
-
power_assert (0.2.3)
|
55
|
-
rack (1.6.4)
|
56
|
-
rack-test (0.6.3)
|
57
|
-
rack (>= 1.0)
|
58
|
-
rails-deprecated_sanitizer (1.0.3)
|
59
|
-
activesupport (>= 4.2.0.alpha)
|
60
|
-
rails-dom-testing (1.0.6)
|
61
|
-
activesupport (>= 4.2.0.beta, < 5.0)
|
62
|
-
nokogiri (~> 1.6.0)
|
63
|
-
rails-deprecated_sanitizer (>= 1.0.1)
|
64
|
-
rails-html-sanitizer (1.0.2)
|
65
|
-
loofah (~> 2.0)
|
66
|
-
railties (4.2.3)
|
67
|
-
actionpack (= 4.2.3)
|
68
|
-
activesupport (= 4.2.3)
|
69
|
-
rake (>= 0.8.7)
|
70
|
-
thor (>= 0.18.1, < 2.0)
|
71
|
-
rake (10.4.2)
|
72
|
-
rspec (3.2.0)
|
73
|
-
rspec-core (~> 3.2.0)
|
74
|
-
rspec-expectations (~> 3.2.0)
|
75
|
-
rspec-mocks (~> 3.2.0)
|
76
|
-
rspec-core (3.2.3)
|
77
|
-
rspec-support (~> 3.2.0)
|
78
|
-
rspec-expectations (3.2.1)
|
79
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
80
|
-
rspec-support (~> 3.2.0)
|
81
|
-
rspec-mocks (3.2.1)
|
82
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
83
|
-
rspec-support (~> 3.2.0)
|
84
|
-
rspec-rails (3.2.3)
|
85
|
-
actionpack (>= 3.0, < 4.3)
|
86
|
-
activesupport (>= 3.0, < 4.3)
|
87
|
-
railties (>= 3.0, < 4.3)
|
88
|
-
rspec-core (~> 3.2.0)
|
89
|
-
rspec-expectations (~> 3.2.0)
|
90
|
-
rspec-mocks (~> 3.2.0)
|
91
|
-
rspec-support (~> 3.2.0)
|
92
|
-
rspec-support (3.2.2)
|
93
|
-
sqlite3 (1.3.10)
|
94
|
-
test-unit (3.1.2)
|
95
|
-
power_assert
|
96
|
-
thor (0.19.1)
|
97
|
-
thread_safe (0.3.5)
|
98
|
-
tzinfo (1.2.2)
|
99
|
-
thread_safe (~> 0.1)
|
100
|
-
yard (0.8.7.6)
|
101
|
-
|
102
|
-
PLATFORMS
|
103
|
-
ruby
|
104
|
-
|
105
|
-
DEPENDENCIES
|
106
|
-
activerecord (~> 4.2.0)
|
107
|
-
bundler (~> 1.8)
|
108
|
-
database_cleaner (~> 1.4.1)
|
109
|
-
fuzzy_where!
|
110
|
-
generator_spec (~> 0.9.0)
|
111
|
-
rake (~> 10.0)
|
112
|
-
rspec (~> 3.2, >= 3.2.0)
|
113
|
-
rspec-rails (~> 3.2.0)
|
114
|
-
sqlite3
|
115
|
-
test-unit
|
116
|
-
yard (~> 0.8.7, >= 0.8.0)
|