recaptcha-mailhide 0.1.1 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 4c98860c5c0ad248c68ae498d7d4d23b0fa65fc4
4
+ data.tar.gz: 096afdf3b50cef502af4dc9d33a168ce1bde4118
5
+ SHA512:
6
+ metadata.gz: 696b149f31ca6022ceabe2c2f63316e5bba031be02a075b4bc9d844507695178f04e530e559d734bfa46c3653f969490f0e57149dc2ab03a9f6ca674306d7f6b
7
+ data.tar.gz: 56944e0c7996ec8cafa0c83eafd62b97fea0643d254a86ff037bae88d01c6d42eb07f3ae52893132a242f6bba2f2c41e89ff98c1ec6ac121e92005f1473b773c
@@ -0,0 +1,38 @@
1
+ Gemfile.lock
2
+
3
+ # rcov generated
4
+ coverage
5
+
6
+ # rdoc generated
7
+ rdoc
8
+
9
+ # yard generated
10
+ doc
11
+ .yardoc
12
+
13
+ # bundler
14
+ .bundle
15
+
16
+ # Have editor/IDE/OS specific files you need to ignore? Consider using a global gitignore:
17
+ #
18
+ # * Create a file at ~/.gitignore
19
+ # * Include files you want ignored
20
+ # * Run: git config --global core.excludesfile ~/.gitignore
21
+ #
22
+ # After doing this, these files will be ignored in all your git projects,
23
+ # saving you from having to 'pollute' every project you touch with them
24
+ #
25
+ # Not sure what to needs to be ignored for particular editors/OSes? Here's some ideas to get you started. (Remember, remove the leading # of the line)
26
+ #
27
+ # For MacOS:
28
+ #
29
+ .DS_Store
30
+
31
+ # For vim:
32
+ *.swp
33
+
34
+ # For redcar:
35
+ .redcar
36
+
37
+ # For rubinius:
38
+ *.rbc
@@ -0,0 +1,10 @@
1
+ == 1.0.0
2
+
3
+ * Added Rails view helpers
4
+ * Made generated URLs use HTTPS
5
+ * Removed Jeweler dependency
6
+ * General cleanup
7
+
8
+ == 0.1.1
9
+
10
+ * First release
data/Gemfile CHANGED
@@ -1,7 +1,3 @@
1
- source :rubygems
1
+ source 'https://rubygems.org'
2
2
 
3
- group :development do
4
- gem "rspec", "~> 2.9.0"
5
- gem "bundler", "~> 1.0"
6
- gem "jeweler", "~> 1.8.3"
7
- end
3
+ gemspec
@@ -1,34 +1,68 @@
1
1
  = ReCAPTCHA Mailhide
2
2
 
3
- This gem provides support for ReCAPTCHA's Mailhide API.
4
-
5
- At the moment it only generates URLs, it doesn't provide any link helpers, so it's completely framework agnostic (and a bit on the lower side of features).
3
+ This gem provides Ruby (and Rails) support for ReCAPTCHA's Mailhide API.
6
4
 
7
5
  == Installation
8
6
 
9
- Simply run:
10
-
11
- gem install recaptcha-mailhide
7
+ Add this to your Gemfile:
12
8
 
13
- Or if you're using bundler:
14
-
15
- gem 'recaptcha-mailhide'
9
+ gem 'recaptcha-mailhide'
16
10
 
17
11
  == Configuration
18
12
 
19
- Easy:
13
+ Add this somewhere (if you're using Rails put it in
14
+ config/initializers/recaptcha_mailhide.rb):
15
+
16
+ RecaptchaMailhide.configure do |c|
17
+ c.private_key = '...'
18
+ c.public_key = '...'
19
+ end
20
20
 
21
- RecaptchaMailhide.configure do |c|
22
- c.private_key = 'your private key here'
23
- c.public_key = 'your public key here'
24
- end
21
+ If you need a set of public/private keys get them from
22
+ https://www.google.com/recaptcha/mailhide/apikey
25
23
 
26
24
  == Usage
27
25
 
