attribute-filters 1.0.0 → 1.0.1
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.
- data.tar.gz.sig +0 -0
- data/ChangeLog +36 -0
- data/Gemfile +19 -0
- data/Gemfile.lock +82 -0
- data/README.rdoc +104 -5
- data/Rakefile +0 -4
- data/attribute-filters.gemspec +4 -4
- data/docs/TODO +3 -1
- data/lib/attribute-filters/version.rb +2 -2
- metadata +108 -93
- metadata.gz.sig +0 -0
data.tar.gz.sig
CHANGED
Binary file
|
data/ChangeLog
CHANGED
@@ -1,3 +1,39 @@
|
|
1
|
+
commit 2b72084f1eef2a7b8dfa632a2fd918eae203f106
|
2
|
+
Author: Paweł Wilk <siefca@gnu.org>
|
3
|
+
Date: Thu Jun 28 11:53:58 2012 +0200
|
4
|
+
|
5
|
+
Ready to release gem
|
6
|
+
|
7
|
+
commit 824ee4189fe9fb5c66c6aebd99aba4a661829260
|
8
|
+
Author: Paweł Wilk <siefca@gnu.org>
|
9
|
+
Date: Thu Jun 28 11:50:22 2012 +0200
|
10
|
+
|
11
|
+
Doco update
|
12
|
+
|
13
|
+
commit 56a9df2c396d406c167d757b157e9d13700d3645
|
14
|
+
Author: Paweł Wilk <siefca@gnu.org>
|
15
|
+
Date: Thu Jun 28 11:39:06 2012 +0200
|
16
|
+
|
17
|
+
Release 1.0.1
|
18
|
+
|
19
|
+
commit 859b490a8ab34720e4395bec6f2f72cb5fab335f
|
20
|
+
Author: Paweł Wilk <siefca@gnu.org>
|
21
|
+
Date: Thu Jun 28 11:38:02 2012 +0200
|
22
|
+
|
23
|
+
Removed syck parser setting from Rakefile
|
24
|
+
|
25
|
+
commit b83271b8317b435db46b4f6622ecd6a796a451cc
|
26
|
+
Author: Paweł Wilk <siefca@gnu.org>
|
27
|
+
Date: Thu Jun 28 11:37:23 2012 +0200
|
28
|
+
|
29
|
+
Documentation updated
|
30
|
+
|
31
|
+
commit 1066e01a859c686c29966ebfe1c5d1b78038ba2d
|
32
|
+
Author: Paweł Wilk <siefca@gnu.org>
|
33
|
+
Date: Thu Jun 28 11:37:06 2012 +0200
|
34
|
+
|
35
|
+
ChangeLog and Manifest.txt updated
|
36
|
+
|
1
37
|
commit 4b39fb3796755869d6ea0321b7d9d55d62d91580
|
2
38
|
Author: Paweł Wilk <siefca@gnu.org>
|
3
39
|
Date: Thu Jun 28 02:00:46 2012 +0200
|
data/Gemfile
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
# -*- ruby -*-
|
2
|
+
|
3
|
+
# DO NOT EDIT THIS FILE. Instead, edit Rakefile, and run `rake bundler:gemfile`.
|
4
|
+
|
5
|
+
source :gemcutter
|
6
|
+
|
7
|
+
gem "railties", "~>3.0"
|
8
|
+
gem "activemodel", "~>3.0"
|
9
|
+
|
10
|
+
gem "hoe-yard", ">=0.1.2", :group => [:development, :test]
|
11
|
+
gem "rspec", ">=2.6.0", :group => [:development, :test]
|
12
|
+
gem "yard", ">=0.7.2", :group => [:development, :test]
|
13
|
+
gem "rdoc", ">=3.8.0", :group => [:development, :test]
|
14
|
+
gem "bundler", ">=1.0.10", :group => [:development, :test]
|
15
|
+
gem "hoe-bundler", ">=1.1.0", :group => [:development, :test]
|
16
|
+
gem "hoe-gemspec", ">=1.0.0", :group => [:development, :test]
|
17
|
+
gem "hoe", "~>2.16", :group => [:development, :test]
|
18
|
+
|
19
|
+
# vim: syntax=ruby
|
data/Gemfile.lock
ADDED
@@ -0,0 +1,82 @@
|
|
1
|
+
GEM
|
2
|
+
remote: http://rubygems.org/
|
3
|
+
specs:
|
4
|
+
actionpack (3.2.6)
|
5
|
+
activemodel (= 3.2.6)
|
6
|
+
activesupport (= 3.2.6)
|
7
|
+
builder (~> 3.0.0)
|
8
|
+
erubis (~> 2.7.0)
|
9
|
+
journey (~> 1.0.1)
|
10
|
+
rack (~> 1.4.0)
|
11
|
+
rack-cache (~> 1.2)
|
12
|
+
rack-test (~> 0.6.1)
|
13
|
+
sprockets (~> 2.1.3)
|
14
|
+
activemodel (3.2.6)
|
15
|
+
activesupport (= 3.2.6)
|
16
|
+
builder (~> 3.0.0)
|
17
|
+
activesupport (3.2.6)
|
18
|
+
i18n (~> 0.6)
|
19
|
+
multi_json (~> 1.0)
|
20
|
+
builder (3.0.0)
|
21
|
+
diff-lcs (1.1.3)
|
22
|
+
erubis (2.7.0)
|
23
|
+
hike (1.2.1)
|
24
|
+
hoe (2.16.1)
|
25
|
+
rake (~> 0.8)
|
26
|
+
hoe-bundler (1.1.0)
|
27
|
+
hoe (>= 2.2.0)
|
28
|
+
hoe-gemspec (1.0.0)
|
29
|
+
hoe (>= 2.2.0)
|
30
|
+
hoe-yard (0.1.2)
|
31
|
+
yard (>= 0.2.3.1)
|
32
|
+
i18n (0.6.0)
|
33
|
+
journey (1.0.4)
|
34
|
+
json (1.7.3)
|
35
|
+
multi_json (1.3.6)
|
36
|
+
rack (1.4.1)
|
37
|
+
rack-cache (1.2)
|
38
|
+
rack (>= 0.4)
|
39
|
+
rack-ssl (1.3.2)
|
40
|
+
rack
|
41
|
+
rack-test (0.6.1)
|
42
|
+
rack (>= 1.0)
|
43
|
+
railties (3.2.6)
|
44
|
+
actionpack (= 3.2.6)
|
45
|
+
activesupport (= 3.2.6)
|
46
|
+
rack-ssl (~> 1.3.2)
|
47
|
+
rake (>= 0.8.7)
|
48
|
+
rdoc (~> 3.4)
|
49
|
+
thor (>= 0.14.6, < 2.0)
|
50
|
+
rake (0.9.2.2)
|
51
|
+
rdoc (3.12)
|
52
|
+
json (~> 1.4)
|
53
|
+
rspec (2.10.0)
|
54
|
+
rspec-core (~> 2.10.0)
|
55
|
+
rspec-expectations (~> 2.10.0)
|
56
|
+
rspec-mocks (~> 2.10.0)
|
57
|
+
rspec-core (2.10.1)
|
58
|
+
rspec-expectations (2.10.0)
|
59
|
+
diff-lcs (~> 1.1.3)
|
60
|
+
rspec-mocks (2.10.1)
|
61
|
+
sprockets (2.1.3)
|
62
|
+
hike (~> 1.2)
|
63
|
+
rack (~> 1.0)
|
64
|
+
tilt (~> 1.1, != 1.3.0)
|
65
|
+
thor (0.15.3)
|
66
|
+
tilt (1.3.3)
|
67
|
+
yard (0.8.2.1)
|
68
|
+
|
69
|
+
PLATFORMS
|
70
|
+
ruby
|
71
|
+
|
72
|
+
DEPENDENCIES
|
73
|
+
activemodel (~> 3.0)
|
74
|
+
bundler (>= 1.0.10)
|
75
|
+
hoe (~> 2.16)
|
76
|
+
hoe-bundler (>= 1.1.0)
|
77
|
+
hoe-gemspec (>= 1.0.0)
|
78
|
+
hoe-yard (>= 0.1.2)
|
79
|
+
railties (~> 3.0)
|
80
|
+
rdoc (>= 3.8.0)
|
81
|
+
rspec (>= 2.6.0)
|
82
|
+
yard (>= 0.7.2)
|
data/README.rdoc
CHANGED
@@ -15,19 +15,117 @@ Attribute Filters adds couple of DSL keywords and some syntactic sugar
|
|
15
15
|
to Rails thereby allowing you to express filtering and groupping
|
16
16
|
model attributes in a concise and clean way.
|
17
17
|
|
18
|
-
==
|
18
|
+
== When?
|
19
|
+
|
20
|
+
If your Rails application often filters the attributes that has changed
|
21
|
+
recently and uses callbacks to achieve that, then you may consider
|
22
|
+
refining that process and write methods for handling common operations
|
23
|
+
not certain attributes. See what I mean below.
|
19
24
|
|
20
25
|
=== Before
|
21
26
|
|
27
|
+
class User < ActiveRecord::Base
|
28
|
+
|
29
|
+
before_validation :strip_and_downcase_username
|
30
|
+
before_validation :strip_and_downcase_email
|
31
|
+
before_validation :strip_and_capitalize_real_name
|
32
|
+
|
33
|
+
def strip_and_downcase_username
|
34
|
+
if username.present?
|
35
|
+
self.username = self.username.strip.mb_chars.downcase.to_s
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
def strip_and_downcase_email
|
40
|
+
if email.present?
|
41
|
+
self.email.strip!
|
42
|
+
self.email.downcase!
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
def strip_and_capitalize_real_name
|
47
|
+
if real_name.present?
|
48
|
+
self.real_name = self.real_name.strip.mb_chars.split(' ').
|
49
|
+
map { |n| n.capitalize }.join(' ')
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
54
|
+
|
55
|
+
(The more attributes there is the more messy it becomes and the filtering code is not reusable.)
|
22
56
|
|
23
57
|
=== After
|
24
58
|
|
59
|
+
class User < ActiveRecord::Base
|
60
|
+
|
61
|
+
attributes_that :should_be_downcased => [ :username, :email ]
|
62
|
+
attributes_that :should_be_stripped => [ :username, :email, :real_name ]
|
63
|
+
attributes_that :should_be_capitalized => [ :username, :email ]
|
64
|
+
|
65
|
+
before_validation :strip_names
|
66
|
+
before_validation :downcase_names
|
67
|
+
before_validation :capitalize_names
|
68
|
+
|
69
|
+
def downcase_names
|
70
|
+
filter_attributes_that(:should_be_downcased) do |atr|
|
71
|
+
atr.mb_chars.downcase.to_s
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
def capitalize_names
|
76
|
+
filter_attributes_that(:should_be_capitalized) do |atr|
|
77
|
+
atr.mb_chars.split(' ').map { |n| n.capitalize }.join(' ')
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
def strip_names
|
82
|
+
for_attributes_that(:should_be_stripped) { |atr| atr.strip! }
|
83
|
+
end
|
84
|
+
|
85
|
+
end
|
86
|
+
|
87
|
+
(Names of new attributes that have to be altered in the same way can just be added to sets
|
88
|
+
and you can use the same altering methods across all models if you wish to.)
|
89
|
+
|
90
|
+
== Usage
|
91
|
+
|
92
|
+
You can use it to do attribute filtering as presented above but you can also
|
93
|
+
try using ActiveModel::AttributeSet directly, which helps to express some logic.
|
94
|
+
For example:
|
95
|
+
|
96
|
+
class User < ActiveRecord::Base
|
97
|
+
|
98
|
+
attributes_that_are :required_to_trade => [ :username, :home_address, :bank_account ]
|
99
|
+
|
100
|
+
def can_trade?
|
101
|
+
are_attributes(:required_to_trade).all.present?
|
102
|
+
end
|
103
|
+
|
104
|
+
end
|
105
|
+
|
106
|
+
* See {USAGE}[http://rubydoc.info/gems/attribute-filters/file/docs/USAGE] for more examples and detailed information about the usage.
|
107
|
+
* See {whole documentation}[http://rubydoc.info/gems/attribute-filters/] to browse all documents.
|
25
108
|
|
109
|
+
== How it works?
|
26
110
|
|
27
|
-
|
111
|
+
It creates a new Active Model module called ActiveModel::AttributeFilters. That module
|
112
|
+
contains the needed DSL that goes into your models. It also creates ActiveModel::AttributeSet
|
113
|
+
class which is just a new kind of set, a structure for storing sets of attribute names.
|
28
114
|
|
29
|
-
|
30
|
-
|
115
|
+
Then it forces Rails to include the AttributeFilters in any model that
|
116
|
+
at any time will include ActiveModel::AttributeMethods. The last one is included
|
117
|
+
quite often; e.g. ActiveRecord and other popular ORM-s use it. (I'm calling it
|
118
|
+
"the accompanying module".)
|
119
|
+
|
120
|
+
That's why you can make use of attribute filters without explicitly including
|
121
|
+
the module, as long as your application relies on any popular ORM.
|
122
|
+
|
123
|
+
If something will go wrong however or your application is somehow unusual, you can always
|
124
|
+
include the AttributeFilters module manually in any of your models:
|
125
|
+
|
126
|
+
class ExampleModel
|
127
|
+
include ActiveModel::AttributeFilters
|
128
|
+
end
|
31
129
|
|
32
130
|
== Requirements
|
33
131
|
|
@@ -69,8 +167,9 @@ You can run RSpec examples both with
|
|
69
167
|
|
70
168
|
== Credits
|
71
169
|
|
72
|
-
{iConsulting}[http://www.iconsulting.pl/] supports Free Software and has
|
170
|
+
* {iConsulting}[http://www.iconsulting.pl/] supports Free Software and has
|
73
171
|
contributed to this library by paying for me to eat when I've been coding.
|
172
|
+
* MrZYX (Jonne Haß) contributed by giving me some hints and answering basic questions on IRC – THX!
|
74
173
|
|
75
174
|
== License
|
76
175
|
|
data/Rakefile
CHANGED
data/attribute-filters.gemspec
CHANGED
@@ -2,16 +2,16 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = "attribute-filters"
|
5
|
-
s.version = "1.0.
|
5
|
+
s.version = "1.0.1.20120628115122"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Pawe\u{142} Wilk"]
|
9
9
|
s.cert_chain = ["/Users/siefca/.gem/gem-public_cert.pem"]
|
10
|
-
s.date = "2012-06-
|
11
|
-
s.description = "
|
10
|
+
s.date = "2012-06-28"
|
11
|
+
s.description = "Concise way of filtering model attributes in Rails."
|
12
12
|
s.email = ["pw@gnu.org"]
|
13
13
|
s.extra_rdoc_files = ["Manifest.txt", "README.rdoc"]
|
14
|
-
s.files = [".rspec", ".yardopts", "ChangeLog", "LGPL-LICENSE", "Manifest.txt", "README.rdoc", "Rakefile", "attribute-filters.gemspec", "docs/COPYING", "docs/HISTORY", "docs/LEGAL", "docs/LGPL-LICENSE", "docs/TODO", "docs/rdoc.css", "init.rb", "lib/attribute-filters.rb", "lib/attribute-filters/attribute_set.rb", "lib/attribute-filters/attribute_set_query.rb", "lib/attribute-filters/common_filters.rb", "lib/attribute-filters/dsl_filters.rb", "lib/attribute-filters/dsl_sets.rb", "lib/attribute-filters/railtie.rb", "lib/attribute-filters/version.rb", "spec/attribute-filters_spec.rb", "spec/spec_helper.rb", ".gemtest"]
|
14
|
+
s.files = [".rspec", ".yardopts", "ChangeLog", "Gemfile", "Gemfile.lock", "LGPL-LICENSE", "Manifest.txt", "README.rdoc", "Rakefile", "attribute-filters.gemspec", "docs/COPYING", "docs/HISTORY", "docs/LEGAL", "docs/LGPL-LICENSE", "docs/TODO", "docs/rdoc.css", "init.rb", "lib/attribute-filters.rb", "lib/attribute-filters/attribute_set.rb", "lib/attribute-filters/attribute_set_query.rb", "lib/attribute-filters/common_filters.rb", "lib/attribute-filters/dsl_filters.rb", "lib/attribute-filters/dsl_sets.rb", "lib/attribute-filters/railtie.rb", "lib/attribute-filters/version.rb", "spec/attribute-filters_spec.rb", "spec/spec_helper.rb", ".gemtest"]
|
15
15
|
s.homepage = "https://rubygems.org/gems/attribute-filters/"
|
16
16
|
s.rdoc_options = ["--title", "Attribute::Filters Documentation", "--quiet"]
|
17
17
|
s.require_paths = ["lib"]
|
data/docs/TODO
CHANGED
@@ -12,7 +12,7 @@ module AttributeFilters
|
|
12
12
|
# @private
|
13
13
|
EMAIL = 'pw@gnu.org'
|
14
14
|
# @private
|
15
|
-
VERSION = '1.0.
|
15
|
+
VERSION = '1.0.1'
|
16
16
|
# @private
|
17
17
|
NAME = 'attribute-filters'
|
18
18
|
# @private
|
@@ -20,5 +20,5 @@ module AttributeFilters
|
|
20
20
|
# @private
|
21
21
|
URL = 'https://rubygems.org/gems/attribute-filters/'
|
22
22
|
# @private
|
23
|
-
DESCRIPTION = '
|
23
|
+
DESCRIPTION = 'Concise way of filtering model attributes in Rails.'
|
24
24
|
end
|
metadata
CHANGED
@@ -1,161 +1,179 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: attribute-filters
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.1
|
4
5
|
prerelease:
|
5
|
-
version: 1.0.0
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
8
|
-
-
|
7
|
+
authors:
|
8
|
+
- Paweł Wilk
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
|
-
cert_chain:
|
12
|
-
-
|
13
|
-
|
11
|
+
cert_chain:
|
12
|
+
- ! '-----BEGIN CERTIFICATE-----
|
13
|
+
|
14
14
|
MIIDKjCCAhKgAwIBAgIBADANBgkqhkiG9w0BAQUFADA7MQ8wDQYDVQQDDAZzaWVm
|
15
|
+
|
15
16
|
Y2ExEzARBgoJkiaJk/IsZAEZFgNnbnUxEzARBgoJkiaJk/IsZAEZFgNvcmcwHhcN
|
17
|
+
|
16
18
|
MDkwNjA2MDkwODA5WhcNMTAwNjA2MDkwODA5WjA7MQ8wDQYDVQQDDAZzaWVmY2Ex
|
19
|
+
|
17
20
|
EzARBgoJkiaJk/IsZAEZFgNnbnUxEzARBgoJkiaJk/IsZAEZFgNvcmcwggEiMA0G
|
21
|
+
|
18
22
|
CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCdk4+9ieSx2I2OPslPcj/LjajwtsrH
|
23
|
+
|
19
24
|
mev6Fs3xK9hdDIbbLuQM9AypBS7NeKP/2YToEOGxsvzcpFzL2Ah71cP6Yfn+Z2Yo
|
25
|
+
|
20
26
|
zvqpAx5/nl79PrJKvjlkdzVNOFBp/EOkLK67QK4Pv97ABnG2PkF4FokqOjuNHLM7
|
27
|
+
|
21
28
|
47OkJPvFyfHyMBDZN7EFljBBNm3IuQRTiO48e5Jcp3L761PWOvCpnV8wiga0Wwt3
|
29
|
+
|
22
30
|
98Gmy7c1nWzfbQc1wHwKLPICY/aidKU20KymSHG63BSW5pO2cXZecIeYjw5YNjGA
|
31
|
+
|
23
32
|
M1RZMiwT7QJ9W86VVP+8EqbJKJOS95xlmQTHjPK56yXv8GiuyLQHpPh5AgMBAAGj
|
33
|
+
|
24
34
|
OTA3MAkGA1UdEwQCMAAwHQYDVR0OBBYEFKOKspZONq4bt5D2DEexB+vsMB2GMAsG
|
35
|
+
|
25
36
|
A1UdDwQEAwIEsDANBgkqhkiG9w0BAQUFAAOCAQEAUh0LnB4o5XKpH3yOxavEyp9X
|
37
|
+
|
26
38
|
Nen2e854wsSjAr0waSVzEt3XxY1voyIE6WCGxZJU//40CR0Be7j5CcsJsDU2CZyZ
|
39
|
+
|
27
40
|
8SXN1/mZjMqWvYyEMSfQP4XzkFSOuyDcoDAf43OGhOhdv5Jcs/Et/FH6DgWYwRxq
|
41
|
+
|
28
42
|
RtATRWON5R99ugPeRb7i1nIpnzGEBA9V32r6r959Bp3XjkVEXylbItYMqSARaZlY
|
43
|
+
|
29
44
|
qzKSsIUjh7vDyTNqta0DjSgCk26dhnOwc0hmzhvVZtBwfZritSVhfCLp5uFwqCqY
|
45
|
+
|
30
46
|
NK3TIZaPCh1S2/ES6wXNvjQ+5EnEEL9j/pSEop9DYEBPaM2WDVR5i0jJTAaRWw==
|
47
|
+
|
31
48
|
-----END CERTIFICATE-----
|
32
49
|
|
33
|
-
|
34
|
-
|
35
|
-
|
50
|
+
'
|
51
|
+
date: 2012-06-28 00:00:00.000000000 Z
|
52
|
+
dependencies:
|
53
|
+
- !ruby/object:Gem::Dependency
|
36
54
|
name: railties
|
37
|
-
requirement: &
|
55
|
+
requirement: &2157259360 !ruby/object:Gem::Requirement
|
38
56
|
none: false
|
39
|
-
requirements:
|
57
|
+
requirements:
|
40
58
|
- - ~>
|
41
|
-
- !ruby/object:Gem::Version
|
42
|
-
version:
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '3.0'
|
43
61
|
type: :runtime
|
44
62
|
prerelease: false
|
45
|
-
version_requirements: *
|
46
|
-
- !ruby/object:Gem::Dependency
|
63
|
+
version_requirements: *2157259360
|
64
|
+
- !ruby/object:Gem::Dependency
|
47
65
|
name: activemodel
|
48
|
-
requirement: &
|
66
|
+
requirement: &2157258880 !ruby/object:Gem::Requirement
|
49
67
|
none: false
|
50
|
-
requirements:
|
68
|
+
requirements:
|
51
69
|
- - ~>
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version:
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: '3.0'
|
54
72
|
type: :runtime
|
55
73
|
prerelease: false
|
56
|
-
version_requirements: *
|
57
|
-
- !ruby/object:Gem::Dependency
|
74
|
+
version_requirements: *2157258880
|
75
|
+
- !ruby/object:Gem::Dependency
|
58
76
|
name: hoe-yard
|
59
|
-
requirement: &
|
77
|
+
requirement: &2157258440 !ruby/object:Gem::Requirement
|
60
78
|
none: false
|
61
|
-
requirements:
|
62
|
-
- -
|
63
|
-
- !ruby/object:Gem::Version
|
79
|
+
requirements:
|
80
|
+
- - ! '>='
|
81
|
+
- !ruby/object:Gem::Version
|
64
82
|
version: 0.1.2
|
65
83
|
type: :development
|
66
84
|
prerelease: false
|
67
|
-
version_requirements: *
|
68
|
-
- !ruby/object:Gem::Dependency
|
85
|
+
version_requirements: *2157258440
|
86
|
+
- !ruby/object:Gem::Dependency
|
69
87
|
name: rspec
|
70
|
-
requirement: &
|
88
|
+
requirement: &2157257920 !ruby/object:Gem::Requirement
|
71
89
|
none: false
|
72
|
-
requirements:
|
73
|
-
- -
|
74
|
-
- !ruby/object:Gem::Version
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
75
93
|
version: 2.6.0
|
76
94
|
type: :development
|
77
95
|
prerelease: false
|
78
|
-
version_requirements: *
|
79
|
-
- !ruby/object:Gem::Dependency
|
96
|
+
version_requirements: *2157257920
|
97
|
+
- !ruby/object:Gem::Dependency
|
80
98
|
name: yard
|
81
|
-
requirement: &
|
99
|
+
requirement: &2157257420 !ruby/object:Gem::Requirement
|
82
100
|
none: false
|
83
|
-
requirements:
|
84
|
-
- -
|
85
|
-
- !ruby/object:Gem::Version
|
101
|
+
requirements:
|
102
|
+
- - ! '>='
|
103
|
+
- !ruby/object:Gem::Version
|
86
104
|
version: 0.7.2
|
87
105
|
type: :development
|
88
106
|
prerelease: false
|
89
|
-
version_requirements: *
|
90
|
-
- !ruby/object:Gem::Dependency
|
107
|
+
version_requirements: *2157257420
|
108
|
+
- !ruby/object:Gem::Dependency
|
91
109
|
name: rdoc
|
92
|
-
requirement: &
|
110
|
+
requirement: &2157256960 !ruby/object:Gem::Requirement
|
93
111
|
none: false
|
94
|
-
requirements:
|
95
|
-
- -
|
96
|
-
- !ruby/object:Gem::Version
|
112
|
+
requirements:
|
113
|
+
- - ! '>='
|
114
|
+
- !ruby/object:Gem::Version
|
97
115
|
version: 3.8.0
|
98
116
|
type: :development
|
99
117
|
prerelease: false
|
100
|
-
version_requirements: *
|
101
|
-
- !ruby/object:Gem::Dependency
|
118
|
+
version_requirements: *2157256960
|
119
|
+
- !ruby/object:Gem::Dependency
|
102
120
|
name: bundler
|
103
|
-
requirement: &
|
121
|
+
requirement: &2157256520 !ruby/object:Gem::Requirement
|
104
122
|
none: false
|
105
|
-
requirements:
|
106
|
-
- -
|
107
|
-
- !ruby/object:Gem::Version
|
123
|
+
requirements:
|
124
|
+
- - ! '>='
|
125
|
+
- !ruby/object:Gem::Version
|
108
126
|
version: 1.0.10
|
109
127
|
type: :development
|
110
128
|
prerelease: false
|
111
|
-
version_requirements: *
|
112
|
-
- !ruby/object:Gem::Dependency
|
129
|
+
version_requirements: *2157256520
|
130
|
+
- !ruby/object:Gem::Dependency
|
113
131
|
name: hoe-bundler
|
114
|
-
requirement: &
|
132
|
+
requirement: &2157256060 !ruby/object:Gem::Requirement
|
115
133
|
none: false
|
116
|
-
requirements:
|
117
|
-
- -
|
118
|
-
- !ruby/object:Gem::Version
|
134
|
+
requirements:
|
135
|
+
- - ! '>='
|
136
|
+
- !ruby/object:Gem::Version
|
119
137
|
version: 1.1.0
|
120
138
|
type: :development
|
121
139
|
prerelease: false
|
122
|
-
version_requirements: *
|
123
|
-
- !ruby/object:Gem::Dependency
|
140
|
+
version_requirements: *2157256060
|
141
|
+
- !ruby/object:Gem::Dependency
|
124
142
|
name: hoe-gemspec
|
125
|
-
requirement: &
|
143
|
+
requirement: &2157255620 !ruby/object:Gem::Requirement
|
126
144
|
none: false
|
127
|
-
requirements:
|
128
|
-
- -
|
129
|
-
- !ruby/object:Gem::Version
|
145
|
+
requirements:
|
146
|
+
- - ! '>='
|
147
|
+
- !ruby/object:Gem::Version
|
130
148
|
version: 1.0.0
|
131
149
|
type: :development
|
132
150
|
prerelease: false
|
133
|
-
version_requirements: *
|
134
|
-
- !ruby/object:Gem::Dependency
|
151
|
+
version_requirements: *2157255620
|
152
|
+
- !ruby/object:Gem::Dependency
|
135
153
|
name: hoe
|
136
|
-
requirement: &
|
154
|
+
requirement: &2157255160 !ruby/object:Gem::Requirement
|
137
155
|
none: false
|
138
|
-
requirements:
|
156
|
+
requirements:
|
139
157
|
- - ~>
|
140
|
-
- !ruby/object:Gem::Version
|
141
|
-
version:
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '2.16'
|
142
160
|
type: :development
|
143
161
|
prerelease: false
|
144
|
-
version_requirements: *
|
145
|
-
description:
|
146
|
-
email:
|
162
|
+
version_requirements: *2157255160
|
163
|
+
description: Concise way of filtering model attributes in Rails.
|
164
|
+
email:
|
147
165
|
- pw@gnu.org
|
148
166
|
executables: []
|
149
|
-
|
150
167
|
extensions: []
|
151
|
-
|
152
|
-
extra_rdoc_files:
|
168
|
+
extra_rdoc_files:
|
153
169
|
- Manifest.txt
|
154
170
|
- README.rdoc
|
155
|
-
files:
|
171
|
+
files:
|
156
172
|
- .rspec
|
157
173
|
- .yardopts
|
158
174
|
- ChangeLog
|
175
|
+
- Gemfile
|
176
|
+
- Gemfile.lock
|
159
177
|
- LGPL-LICENSE
|
160
178
|
- Manifest.txt
|
161
179
|
- README.rdoc
|
@@ -181,35 +199,32 @@ files:
|
|
181
199
|
- .gemtest
|
182
200
|
homepage: https://rubygems.org/gems/attribute-filters/
|
183
201
|
licenses: []
|
184
|
-
|
185
202
|
post_install_message:
|
186
|
-
rdoc_options:
|
203
|
+
rdoc_options:
|
187
204
|
- --title
|
188
205
|
- Attribute::Filters Documentation
|
189
206
|
- --quiet
|
190
|
-
require_paths:
|
207
|
+
require_paths:
|
191
208
|
- lib
|
192
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
209
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
193
210
|
none: false
|
194
|
-
requirements:
|
195
|
-
- -
|
196
|
-
- !ruby/object:Gem::Version
|
197
|
-
|
198
|
-
segments:
|
211
|
+
requirements:
|
212
|
+
- - ! '>='
|
213
|
+
- !ruby/object:Gem::Version
|
214
|
+
version: '0'
|
215
|
+
segments:
|
199
216
|
- 0
|
200
|
-
|
201
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
217
|
+
hash: 1917410771860677924
|
218
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
202
219
|
none: false
|
203
|
-
requirements:
|
204
|
-
- -
|
205
|
-
- !ruby/object:Gem::Version
|
206
|
-
version:
|
220
|
+
requirements:
|
221
|
+
- - ! '>='
|
222
|
+
- !ruby/object:Gem::Version
|
223
|
+
version: '0'
|
207
224
|
requirements: []
|
208
|
-
|
209
225
|
rubyforge_project: attribute-filters
|
210
226
|
rubygems_version: 1.8.11
|
211
227
|
signing_key:
|
212
228
|
specification_version: 3
|
213
229
|
summary: Concise way of filtering model attributes in Rails
|
214
230
|
test_files: []
|
215
|
-
|
metadata.gz.sig
CHANGED
Binary file
|