freemail 0.1.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,28 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'freemail/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'freemail'
8
+ spec.version = Freemail::VERSION
9
+ spec.authors = ['smudge']
10
+ spec.email = ['nathan@ngriffith.com']
11
+
12
+ spec.summary = %w(A ruby implementation of the npm 'freemail' module)
13
+ spec.description = <<-END
14
+ A ruby implementation of the npm 'freemail' module, providing a database of
15
+ free and disposable email domains.
16
+ END
17
+ spec.homepage = 'https://github.com/smudge/freemail'
18
+ spec.license = 'MIT'
19
+
20
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
21
+ spec.bindir = 'exe'
22
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
+ spec.require_paths = ['lib']
24
+
25
+ spec.add_development_dependency 'bundler', '~> 1.10'
26
+ spec.add_development_dependency 'rake', '~> 10.0'
27
+ spec.add_development_dependency 'rspec'
28
+ end
@@ -0,0 +1,18 @@
1
+ require 'freemail/version'
2
+
3
+ module Freemail
4
+ DISPOSABLE = Hash[File.readlines('data/disposable.txt').map { |d| [d.strip.downcase] }]
5
+ FREE = Hash[File.readlines('data/free.txt').map { |d| [d.strip.downcase] }]
6
+
7
+ def self.free?(email)
8
+ FREE.key?(get_domain(email))
9
+ end
10
+
11
+ def self.disposable?(email)
12
+ DISPOSABLE.key?(get_domain(email))
13
+ end
14
+
15
+ def self.get_domain(email)
16
+ email.split('@').last.downcase.strip
17
+ end
18
+ end
@@ -0,0 +1,3 @@
1
+ module Freemail
2
+ VERSION = "0.1.0"
3
+ end
metadata ADDED
@@ -0,0 +1,102 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: freemail
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - smudge
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2015-09-02 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.10'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.10'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ description: |2
56
+ A ruby implementation of the npm 'freemail' module, providing a database of
57
+ free and disposable email domains.
58
+ email:
59
+ - nathan@ngriffith.com
60
+ executables: []
61
+ extensions: []
62
+ extra_rdoc_files: []
63
+ files:
64
+ - ".gitignore"
65
+ - ".rspec"
66
+ - ".travis.yml"
67
+ - Gemfile
68
+ - LICENSE.txt
69
+ - README.md
70
+ - Rakefile
71
+ - bin/console
72
+ - bin/setup
73
+ - data/disposable.txt
74
+ - data/free.txt
75
+ - freemail.gemspec
76
+ - lib/freemail.rb
77
+ - lib/freemail/version.rb
78
+ homepage: https://github.com/smudge/freemail
79
+ licenses:
80
+ - MIT
81
+ metadata: {}
82
+ post_install_message:
83
+ rdoc_options: []
84
+ require_paths:
85
+ - lib
86
+ required_ruby_version: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ required_rubygems_version: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: '0'
96
+ requirements: []
97
+ rubyforge_project:
98
+ rubygems_version: 2.4.5
99
+ signing_key:
100
+ specification_version: 4
101
+ summary: '["A", "ruby", "implementation", "of", "the", "npm", "''freemail''", "module"]'
102
+ test_files: []