28
- Call <tt>RecaptchaMailhide::URL.url_for(email)</tt> to get the ReCAPTCHA Mailhide URL.
26
+ === In Rails views
27
+
28
+ recaptcha_mailhide('foo@example.com')
29
+
30
+ You can also provide content as a method argument or a block (just like with
31
+ <code>link_to</code>):
32
+
33
+ # Content in argument
34
+ recaptcha_mailhide('Click to view email', 'foo@example.com')
35
+
36
+ recaptcha_mailhide('foo@example.com') do
37
+ # Content here
38
+ end
39
+
40
+ You can also provide options (they get forwarded to <code>link_to</code>):
41
+
42
+ recaptcha_mailhide('foo@example.com', class: 'hidden-email', target: '_blank')
43
+
44
+ In addition it accepts a <code>:popup</code> option that will make the link
45
+ open in a popup window (requires JavaScript):
46
+
47
+ recaptcha_mailhide('foo@example.com', popup: true)
48
+
49
+ # Configuring popup window size
50
+ recaptcha_mailhide('foo@example.com', popup: { width: 600, height: 600 })
51
+
52
+ === Pure Ruby
53
+
54
+ Use the following to get just the ReCAPTCHA Mailhide URL (without a link tag):
55
+
56
+ RecaptchaMailhide.url_for(email)
57
+
58
+ == TODO
59
+
60
+ * Tests for Rails helpers
61
+ * Basic helpers (non-dependent on Rails)
62
+ * Rails generator for initializer with auto-fetching of private/public keys
29
63
 
30
- At the moment this gem doesn't provide any helpers to build HTML link tags.
64
+ == Copyright
31
65
 
32
- == License
66
+ This gem is Copyright (c) 2012 Pedro Fayolle. See LICENSE.txt for further details.
33
67
 
34
- MIT License. Copyright (c) 2012 Pedro Fayolle.
68
+ ReCAPTCHA Mailhide is Copyright (c) Google, Inc. This is gem is NOT affiliated with Google, Inc.
data/Rakefile CHANGED
@@ -1,50 +1,18 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems'
4
- require 'bundler'
5
1
  begin
