ransack 1.6.5 → 1.6.6
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/CHANGELOG.md +38 -0
- data/Gemfile +3 -2
- data/README.md +16 -13
- data/lib/ransack/adapters/active_record/context.rb +1 -1
- data/lib/ransack/helpers/form_builder.rb +1 -22
- data/lib/ransack/naming.rb +4 -0
- data/lib/ransack/version.rb +1 -1
- data/ransack.gemspec +1 -1
- data/spec/spec_helper.rb +6 -4
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3d0f75469674a840fd6677c3e2cea940c84e4438
|
4
|
+
data.tar.gz: 6ab05dd928c897263c629de60c06dfb10fc74ea5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a46b017f203b3581ba2349417891e6f3733f3a49aa2c843daa748d69fd1b9a6f7f0daf0ec7ad72ae56e6f8b724b3c886447fdc532f2a79254b2651353d148ed0
|
7
|
+
data.tar.gz: a835c33713bcc0dd9269c12e1dbe80f20a922ca8ceaf2e5ce3955b360f80c4a42a478d0e72de9d7df9bc2f0b34f29853eb6fb75c919a64ecfdad9eb41d678612
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,43 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
+
## Version 1.6.6 - 2015-04-05
|
4
|
+
### Changed
|
5
|
+
|
6
|
+
* Upgrade Polyamorous dependency to version 1.2.0, which uses Module#prepend instead of monkey-patching for hooking into Active Record (with Ruby 2.x).
|
7
|
+
|
8
|
+
*Jon Atack*
|
9
|
+
|
10
|
+
### Fixed
|
11
|
+
|
12
|
+
* An improved fix for the "undefined method `model_name` for Ransack::Search"
|
13
|
+
issue [#518](https://github.com/activerecord-hackery/ransack/issues/518)
|
14
|
+
affecting Rails 4.2.1 and 5.0.0. This fix allows us to remove the
|
15
|
+
ActionView patch in Ransack version 1.6.4.
|
16
|
+
|
17
|
+
*Gleb Mazovetskiy*
|
18
|
+
|
19
|
+
* Fix an erroneous reference in `ActiveRecord::Associations::JoinDependency`
|
20
|
+
to a version-dependent Active Record reference, and replace it with a
|
21
|
+
better, more reliable one defined in Polyamorous. As this class lives
|
22
|
+
inside an `ActiveRecord` module, the reference needs to be absolute in
|
23
|
+
order to properly point to the AR class.
|
24
|
+
|
25
|
+
*Nahuel Cuesta Luengo*
|
26
|
+
|
27
|
+
* Fix RubyGems YARD rendering of the README docs.
|
28
|
+
|
29
|
+
*Jon Atack*
|
30
|
+
|
31
|
+
### Added
|
32
|
+
|
33
|
+
* Add the Ruby version to the the header message that shows the database,
|
34
|
+
Active Record and Arel versions when running tests.
|
35
|
+
|
36
|
+
* Add Code Climate analysis.
|
37
|
+
|
38
|
+
*Jon Atack*
|
39
|
+
|
40
|
+
|
3
41
|
## Version 1.6.5 - 2015-03-28 - Rails 5.0.0 update
|
4
42
|
### Added
|
5
43
|
|
data/Gemfile
CHANGED
@@ -7,10 +7,11 @@ rails = ENV['RAILS'] || '4-2-stable'
|
|
7
7
|
|
8
8
|
if rails == 'master'
|
9
9
|
gem 'arel', github: 'rails/arel'
|
10
|
+
gem 'polyamorous', github: 'activerecord-hackery/polyamorous'
|
11
|
+
else
|
12
|
+
gem 'polyamorous', '~> 1.2'
|
10
13
|
end
|
11
14
|
|
12
|
-
gem 'polyamorous', '~> 1.1'
|
13
|
-
|
14
15
|
gem 'pry'
|
15
16
|
|
16
17
|
# Provide timezone information on Windows
|
data/README.md
CHANGED
@@ -4,6 +4,8 @@
|
|
4
4
|
(https://travis-ci.org/activerecord-hackery/ransack)
|
5
5
|
[]
|
6
6
|
(http://badge.fury.io/rb/ransack)
|
7
|
+
[]
|
8
|
+
(https://codeclimate.com/github/activerecord-hackery/ransack)
|
7
9
|
|
8
10
|
Ransack is a rewrite of [MetaSearch]
|
9
11
|
(https://github.com/activerecord-hackery/meta_search)
|
@@ -27,20 +29,20 @@ instead.
|
|
27
29
|
If you're viewing this at
|
28
30
|
[github.com/activerecord-hackery/ransack](https://github.com/activerecord-hackery/ransack),
|
29
31
|
you're reading the documentation for the master branch with the latest features.
|
30
|
-
[View documentation for the last release (1.6.
|
31
|
-
(https://github.com/activerecord-hackery/ransack/tree/v1.6.
|
32
|
+
[View documentation for the last release (1.6.6).]
|
33
|
+
(https://github.com/activerecord-hackery/ransack/tree/v1.6.6)
|
32
34
|
|
33
35
|
## Getting started
|
34
36
|
|
35
37
|
Ransack is compatible with Rails 3 and 4 (including 4.2.1) on Ruby 1.9 and
|
36
|
-
later.
|
37
|
-
|
38
|
-
|
38
|
+
later (Ruby 2.2 recommended). Ransack currently works with Rails master (5.0.0)
|
39
|
+
too! If you are using Ruby 1.8, you can use an earlier version of Ransack up to
|
40
|
+
1.3.0.
|
39
41
|
|
40
42
|
Ransack works out-of-the-box with Active Record and also features experimental
|
41
43
|
support for Mongoid 4.0 (without associations, further details below).
|
42
44
|
|
43
|
-
In your Gemfile, for the last officially released
|
45
|
+
In your Gemfile, for the last officially released gem:
|
44
46
|
|
45
47
|
```ruby
|
46
48
|
gem 'ransack'
|
@@ -120,7 +122,7 @@ The two primary Ransack view helpers are `search_form_for` and `sort_link`,
|
|
120
122
|
which are defined in
|
121
123
|
[Ransack::Helpers::FormHelper](lib/ransack/helpers/form_helper.rb).
|
122
124
|
|
123
|
-
|
125
|
+
####Ransack's `search_form_for` helper replaces `form_for` for creating the view search form
|
124
126
|
|
125
127
|
```erb
|
126
128
|
<%= search_form_for @q do |f| %>
|
@@ -142,20 +144,21 @@ which are defined in
|
|
142
144
|
```
|
143
145
|
|
144
146
|
`cont` (contains) and `start` (starts with) are just two of the available
|
145
|
-
search predicates. See
|
146
|
-
(https://github.com/activerecord-hackery/ransack/blob/master/lib/ransack/constants.rb)
|
147
|
-
for a full list and the
|
148
|
-
(https://github.com/activerecord-hackery/ransack/wiki/Basic-Searching)
|
147
|
+
search predicates. See
|
148
|
+
[Constants](https://github.com/activerecord-hackery/ransack/blob/master/lib/ransack/constants.rb)
|
149
|
+
for a full list and the
|
150
|
+
[wiki](https://github.com/activerecord-hackery/ransack/wiki/Basic-Searching)
|
149
151
|
for more information.
|
150
152
|
|
151
153
|
The `search_form_for` answer format can be set like this:
|
154
|
+
|
152
155
|
```erb
|
153
156
|
<%= search_form_for(@q, format: :pdf) do |f| %>
|
154
157
|
|
155
158
|
<%= search_form_for(@q, format: :json) do |f| %>
|
156
159
|
```
|
157
160
|
|
158
|
-
|
161
|
+
####Ransack's `sort_link` helper creates table headers that are sortable links
|
159
162
|
|
160
163
|
```erb
|
161
164
|
<%= sort_link(@q, :name) %>
|
@@ -681,4 +684,4 @@ fix bugs!
|
|
681
684
|
|
682
685
|
## Copyright
|
683
686
|
|
684
|
-
Copyright © 2011-
|
687
|
+
Copyright © 2011-2015 [Ernie Miller](http://twitter.com/erniemiller)
|
@@ -184,7 +184,7 @@ module Ransack
|
|
184
184
|
:string_join
|
185
185
|
when Hash, Symbol, Array
|
186
186
|
:association_join
|
187
|
-
when
|
187
|
+
when Polyamorous::JoinDependency, Polyamorous::JoinAssociation
|
188
188
|
:stashed_join
|
189
189
|
when Arel::Nodes::Join
|
190
190
|
:join_node
|
@@ -1,36 +1,15 @@
|
|
1
1
|
require 'action_view'
|
2
2
|
|
3
|
-
# Monkey-patching, avert your eyes!
|
4
|
-
# TODO: Find a better way to solve these two issues:
|
5
|
-
#
|
6
3
|
module ActionView::Helpers::Tags
|
7
|
-
|
4
|
+
# TODO: Find a better way to solve this issue!
|
8
5
|
# This patch is needed since this Rails commit:
|
9
6
|
# https://github.com/rails/rails/commit/c1a118a
|
10
|
-
#
|
11
7
|
class Base
|
12
8
|
private
|
13
9
|
def value(object)
|
14
10
|
object.send @method_name if object # use send instead of public_send
|
15
11
|
end
|
16
12
|
end
|
17
|
-
|
18
|
-
# This patch is needed for Rails 4.2.1 and 5.0.0 since these commits:
|
19
|
-
#
|
20
|
-
# Rails 4.2:
|
21
|
-
# https://github.com/rails/rails/commits/4-2-stable/actionview/lib/action_view/helpers/tags/translator.rb
|
22
|
-
# https://github.com/rails/rails/commits/4-2-stable/actionview/lib/action_view/helpers/tags/placeholderable.rb
|
23
|
-
#
|
24
|
-
# Rails master:
|
25
|
-
# https://github.com/rails/rails/commits/master/actionview/lib/action_view/helpers/tags/translator.rb
|
26
|
-
# https://github.com/rails/rails/commits/master/actionview/lib/action_view/helpers/tags/placeholderable.rb
|
27
|
-
#
|
28
|
-
class Translator
|
29
|
-
def i18n_default
|
30
|
-
return '' unless model
|
31
|
-
["#{model}.#{method_and_value}".to_sym, ""]
|
32
|
-
end
|
33
|
-
end
|
34
13
|
end
|
35
14
|
|
36
15
|
RANSACK_FORM_BUILDER = 'RANSACK_FORM_BUILDER'.freeze
|
data/lib/ransack/naming.rb
CHANGED
data/lib/ransack/version.rb
CHANGED
data/ransack.gemspec
CHANGED
@@ -20,7 +20,7 @@ Gem::Specification.new do |s|
|
|
20
20
|
s.add_dependency 'activerecord', '>= 3.0'
|
21
21
|
s.add_dependency 'activesupport', '>= 3.0'
|
22
22
|
s.add_dependency 'i18n'
|
23
|
-
s.add_dependency 'polyamorous', '~> 1.
|
23
|
+
s.add_dependency 'polyamorous', '~> 1.2'
|
24
24
|
s.add_development_dependency 'rspec', '~> 2.14.0'
|
25
25
|
s.add_development_dependency 'machinist', '~> 1.0.6'
|
26
26
|
s.add_development_dependency 'faker', '~> 0.9.5'
|
data/spec/spec_helper.rb
CHANGED
@@ -28,10 +28,12 @@ RSpec.configure do |config|
|
|
28
28
|
config.alias_it_should_behave_like_to :it_has_behavior, 'has behavior'
|
29
29
|
|
30
30
|
config.before(:suite) do
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
31
|
+
message = "Running Ransack specs with #{
|
32
|
+
ActiveRecord::Base.connection.adapter_name
|
33
|
+
}, Active Record #{::ActiveRecord::VERSION::STRING}, Arel #{Arel::VERSION
|
34
|
+
} and Ruby #{RUBY_VERSION}"
|
35
|
+
line = '=' * message.length
|
36
|
+
puts line, message, line
|
35
37
|
Schema.create
|
36
38
|
end
|
37
39
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ransack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.6.
|
4
|
+
version: 1.6.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ernie Miller
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2015-
|
13
|
+
date: 2015-04-05 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: actionpack
|
@@ -74,14 +74,14 @@ dependencies:
|
|
74
74
|
requirements:
|
75
75
|
- - "~>"
|
76
76
|
- !ruby/object:Gem::Version
|
77
|
-
version: '1.
|
77
|
+
version: '1.2'
|
78
78
|
type: :runtime
|
79
79
|
prerelease: false
|
80
80
|
version_requirements: !ruby/object:Gem::Requirement
|
81
81
|
requirements:
|
82
82
|
- - "~>"
|
83
83
|
- !ruby/object:Gem::Version
|
84
|
-
version: '1.
|
84
|
+
version: '1.2'
|
85
85
|
- !ruby/object:Gem::Dependency
|
86
86
|
name: rspec
|
87
87
|
requirement: !ruby/object:Gem::Requirement
|