pkglookup 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
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: []