PwnedCheck 1.0.13 → 1.0.14

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b9760d1478599fa7fe031be7aa711986926767ad
4
- data.tar.gz: 45c46b4cddb4384f156f59af2ca786f6d4d9e665
3
+ metadata.gz: 034b9ae698d982ce469ab65c4448723eae12037d
4
+ data.tar.gz: 392aa84d61fd03830271f7d7f34611eab374ee93
5
5
  SHA512:
6
- metadata.gz: 9e094a7ec77f7762c7d4828cf5a7e22c17c07af72ece5a74e0f71041fc710b345b04da252891c67ae4a339090236738b787af1f75a29b3ab2ad8bb2b3019c465
7
- data.tar.gz: d58a97f4adf6c21a3324da832bfefc98e0ef2e44c87afd6d8c2820547e519851b8b6cef5db814874b2f396599eeba84f57fc89c077c511cb093b2e7e5f617ce8
6
+ metadata.gz: f0c77f2ed31db656e0aa689fc764fd4588b1e46e8d9933f0861b2daf2464c6cb2f17f91cb0c3db71887ea70ab9cfa714b119929fe726e43ca9a04bc48683315a
7
+ data.tar.gz: 0f1a6602f1ad34884111abcf136340baedb2f90a81b3c3ea21c20bb56cefb779748c72395e97fc0a0691f04a3fa7c2b0cf9b038a6befdef25a1f25c0e6aa4c07
checksums.yaml.gz.sig CHANGED
@@ -1 +1,3 @@
1
- ���y���ʱ��>��MYC��8‹g�3)J �F�Ce�u @�<I/
1
+ �j2��<tq<�I������
2
+ c�����)AB{�����XoQ6M�Z�PC��v�l�ވ�) c�12�$���|{�;$cqM�N-�MA����x�h�����Eܚ/��D�3�^�%\�3�P�����l��%�8F��n8����茉��hbB���n�#�V�<�-f�#j�VF�x��0���𥵂�w�u�������5��1 ~�?3�S�Л�B��%�P��p�h�
3
+ Lʋ��T1ކM��]��)���@��
data/README.md CHANGED
@@ -5,7 +5,7 @@ Ruby gem to check to see if an email address is on http://haveibeenpwned.com
5
5
  <table>
6
6
  <tr>
7
7
  <th>Version</th>
8
- <td>1.0.13</td>
8
+ <td>1.0.14</td>
9
9
  </tr>
10
10
  <tr>
11
11
  <th>Author</th>
@@ -45,8 +45,8 @@ addresses.each do |address|
45
45
  puts "#{address} --> #{site}"
46
46
  end
47
47
  end
48
- rescue PwnedCheck::BadRequest => e
49
- puts "#{address} --> Invalid email address format"
48
+ rescue PwnedCheck::InvalidEmail => e
49
+ puts "#{address} --> #{e.message}"
50
50
  end
51
51
  end
52
52
  `````
data/lib/pwnedcheck.rb CHANGED
@@ -21,16 +21,16 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  SOFTWARE.
22
22
  =end
23
23
 
24
- require 'mechanize'
25
- require 'addressable/uri'
24
+ require 'net/http'
25
+ require 'cgi'
26
26
  require 'json'
27
27
 
28
28
  # PwnedCheck module
29
29
  module PwnedCheck
30
30
  # Thrown if the email address being checked does not have a valid format
31
- class BadRequest < Exception
31
+ class InvalidEmail < Exception
32
32
  def initialize
33
- super "Invalid email address format"
33
+ super 'Invalid email address format'
34
34
  end
35
35
  end
36
36
 
@@ -39,22 +39,15 @@ module PwnedCheck
39
39
  # @param address [String] the email address to check
40
40
  # @return [Array] an array of sites that the email address is associated with
41
41
  def self.check(address)
42
- agent = Mechanize.new
43
- agent.user_agent = 'PwnedCheck (http://www.chs.us/PwnedCheck)'
44
- begin
45
- url = "http://haveibeenpwned.com/api/breachedaccount/#{address}"
46
- page = agent.get Addressable::URI.parse(url)
47
- rescue Mechanize::ResponseCodeError => ex
48
- case ex.response_code
49
- when '404'
50
- []
51
- when '400'
52
- raise BadRequest
53
- else
54
- raise ex
55
- end
56
- else
57
- JSON.parse(page.content)
42
+ uri = URI.parse "http://haveibeenpwned.com/api/breachedaccount/#{CGI::escape(address)}"
43
+ response = Net::HTTP.get_response uri
44
+ case response.code
45
+ when '200'
46
+ JSON.parse response.body
47
+ when '404'
48
+ []
49
+ when '400'
50
+ fail InvalidEmail
58
51
  end
59
52
  end
60
53
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: PwnedCheck
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.13
4
+ version: 1.0.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carl Sampson
@@ -30,35 +30,7 @@ cert_chain:
30
30
  QpRFRIGkUba0uOnrpDYGuuDffqcLmyWY2QNiM6h/V43zrVhJ
31
31
  -----END CERTIFICATE-----
32
32
  date: 2013-12-16 00:00:00.000000000 Z
33
- dependencies:
34
- - !ruby/object:Gem::Dependency
35
- name: mechanize
36
- requirement: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
- type: :runtime
42
- prerelease: false
43
- version_requirements: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- - !ruby/object:Gem::Dependency
49
- name: addressable
50
- requirement: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
- type: :runtime
56
- prerelease: false
57
- version_requirements: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
33
+ dependencies: []
62
34
  description: Checks an email address against haveibeenpwned.com.
63
35
  email: chs@chs.us
64
36
  executables: []
metadata.gz.sig CHANGED
Binary file