recaptcha-mailhide 0.1.1 → 1.0.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.
@@ -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)