pkglookup 0.1.1

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.
data/bin/pkglookup ADDED
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ $: << File.dirname($0) + "/../lib"
4
+
5
+ require 'rubygems'
6
+ require 'pkglookup'
7
+
8
+ PkgLookup::Runner.start
data/lib/pkglookup.rb ADDED
@@ -0,0 +1,4 @@
1
+ module PkgLookup
2
+ autoload :Runner, 'pkglookup/runner'
3
+ autoload :Client, 'pkglookup/client'
4
+ end
@@ -0,0 +1,22 @@
1
+ require 'uri'
2
+ require 'json'
3
+ require 'net/http'
4
+
5
+ class PkgLookup::Client
6
+ class << self
7
+ def search(term)
8
+ q = URI.escape(term, Regexp.new("[^#{URI::PATTERN::UNRESERVED}]"))
9
+ url = "http://labs.floatboth.com/pkglookup/lookup.json?q=#{q}"
10
+
11
+ resp = Net::HTTP.get_response(URI.parse(url))
12
+ data = resp.body
13
+
14
+ if data.empty?
15
+ return nil
16
+ end
17
+ result = JSON.parse(data)
18
+ result["results"]
19
+
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,14 @@
1
+ require 'hirb'
2
+
3
+ class PkgLookup::Runner
4
+ class << self
5
+ def start
6
+ if ARGV[0].nil?
7
+ puts "Usage #{$0} <term>"
8
+ exit
9
+ end
10
+ results = PkgLookup::Client.search(ARGV[0])
11
+ puts Hirb::Helpers::AutoTable.render(results, :fields => ['name', 'source', 'url'], :resize => false)
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,3 @@
1
+ module PkgLookup
2
+ VERSION = '0.1.1'
3
+ end
metadata ADDED
@@ -0,0 +1,107 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: pkglookup
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Jerome Poichet
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-04-21 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: json
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: hirb
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: gems
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ description: ! 'Packages lookup
63
+
64
+
65
+ Looks up packages on PyPI, CPAN, RubyGems, NPM, Maven Central, Clojars, GitHub,
66
+ Bitbucket, Ubuntu, Arch User Repository, FreeBSD ports, Fedora and Homebrew.
67
+
68
+
69
+ This is a command line client for the pkglookup http://labs.floatboth.com/pkglookup/'
70
+ email: poitch@gmail.com
71
+ executables:
72
+ - pkglookup
73
+ extensions: []
74
+ extra_rdoc_files: []
75
+ files:
76
+ - lib/pkglookup/client.rb
77
+ - lib/pkglookup/runner.rb
78
+ - lib/pkglookup/version.rb
79
+ - lib/pkglookup.rb
80
+ - bin/pkglookup
81
+ homepage: http://github.com/poitch/pkglookup
82
+ licenses: []
83
+ post_install_message:
84
+ rdoc_options: []
85
+ require_paths:
86
+ - lib
87
+ - lib
88
+ required_ruby_version: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ required_rubygems_version: !ruby/object:Gem::Requirement
95
+ none: false
96
+ requirements:
97
+ - - ! '>='
98
+ - !ruby/object:Gem::Version
99
+ version: '0'
100
+ requirements: []
101
+ rubyforge_project:
102
+ rubygems_version: 1.8.23
103
+ signing_key:
104
+ specification_version: 3
105
+ summary: Looks up packages on PyPI, CPAN, RubyGems, NPM, Maven Central, Clojars, GitHub,
106
+ Bitbucket, Ubuntu, Arch User Repository, FreeBSD ports, Fedora and Homebrew.
107
+ test_files: []