6
- Bundler.setup(:default, :development)
7
- rescue Bundler::BundlerError => e
8
- $stderr.puts e.message
9
- $stderr.puts "Run `bundle install` to install missing gems"
10
- exit e.status_code
11
- end
12
- require 'rake'
13
-
14
- require 'jeweler'
15
- Jeweler::Tasks.new do |gem|
16
- # gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
17
- gem.name = "recaptcha-mailhide"
18
- gem.homepage = "http://github.com/pilaf/recaptcha-mailhide"
19
- gem.license = "MIT"
20
- gem.summary = %Q{ReCAPTCHA Mailhide for Ruby}
21
- gem.description = %Q{Ruby implementation of ReCAPTCHA Mailhide's API}
22
- gem.email = "pfayolle@gmail.com"
23
- gem.authors = ["Pedro Fayolle"]
24
- gem.files.include Dir["lib/**/*.rb"]
25
- # dependencies defined in Gemfile
26
- end
27
- Jeweler::RubygemsDotOrgTasks.new
28
-
29
- require 'rspec/core'
30
- require 'rspec/core/rake_task'
31
- RSpec::Core::RakeTask.new(:spec) do |spec|
32
- spec.pattern = FileList['spec/**/*_spec.rb']
2
+ require 'bundler/setup'
3
+ rescue LoadError
4
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
33
5
  end
34
6
 
35
- RSpec::Core::RakeTask.new(:rcov) do |spec|
36
- spec.pattern = 'spec/**/*_spec.rb'
37
- spec.rcov = true
38
- end
39
-
40
- task :default => :spec
41
-
42
7
  require 'rdoc/task'
43
- Rake::RDocTask.new do |rdoc|
44
- version = File.exist?('VERSION') ? File.read('VERSION') : ""
45
8
 
9
+ RDoc::Task.new(:rdoc) do |rdoc|
10
+ require 'recaptcha_mailhide/version'
46
11
  rdoc.rdoc_dir = 'rdoc'
47
- rdoc.title = "recaptcha-mailhide #{version}"
48
- rdoc.rdoc_files.include('README*')
12
+ rdoc.title = "recaptcha-mailhide #{RecaptchaMailhide::VERSION}"
13
+ rdoc.options << '--line-numbers'
14
+ rdoc.rdoc_files.include('README.rdoc')
49
15
  rdoc.rdoc_files.include('lib/**/*.rb')
50
16
  end
17
+
18
+ Bundler::GemHelper.install_tasks
@@ -2,6 +2,8 @@ require 'recaptcha_mailhide/configuration'
2
2
  require 'recaptcha_mailhide/encrypt'
3
3
  require 'recaptcha_mailhide/url'
4
4
 
5
+ require 'recaptcha_mailhide/railtie' if defined?(Rails)
6
+
5
7
  module RecaptchaMailhide
6
8
  def self.configuration
7
9
  @configuration ||= Configuration.new
@@ -10,4 +12,8 @@ module RecaptchaMailhide
10
12
  def self.configure
11
13
  yield configuration
12
14
  end
15
+
16
+ def self.url_for(email_address)
17
+ URL.url_for(email_address)
18
+ end
13
19
  end
@@ -1,5 +1,15 @@
1
1
  module RecaptchaMailhide
2
2
  class Configuration
3
- attr_accessor :private_key, :public_key
3
+ attr_writer :private_key, :public_key
4
+
5
+ def private_key
6
+ raise "RecaptchaMailhide's private_key is not set. If you're using Rails add an initializer to config/initializers." unless @private_key
7
+ @private_key
8
+ end
9
+
10
+ def public_key
11
+ raise "RecaptchaMailhide's public_key is not set. If you're using Rails add an initializer to config/initializers." unless @public_key
12
+ @public_key
13
+ end
4
14
  end
5
15
  end
@@ -14,7 +14,7 @@ module RecaptchaMailhide
14
14
  urlsafe_base64(aes.update(pad_string(string)) + aes.final)
15
15
  end
16
16
 
17
- private
17
+ private
18
18
 
19
19
  # Converts the given string to Base64 encoding,
20
20
  # replacing '+' with '-', '/' with '_' and
@@ -0,0 +1,96 @@
1
+ module RecaptchaMailhide
2
+ module ActionViewHelper
3
+ # Generates a link tag to a ReCAPTCHA Mailhide URL for the given email
4
+ # address.
5
+ #
6
+ # If a block is given it will use it to generate the content, and takes
7
+ # these attributes:
8
+ #
9
+ # * +email+ - The email address to hide
10
+ # * +options+ - See options below
11
+ #
12
+ # When no block is given it accepts two forms:
13
+ #
14
+ # # Just email
15
+ # recaptcha_mailhide(email, options = {})
16
+ #
17
+ # # Email and content
18
+ # recaptcha_mailhide(content, email, options = {})
19
+ #
20
+ # In the first instance it will process the email with
21
+ # <code>truncate_email</code> and use it as the link content.
22
+ #
23
+ # ==== Options
24
+ #
25
+ # Accepts every option supported by <code>link_to</code>, plus:
26
+ #
27
+ # [:popup]
28
+ #
29
+ # Set it to <code>true</code> to have the link open a popup window
30
+ # (through JavaScript and the <code>onclick</code> event).
31
+ #
32
+ # Can also be a hash of sub-options, which can be <code>:width</code> and
33
+ # <code>:height</code>, setting the size of the popup window.
34
+ #
35
+ # In case of not supplying your own content you can also pass options for
36
+ # <code>truncate_email</code>, e.g.:
37
+ #
38
+ # recaptcha_mailhide('foo@example.com', omission: '-', truncate_domain: true)
39
+ #
40
+ def recaptcha_mailhide(*args, &block)
41
+ options = args.extract_options!
42
+ raise ArgumentError, "at least one argument is required (not counting options)" if args.empty?
43
+
44
+ if block_given?
45
+ url = RecaptchaMailhide.url_for(args.first)
46
+ link_to(url, recaptcha_mailhide_options(url, options), &block)
47
+ else
48
+ if args.length == 1
49
+ content = truncate_email(args.first, options)
50
+ url = RecaptchaMailhide.url_for(args.first)
51
+ else
52
+ content = args.first
53
+ url = RecaptchaMailhide.url_for(args.second)
54
+ end
55
+ link_to(content, url, recaptcha_mailhide_options(url, options))
56
+ end
57
+ end
58
+
59
+ # Truncates an email address, e.g.:
60
+ #
61
+ # truncate_email('example@example.com') # => e…@example.com
62
+ # truncate_email('example@example.com', truncate_domain: true) # => e…@e…
63
+ #
64
+ # ==== Options
65
+ #
66
+ # [:omission]
67
+ #
68
+ # The string to use in replacement of the removed characters.
69
+ #
70
+ # [:truncate_domain]
71
+ #
72
+ # Boolean. Whether to truncate the domain part of the address as well.
73
+ #
74
+ def truncate_email(email, options = {})
75
+ return "" unless email.match(/@/)
76
+ split_email = email.split('@')
77
+ omission = options[:omission] || "…"
78
+ local_part = "#{split_email.first.first}#{omission}"
79
+ domain = options[:truncate_domain] ? "#{split_email.last.first}#{omission}" : split_email.last
80
+ "#{local_part}@#{domain}"
81
+ end
82
+
83
+ private
84
+
85
+ def recaptcha_mailhide_options(url, options)
86
+ options.dup.tap do |o|
87
+ if o[:popup]
88
+ popup = o.delete(:popup)
89
+ popup = popup.is_a?(Hash) ? popup.dup : {}
90
+ popup.reverse_merge!(width: 500, height: 300)
91
+ o[:onclick] = "window.open('#{url}', '', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=#{popup[:width]},height=#{popup[:height]}'); return false;"
92
+ end
93
+ end
94
+ end
95
+ end
96
+ end
@@ -0,0 +1,9 @@
1
+ require 'recaptcha_mailhide/helpers/action_view_helper'
2
+
3
+ module RecaptchaMailhide
4
+ class Railtie < ::Rails::Railtie # :nodoc:
5
+ initializer 'recaptcha-mailhide' do
6
+ ::ActionView::Base.send :include, RecaptchaMailhide::ActionViewHelper
7
+ end
8
+ end
9
+ end
@@ -1,11 +1,11 @@
1
1
  module RecaptchaMailhide
2
2
  module URL
3
- BASE_URL = "http://www.google.com/recaptcha/mailhide/d"
3
+ BASE_URL = "https://www.google.com/recaptcha/mailhide/d"
4
4
 
5
- def self.url_for(email)
5
+ def self.url_for(email_address)
6
6
  public_key = RecaptchaMailhide.configuration.public_key
7
- encrypted_email = RecaptchaMailhide::Encrypt.encrypt(email)
8
- BASE_URL + "?k=#{public_key}&c=#{encrypted_email}"
7
+ encrypted_address = Encrypt.encrypt(email_address)
8
+ BASE_URL + "?k=#{public_key}&c=#{encrypted_address}"
9
9
  end
10
10
  end
11
11
  end
@@ -0,0 +1,3 @@
1
+ module RecaptchaMailhide
2
+ VERSION = '1.0.0'
3
+ end
@@ -1,62 +1,25 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
- # -*- encoding: utf-8 -*-
1
+ $:.push File.expand_path("../lib", __FILE__)
5
2
 
6
- Gem::Specification.new do |s|
7
- s.name = "recaptcha-mailhide"
8
- s.version = "0.1.1"
3
+ # Maintain your gem's version:
4
+ require "recaptcha_mailhide/version"
9
5
 
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Pedro Fayolle"]
12
- s.date = "2012-04-18"
13
- s.description = "Ruby implementation of ReCAPTCHA Mailhide's API"
14
- s.email = "pfayolle@gmail.com"
15
- s.extra_rdoc_files = [
16
- "LICENSE.txt",
17
- "README.rdoc"
18
- ]
19
- s.files = [
20
- ".document",
21
- ".rspec",
22
- "Gemfile",
23
- "Gemfile.lock",
24
- "LICENSE.txt",
25
- "README.rdoc",
26
- "Rakefile",
27
- "VERSION",
28
- "lib/recaptcha-mailhide.rb",
29
- "lib/recaptcha_mailhide.rb",
30
- "lib/recaptcha_mailhide/configuration.rb",
31
- "lib/recaptcha_mailhide/encrypt.rb",
32
- "lib/recaptcha_mailhide/url.rb",
33
- "recaptcha-mailhide.gemspec",
34
- "spec/recaptcha_mailhide/encrypt_spec.rb",
35
- "spec/recaptcha_mailhide/url_spec.rb",
36
- "spec/spec_helper.rb"
37
- ]
38
- s.homepage = "http://github.com/pilaf/recaptcha-mailhide"
39
- s.licenses = ["MIT"]
40
- s.require_paths = ["lib"]
41
- s.rubygems_version = "1.8.10"
42
- s.summary = "ReCAPTCHA Mailhide for Ruby"
6
+ # Describe your gem and declare its dependencies:
7
+ Gem::Specification.new do |s|
8
+ s.name = "recaptcha-mailhide"
9
+ s.version = RecaptchaMailhide::VERSION
10
+ s.platform = Gem::Platform::RUBY
11
+ s.authors = ["Pedro Fayolle"]
12
+ s.email = ["pfayolle@gmail.com"]
13
+ s.homepage = "http://github.com/pilaf/recaptcha-mailhide"
14
+ s.summary = "ReCAPTCHA Mailhide client"
15
+ s.description = "Implementation of Google's ReCAPTCHA Mailhide API"
16
+ s.license = "MIT"
43
17
 
44
- if s.respond_to? :specification_version then
45
- s.specification_version = 3
18
+ s.files = `git ls-files`.split("\n")
19
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
20
+ s.extra_rdoc_files = ['README.rdoc']
21
+ s.require_paths = ['lib']
46
22
 
47
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
48
- s.add_development_dependency(%q<rspec>, ["~> 2.9.0"])
49
- s.add_development_dependency(%q<bundler>, ["~> 1.0"])
50
- s.add_development_dependency(%q<jeweler>, ["~> 1.8.3"])
51
- else
52
- s.add_dependency(%q<rspec>, ["~> 2.9.0"])
53
- s.add_dependency(%q<bundler>, ["~> 1.0"])
54
- s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
55
- end
56
- else
57
- s.add_dependency(%q<rspec>, ["~> 2.9.0"])
58
- s.add_dependency(%q<bundler>, ["~> 1.0"])
59
- s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
60
- end
23
+ s.add_development_dependency 'bundler', ['>= 1.0.0']
24
+ s.add_development_dependency 'rspec', ['>= 0']
61
25
  end
62
-
@@ -7,7 +7,7 @@ describe RecaptchaMailhide::URL do
7
7
 
8
8
  describe ".url_for" do
9
9
  it("returns the proper URL") do
10
- RecaptchaMailhide::URL.url_for('foo@bar.com').should eq('http://www.google.com/recaptcha/mailhide/d?k=PUBLIC_KEY&c=ABC')
10
+ RecaptchaMailhide::URL.url_for('foo@bar.com').should eq('https://www.google.com/recaptcha/mailhide/d?k=PUBLIC_KEY&c=ABC')
11
11
  end
12
12
  end
13
13
  end
metadata CHANGED
@@ -1,61 +1,56 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: recaptcha-mailhide
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
5
- prerelease:
4
+ version: 1.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Pedro Fayolle
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-04-18 00:00:00.000000000 Z
11
+ date: 2015-11-11 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: rspec
16
- requirement: &15326280 !ruby/object:Gem::Requirement
17
- none: false
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
18
16
  requirements:
19
- - - ~>
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
- version: 2.9.0
19
+ version: 1.0.0
22
20
  type: :development
23
21
  prerelease: false
24
- version_requirements: *15326280
25
- - !ruby/object:Gem::Dependency
26
- name: bundler
27
- requirement: &15325280 !ruby/object:Gem::Requirement
28
- none: false
22
+ version_requirements: !ruby/object:Gem::Requirement
29
23
  requirements:
30
- - - ~>
24
+ - - ">="
31
25
  - !ruby/object:Gem::Version
32
- version: '1.0'
33
- type: :development
34
- prerelease: false
35
- version_requirements: *15325280
26
+ version: 1.0.0
36
27
  - !ruby/object:Gem::Dependency
37
- name: jeweler
38
- requirement: &15323760 !ruby/object:Gem::Requirement
39
- none: false
28
+ name: rspec
29
+ requirement: !ruby/object:Gem::Requirement
40
30
  requirements:
41
- - - ~>
31
+ - - ">="
42
32
  - !ruby/object:Gem::Version
43
- version: 1.8.3
33
+ version: '0'
44
34
  type: :development
45
35
  prerelease: false
46
- version_requirements: *15323760
47
- description: Ruby implementation of ReCAPTCHA Mailhide's API
48
- email: pfayolle@gmail.com
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description: Implementation of Google's ReCAPTCHA Mailhide API
42
+ email:
43
+ - pfayolle@gmail.com
49
44
  executables: []
50
45
  extensions: []
51
46
  extra_rdoc_files:
52
- - LICENSE.txt
53
47
  - README.rdoc
54
48
  files:
55
- - .document
56
- - .rspec
49
+ - ".document"
50
+ - ".gitignore"
51
+ - ".rspec"
52
+ - CHANGELOG.rdoc
57
53
  - Gemfile
58
- - Gemfile.lock
59
54
  - LICENSE.txt
60
55
  - README.rdoc
61
56
  - Rakefile
@@ -64,7 +59,10 @@ files:
64
59
  - lib/recaptcha_mailhide.rb
65
60
  - lib/recaptcha_mailhide/configuration.rb
66
61
  - lib/recaptcha_mailhide/encrypt.rb
62
+ - lib/recaptcha_mailhide/helpers/action_view_helper.rb
63
+ - lib/recaptcha_mailhide/railtie.rb
67
64
  - lib/recaptcha_mailhide/url.rb
65
+ - lib/recaptcha_mailhide/version.rb
68
66
  - recaptcha-mailhide.gemspec
69
67
  - spec/recaptcha_mailhide/encrypt_spec.rb
70
68
  - spec/recaptcha_mailhide/url_spec.rb
@@ -72,29 +70,28 @@ files:
72
70
  homepage: http://github.com/pilaf/recaptcha-mailhide
73
71
  licenses:
74
72
  - MIT
73
+ metadata: {}
75
74
  post_install_message:
76
75
  rdoc_options: []
77
76
  require_paths:
78
77
  - lib
79
78
  required_ruby_version: !ruby/object:Gem::Requirement
80
- none: false
81
79
  requirements:
82
- - - ! '>='
80
+ - - ">="
83
81
  - !ruby/object:Gem::Version
84
82
  version: '0'
85
- segments:
86
- - 0
87
- hash: 1066762596205955725
88
83
  required_rubygems_version: !ruby/object:Gem::Requirement
89
- none: false
90
84
  requirements:
91
- - - ! '>='
85
+ - - ">="
92
86
  - !ruby/object:Gem::Version
93
87
  version: '0'
94
88
  requirements: []
95
89
  rubyforge_project:
96
- rubygems_version: 1.8.10
90
+ rubygems_version: 2.4.8
97
91
  signing_key:
98
- specification_version: 3
99
- summary: ReCAPTCHA Mailhide for Ruby
100
- test_files: []
92
+ specification_version: 4
93
+ summary: ReCAPTCHA Mailhide client
94
+ test_files:
95
+ - spec/recaptcha_mailhide/encrypt_spec.rb
96
+ - spec/recaptcha_mailhide/url_spec.rb
97
+ - spec/spec_helper.rb
@@ -1,30 +0,0 @@
1
- GEM
2
- remote: http://rubygems.org/
3
- specs:
4
- diff-lcs (1.1.3)
5
- git (1.2.5)
6
- jeweler (1.8.3)
7
- bundler (~> 1.0)
8
- git (>= 1.2.5)
9
- rake
10
- rdoc
11
- json (1.6.6)
12
- rake (0.9.2.2)
13
- rdoc (3.12)
14
- json (~> 1.4)
15
- rspec (2.9.0)
16
- rspec-core (~> 2.9.0)
17
- rspec-expectations (~> 2.9.0)
18
- rspec-mocks (~> 2.9.0)
19
- rspec-core (2.9.0)
20
- rspec-expectations (2.9.1)
21
- diff-lcs (~> 1.1.3)
22
- rspec-mocks (2.9.0)
23
-
24
- PLATFORMS
25
- ruby
26
-
27
- DEPENDENCIES
28
- bundler (~> 1.0)
29
- jeweler (~> 1.8.3)
30
- rspec (~> 2.9.0)