acts_as_textcaptcha 3.0.10 → 3.0.11

Sign up to get free protection for your applications and to get access to all the features.
@@ -68,6 +68,8 @@ module ActsAsTextcaptcha
68
68
 
69
69
  # generate textcaptcha question and encrypt possible spam_answers
70
70
  def textcaptcha
71
+ show_deprecation_warning
72
+
71
73
  return if !perform_textcaptcha? || validate_spam_answer
72
74
  self.spam_answer = nil
73
75
 
@@ -111,6 +113,15 @@ module ActsAsTextcaptcha
111
113
 
112
114
  private
113
115
 
116
+ def show_deprecation_warning
117
+ warning_message = "
118
+ [warning] ** ActsAsTextcaptcha - gem versions prior to v4.0.0 are VUNERABLE TO SPAM CHECK BY-PASSING, please upgrade gem to v4.0.0 (or higher) **
119
+ [warning] ** ActsAsTextcaptcha - see here for details: https://github.com/matthutchinson/acts_as_textcaptcha/issues/15 **\n"
120
+ Rails.logger.warn warning_message
121
+ rescue
122
+ puts warning_message
123
+ end
124
+
114
125
  def parse_textcaptcha_xml(xml)
115
126
  if defined?(ActiveSupport::XmlMini)
116
127
  parsed_xml = ActiveSupport::XmlMini.parse(xml)['captcha']
@@ -1,3 +1,3 @@
1
1
  module ActsAsTextcaptcha
2
- VERSION = "3.0.10"
2
+ VERSION = "3.0.11"
3
3
  end
metadata CHANGED
@@ -1,155 +1,165 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: acts_as_textcaptcha
3
- version: !ruby/object:Gem::Version
4
- version: 3.0.10
3
+ version: !ruby/object:Gem::Version
4
+ hash: 17
5
+ prerelease:
6
+ segments:
7
+ - 3
8
+ - 0
9
+ - 11
10
+ version: 3.0.11
5
11
  platform: ruby
6
- authors:
12
+ authors:
7
13
  - Matthew Hutchinson
8
14
  autorequire:
9
15
  bindir: bin
10
- cert_chain:
16
+ cert_chain:
11
17
  - gem-public_cert.pem
12
- date: 2013-06-16 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
18
+ date: 2014-01-02 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
15
21
  name: bcrypt-ruby
16
- requirement: !ruby/object:Gem::Requirement
17
- requirements:
22
+ version_requirements: &id001 !ruby/object:Gem::Requirement
23
+ none: false
24
+ requirements:
18
25
  - - ~>
19
- - !ruby/object:Gem::Version
26
+ - !ruby/object:Gem::Version
27
+ hash: 5
28
+ segments:
29
+ - 3
30
+ - 0
31
+ - 1
20
32
  version: 3.0.1
21
- type: :runtime
22
33
  prerelease: false
23
- version_requirements: !ruby/object:Gem::Requirement
24
- requirements:
25
- - - ~>
26
- - !ruby/object:Gem::Version
27
- version: 3.0.1
28
- - !ruby/object:Gem::Dependency
34
+ type: :runtime
35
+ requirement: *id001
36
+ - !ruby/object:Gem::Dependency
29
37
  name: rails
30
- requirement: !ruby/object:Gem::Requirement
31
- requirements:
32
- - - '>='
33
- - !ruby/object:Gem::Version
34
- version: '0'
35
- type: :development
38
+ version_requirements: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ hash: 3
44
+ segments:
45
+ - 0
46
+ version: "0"
36
47
  prerelease: false
37
- version_requirements: !ruby/object:Gem::Requirement
38
- requirements:
39
- - - '>='
40
- - !ruby/object:Gem::Version
41
- version: '0'
42
- - !ruby/object:Gem::Dependency
43
- name: bundler
44
- requirement: !ruby/object:Gem::Requirement
45
- requirements:
46
- - - '>='
47
- - !ruby/object:Gem::Version
48
- version: '0'
49
48
  type: :development
49
+ requirement: *id002
50
+ - !ruby/object:Gem::Dependency
51
+ name: bundler
52
+ version_requirements: &id003 !ruby/object:Gem::Requirement
53
+ none: false
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ hash: 3
58
+ segments:
59
+ - 0
60
+ version: "0"
50
61
  prerelease: false
