rubygems-code_finder 0.0.2 → 0.0.3

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: fe24bba3e53caa2990669bccff73599ccfd2954e
4
- data.tar.gz: b78146d65d86177a001ec9ed05e2840018856cd4
3
+ metadata.gz: c80b17529159ac4b3866452626e67c50999a0cab
4
+ data.tar.gz: e377fb2b2c500b9677d183afd79af4413694321d
5
5
  SHA512:
6
- metadata.gz: 563eb43de6d027b183e09052d62518df86d21279d4158e40a7710dfdaddd1d63a1f348d3223d4c5655d64bd095455dc700ca112017a02f9f387b6d12f5bdc6c3
7
- data.tar.gz: 0fe914d8364a4bf49e52b0db62ce5533c767544b0fc50f084bf2f74695d260f256290c85930a0854cddfc20e0fb2f2ab9180164930b961b8240412df4b388149
6
+ metadata.gz: 565b98f0d4af096091da776348bdab88049df184c94d2ebc2c0772c8961af9ccd4cbc7002a1073d5f908e5ce981c37f62e466431e7a098fa4a9db6d2be71af05
7
+ data.tar.gz: 5ee6b72f9492a8762c5d68bfba7b11bd4d87e48c502484ca56c4274b844569ffde6afbd9808c08d73d47b76451a720948fc0b5fb14736ffb49f81f22a0332320
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## 0.0.3 (2014-02-23)
2
+ Features:
3
+
4
+ - Search github (#3, @sanemat)
5
+
1
6
  ## 0.0.2 (2014-02-23)
2
7
  Fixes:
3
8
 
data/README.md CHANGED
@@ -25,20 +25,16 @@ Or install it yourself as:
25
25
  irb(main):001:0> require 'rubygems-code_finder'
26
26
  => true
27
27
  irb(main):002:0> Rubygems::CodeFinder.url 'tachikoma'
28
- => "https://github.com/sanemat/tachikoma"
28
+ => "https://github.com/sanemat/tachikoma" # Fetch from api.rubygems.org response source_code_uri
29
29
  irb(main):003:0> Rubygems::CodeFinder.url 'invalid'
30
30
  Rubygems::CodeFinder::RubygemsNotFound: Rubygems::CodeFinder::RubygemsNotFound
31
31
  from /Users/sane/.anyenv/envs/rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/bundler/gems/rubygems-code_finder-9fdb9327350d/lib/rubygems-code_finder.rb:15:in `url'
32
32
  from (irb):3
33
33
  from /Users/sane/.anyenv/envs/rbenv/versions/2.1.0/bin/irb:11:in `<main>'
34
34
  irb(main):004:0> Rubygems::CodeFinder.url 'mm-devise'
35
- => "http://github.com/kristianmandrup/mm-devise"
35
+ => "http://github.com/kristianmandrup/mm-devise" # Fetch from api.rubygems.org response homepage_url
36
36
  irb(main):005:0> Rubygems::CodeFinder.url 'fluentd'
37
- Rubygems::CodeFinder::RepositoryNotFound: Rubygems::CodeFinder::RepositoryNotFound
38
- from /Users/sane/.anyenv/envs/rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/bundler/gems/rubygems-code_finder-9fdb9327350d/lib/rubygems-code_finder.rb:23:in `parse_response_body'
39
- from /Users/sane/.anyenv/envs/rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/bundler/gems/rubygems-code_finder-9fdb9327350d/lib/rubygems-code_finder.rb:16:in `url'
40
- from (irb):5
41
- from /Users/sane/.anyenv/envs/rbenv/versions/2.1.0/bin/irb:11:in `<main>'
37
+ => "https://github.com/fluent/fluentd" # Search github
42
38
  ```
43
39
 
44
40
  ## Contributing
@@ -1,5 +1,5 @@
1
1
  module Rubygems
2
2
  module CodeFinder
3
- VERSION = '0.0.2'
3
+ VERSION = '0.0.3'
4
4
  end
5
5
  end
@@ -2,6 +2,7 @@ require 'rubygems/code_finder/version'
2
2
  require 'faraday'
3
3
  require 'multi_json'
4
4
  require 'uri'
5
+ require 'octokit'
5
6
 
6
7
  module Rubygems
7
8
  module CodeFinder
@@ -20,6 +21,9 @@ module Rubygems
20
21
  data = MultiJson.load(body)
21
22
  return data['source_code_uri'] if data['source_code_uri'] && URI.parse(data['source_code_uri']).host == 'github.com'
22
23
  return data['homepage_uri'] if data['homepage_uri'] && URI.parse(data['homepage_uri']).host == 'github.com'
24
+
25
+ res = Octokit.search_repositories data['name']
26
+ return 'https://github.com/' + res.items.first.full_name if res.items.count >= 1
23
27
  fail RepositoryNotFound
24
28
  end
25
29
  end
@@ -20,6 +20,7 @@ Gem::Specification.new do |spec|
20
20
 
21
21
  spec.add_dependency 'faraday'
22
22
  spec.add_dependency 'multi_json'
23
+ spec.add_dependency 'octokit'
23
24
 
24
25
  spec.add_development_dependency 'bundler', '>= 1.3'
25
26
  spec.add_development_dependency 'rake'