51
- version_requirements: !ruby/object:Gem::Requirement
52
- requirements:
53
- - - '>='
54
- - !ruby/object:Gem::Version
55
- version: '0'
56
- - !ruby/object:Gem::Dependency
57
- name: minitest
58
- requirement: !ruby/object:Gem::Requirement
59
- requirements:
60
- - - '>='
61
- - !ruby/object:Gem::Version
62
- version: '0'
63
62
  type: :development
63
+ requirement: *id003
64
+ - !ruby/object:Gem::Dependency
65
+ name: minitest
66
+ version_requirements: &id004 !ruby/object:Gem::Requirement
67
+ none: false
68
+ requirements:
69
+ - - ">="
70
+ - !ruby/object:Gem::Version
71
+ hash: 3
72
+ segments:
73
+ - 0
74
+ version: "0"
64
75
  prerelease: false
65
- version_requirements: !ruby/object:Gem::Requirement
66
- requirements:
67
- - - '>='
68
- - !ruby/object:Gem::Version
69
- version: '0'
70
- - !ruby/object:Gem::Dependency
71
- name: simplecov
72
- requirement: !ruby/object:Gem::Requirement
73
- requirements:
74
- - - '>='
75
- - !ruby/object:Gem::Version
76
- version: '0'
77
76
  type: :development
77
+ requirement: *id004
78
+ - !ruby/object:Gem::Dependency
79
+ name: simplecov
80
+ version_requirements: &id005 !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ hash: 3
86
+ segments:
87
+ - 0
88
+ version: "0"
78
89
  prerelease: false
79
- version_requirements: !ruby/object:Gem::Requirement
80
- requirements:
81
- - - '>='
82
- - !ruby/object:Gem::Version
83
- version: '0'
84
- - !ruby/object:Gem::Dependency
85
- name: rdoc
86
- requirement: !ruby/object:Gem::Requirement
87
- requirements:
88
- - - '>='
89
- - !ruby/object:Gem::Version
90
- version: '0'
91
90
  type: :development
91
+ requirement: *id005
92
+ - !ruby/object:Gem::Dependency
93
+ name: rdoc
94
+ version_requirements: &id006 !ruby/object:Gem::Requirement
95
+ none: false
96
+ requirements:
97
+ - - ">="
98
+ - !ruby/object:Gem::Version
99
+ hash: 3
100
+ segments:
101
+ - 0
102
+ version: "0"
92
103
  prerelease: false
93
- version_requirements: !ruby/object:Gem::Requirement
94
- requirements:
95
- - - '>='
96
- - !ruby/object:Gem::Version
97
- version: '0'
98
- - !ruby/object:Gem::Dependency
99
- name: sqlite3
100
- requirement: !ruby/object:Gem::Requirement
101
- requirements:
102
- - - '>='
103
- - !ruby/object:Gem::Version
104
- version: '0'
105
104
  type: :development
105
+ requirement: *id006
106
+ - !ruby/object:Gem::Dependency
107
+ name: sqlite3
108
+ version_requirements: &id007 !ruby/object:Gem::Requirement
109
+ none: false
110
+ requirements:
111
+ - - ">="
112
+ - !ruby/object:Gem::Version
113
+ hash: 3
114
+ segments:
115
+ - 0
116
+ version: "0"
106
117
  prerelease: false
107
- version_requirements: !ruby/object:Gem::Requirement
108
- requirements:
109
- - - '>='
110
- - !ruby/object:Gem::Version
111
- version: '0'
112
- - !ruby/object:Gem::Dependency
113
- name: fakeweb
114
- requirement: !ruby/object:Gem::Requirement
115
- requirements:
116
- - - '>='
117
- - !ruby/object:Gem::Version
118
- version: '0'
119
118
  type: :development
119
+ requirement: *id007
120
+ - !ruby/object:Gem::Dependency
121
+ name: fakeweb
122
+ version_requirements: &id008 !ruby/object:Gem::Requirement
123
+ none: false
124
+ requirements:
125
+ - - ">="
126
+ - !ruby/object:Gem::Version
127
+ hash: 3
128
+ segments:
129
+ - 0
130
+ version: "0"
120
131
  prerelease: false
121
- version_requirements: !ruby/object:Gem::Requirement
122
- requirements:
123
- - - '>='
124
- - !ruby/object:Gem::Version
125
- version: '0'
126
- - !ruby/object:Gem::Dependency
127
- name: strong_parameters
128
- requirement: !ruby/object:Gem::Requirement
129
- requirements:
130
- - - '>='
131
- - !ruby/object:Gem::Version
132
- version: '0'
133
132
  type: :development
133
+ requirement: *id008
134
+ - !ruby/object:Gem::Dependency
135
+ name: strong_parameters
136
+ version_requirements: &id009 !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ">="
140
+ - !ruby/object:Gem::Version
141
+ hash: 3
142
+ segments:
143
+ - 0
144
+ version: "0"
134
145
  prerelease: false
135
- version_requirements: !ruby/object:Gem::Requirement
136
- requirements:
137
- - - '>='
138
- - !ruby/object:Gem::Version
139
- version: '0'
146
+ type: :development
147
+ requirement: *id009
140
148
  description: |-
141
149
  Simple question/answer based spam protection for your Rails models.
142
150
  You can define your own logic questions and/or fetch questions from the textcaptcha.com API.
143
151
  The questions involve human logic and are tough for spam bots to crack.
144
152
  For more reasons on why logic questions are a good idea visit; http://textcaptcha.com/why
145
- email:
153
+ email:
146
154
  - matt@hiddenloop.com
147
155
  executables: []
156
+
148
157
  extensions: []
149
- extra_rdoc_files:
158
+
159
+ extra_rdoc_files:
150
160
  - README.rdoc
151
161
  - LICENSE
152
- files:
162
+ files:
153
163
  - .gitignore
154
164
  - .travis.yml
155
165
  - Gemfile
@@ -174,26 +184,36 @@ files:
174
184
  - test/textcaptcha_test.rb
175
185
  homepage: http://github.com/matthutchinson/acts_as_textcaptcha
176
186
  licenses: []
177
- metadata: {}
187
+
178
188
  post_install_message:
179
189
  rdoc_options: []
180
- require_paths:
190
+
191
+ require_paths:
181
192
  - lib
182
- required_ruby_version: !ruby/object:Gem::Requirement
183
- requirements:
184
- - - '>='
185
- - !ruby/object:Gem::Version
186
- version: '0'
187
- required_rubygems_version: !ruby/object:Gem::Requirement
188
- requirements:
189
- - - '>='
190
- - !ruby/object:Gem::Version
191
- version: '0'
193
+ required_ruby_version: !ruby/object:Gem::Requirement
194
+ none: false
195
+ requirements:
196
+ - - ">="
197
+ - !ruby/object:Gem::Version
198
+ hash: 3
199
+ segments:
200
+ - 0
201
+ version: "0"
202
+ required_rubygems_version: !ruby/object:Gem::Requirement
203
+ none: false
204
+ requirements:
205
+ - - ">="
206
+ - !ruby/object:Gem::Version
207
+ hash: 3
208
+ segments:
209
+ - 0
210
+ version: "0"
192
211
  requirements: []
212
+
193
213
  rubyforge_project:
194
- rubygems_version: 2.0.2
214
+ rubygems_version: 1.8.25
195
215
  signing_key:
196
- specification_version: 4
197
- summary: Spam protection for your models via logic questions and the textcaptcha.com
198
- API
216
+ specification_version: 3
217
+ summary: Spam protection for your models via logic questions and the textcaptcha.com API
199
218
  test_files: []
219
+
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 783766a84298a42798484b852040de382abf0ce7
4
- data.tar.gz: ec36af87548e5d751996554bfe1ecee970eb29b9
5
- SHA512:
6
- metadata.gz: f2cef4801d4731d812dac442cdef0c5a66f2a3bc23267fe253594a8e1e6533882c44cd9c50c33714bde373f697330068a7dee2edd217293eb054b99fa0905ed3
7
- data.tar.gz: 454ec050f2eb969c93e76c0bd8a692ac5d8434a88b271d10f9d54c7581105b5955a3db6aa3be41dce4c2721ad068df53217833e9bd19d526a82d7a8f52e52299