rpaste 0.0.9 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +16 -3
- data/Manifest.txt +1 -0
- data/README.txt +3 -2
- data/TODO.txt +4 -0
- data/lib/rpaste/nopaste/metadata.rb +3 -4
- data/lib/rpaste/nopaste/nopaste.rb +27 -15
- data/lib/rpaste/nopaste/paste.rb +3 -4
- data/lib/rpaste/nopaste/recent.rb +7 -4
- data/lib/rpaste/nopaste/result_set.rb +22 -1
- data/lib/rpaste/pastebin/paste.rb +4 -5
- data/lib/rpaste/pastebin/pastebin.rb +25 -8
- data/lib/rpaste/pastebin/recent.rb +7 -4
- data/lib/rpaste/result_set.rb +23 -0
- data/lib/rpaste/rpaste.rb +90 -14
- data/lib/rpaste/version.rb +1 -1
- metadata +72 -63
data/History.txt
CHANGED
@@ -1,6 +1,19 @@
|
|
1
|
+
== 0.1.0 / 2008-01-15
|
2
|
+
|
3
|
+
* Renamed RPaste.http_agent to RPaste.web_agent.
|
4
|
+
* Added RPaste.proxy to provide proxy settings for RPaste.open_uri and
|
5
|
+
RPaste.web_agent.
|
6
|
+
* Renamed RPaste.open to RPaste.open_uri.
|
7
|
+
* Added RPaste.open_page.
|
8
|
+
* Added ResultSet#select, which returns a new ResultSet.
|
9
|
+
* Added ResultSet#names, ResultSet#authors, NoPaste::ResultSet#dates,
|
10
|
+
NoPaste::ResultSet#syntaxes and NoPaste::ResultSet#descriptions.
|
11
|
+
* Fixed a file-requirement typo in lib/rpaste/nopaste/result_set.rb.
|
12
|
+
* Various typo fixes.
|
13
|
+
|
1
14
|
== 0.0.9 / 2008-01-09
|
2
15
|
|
3
|
-
|
4
|
-
|
5
|
-
|
16
|
+
* Initial release.
|
17
|
+
* Supports NoPaste paste board.
|
18
|
+
* Semi-support for PasteBin.
|
6
19
|
|
data/Manifest.txt
CHANGED
data/README.txt
CHANGED
@@ -9,14 +9,15 @@ RPaste supports NoPaste and PasteBin.
|
|
9
9
|
|
10
10
|
== FEATURES/PROBLEMS:
|
11
11
|
|
12
|
-
* Supports posting and retrieving from NoPaste.
|
12
|
+
* Supports posting and retrieving pastes from NoPaste.
|
13
13
|
* Supports retrieving from PasteBin.
|
14
14
|
* Provides HTTP access with custom User-Agent strings.
|
15
|
+
* Provides proxy settings for HTTP access.
|
15
16
|
|
16
17
|
== REQUIREMENTS:
|
17
18
|
|
18
19
|
* Hpricot
|
19
|
-
* Mechanize
|
20
|
+
* WWW::Mechanize
|
20
21
|
|
21
22
|
== INSTALL:
|
22
23
|
|
data/TODO.txt
ADDED
@@ -30,11 +30,10 @@ module RPaste
|
|
30
30
|
|
31
31
|
#
|
32
32
|
# Returns the NoPaste Paste object associated with the Metadata
|
33
|
-
# object.
|
34
|
-
# the NoPaste website.
|
33
|
+
# object.
|
35
34
|
#
|
36
|
-
def paste
|
37
|
-
Paste.paste(name
|
35
|
+
def paste
|
36
|
+
Paste.paste(name)
|
38
37
|
end
|
39
38
|
|
40
39
|
#
|
@@ -6,48 +6,60 @@ require 'hpricot'
|
|
6
6
|
|
7
7
|
module RPaste
|
8
8
|
module NoPaste
|
9
|
+
# The NoPaste post URL
|
10
|
+
POST_URL = 'http://rafb.net/paste/index.html'
|
11
|
+
|
9
12
|
#
|
10
13
|
# Returns the list of all recent pastes on NoPaste. See Recent.get.
|
11
14
|
#
|
12
|
-
def NoPaste.recent(
|
13
|
-
Recent.get(
|
15
|
+
def NoPaste.recent(&block)
|
16
|
+
Recent.get(&block)
|
14
17
|
end
|
15
18
|
|
16
19
|
#
|
17
20
|
# Retrieves the NoPaste Paste object associated with the specified
|
18
21
|
# _name_. See Paste.paste.
|
19
22
|
#
|
20
|
-
def NoPaste.paste(name
|
21
|
-
Paste.paste(name
|
23
|
+
def NoPaste.paste(name)
|
24
|
+
Paste.paste(name)
|
22
25
|
end
|
23
26
|
|
24
27
|
#
|
25
|
-
# Submits a new paste to NoPaste
|
26
|
-
#
|
28
|
+
# Submits a new paste to NoPaste with the specified _options_.
|
29
|
+
# If a _block_ is given, then it will be passed the Paste object
|
30
|
+
# before it is submitted to NoPaste.
|
31
|
+
#
|
32
|
+
# _options_ may contain the following keys:
|
33
|
+
# <tt>:author</tt>:: The author of the paste.
|
34
|
+
# <tt>:syntax</tt>:: The syntax of the paste.
|
35
|
+
# <tt>:description</tt>:: The description for the paste.
|
36
|
+
# <tt>:text</tt>:: The text to paste.
|
37
|
+
# <tt>:convert_tabs</tt>:: Indicates that tabs will be converted to
|
38
|
+
# spaces.
|
27
39
|
#
|
28
40
|
# NoPaste.post(:author => 'briefcase man') do |paste|
|
29
41
|
# paste.description = 'todays key'
|
30
42
|
# paste.text = 'is brought to you by the letter S, for symmetric'
|
31
43
|
# end
|
32
44
|
#
|
33
|
-
def NoPaste.post(
|
34
|
-
author =
|
35
|
-
syntax =
|
36
|
-
description =
|
37
|
-
text =
|
45
|
+
def NoPaste.post(options={},&block)
|
46
|
+
author = options[:author]
|
47
|
+
syntax = options[:syntax]
|
48
|
+
description = options[:description]
|
49
|
+
text = options[:text]
|
38
50
|
|
39
51
|
paste = Paste.new(nil,author,nil,syntax,description,text,&block)
|
40
52
|
|
41
|
-
agent = RPaste.
|
42
|
-
page = agent.get(
|
53
|
+
agent = RPaste.web_agent
|
54
|
+
page = agent.get(POST_URL)
|
43
55
|
form = page.forms.first
|
44
56
|
|
45
57
|
form.lang = paste.syntax if paste.syntax
|
46
58
|
form.nick = paste.author if paste.author
|
47
59
|
form.desc = paste.description if paste.description
|
48
60
|
|
49
|
-
if
|
50
|
-
form.cvt_tabs =
|
61
|
+
if options[:convert_tabs]
|
62
|
+
form.cvt_tabs = options[:convert_tabs]
|
51
63
|
end
|
52
64
|
|
53
65
|
form.text = paste.text
|
data/lib/rpaste/nopaste/paste.rb
CHANGED
@@ -31,11 +31,10 @@ module RPaste
|
|
31
31
|
|
32
32
|
#
|
33
33
|
# Retrieves the NoPaste Paste object associated with the specified
|
34
|
-
# _name_.
|
35
|
-
# NoPaste website.
|
34
|
+
# _name_.
|
36
35
|
#
|
37
|
-
def self.paste(name
|
38
|
-
page =
|
36
|
+
def self.paste(name)
|
37
|
+
page = RPaste.open_page("#{PREFIX_URL}#{name}.html")
|
39
38
|
|
40
39
|
return Paste.new(name) do |paste|
|
41
40
|
paste.syntax = page.search('//table[1]/tr[1]/td/small/b[1]').inner_text
|
@@ -10,12 +10,15 @@ module RPaste
|
|
10
10
|
URL = 'http://www.rafb.net/paste/results.html'
|
11
11
|
|
12
12
|
#
|
13
|
-
# Returns the list of recent pastes on NoPaste. If
|
13
|
+
# Returns the list of recent pastes on NoPaste. If _options_ are
|
14
14
|
# given they will be used in accessing the NoPaste website. If a
|
15
15
|
# _block_ is given, it will be passed the list of recent pastes.
|
16
16
|
#
|
17
|
-
|
18
|
-
|
17
|
+
# _options_ may also contain the following keys:
|
18
|
+
# <tt>:length</tt>:: The maximum number of results to return.
|
19
|
+
#
|
20
|
+
def self.get(options={},&block)
|
21
|
+
len = options[:length]
|
19
22
|
|
20
23
|
if len.nil? || len==0
|
21
24
|
len = -1
|
@@ -23,7 +26,7 @@ module RPaste
|
|
23
26
|
len = len.to_i+1
|
24
27
|
end
|
25
28
|
|
26
|
-
page =
|
29
|
+
page = RPaste.open_page(URL,options)
|
27
30
|
rows = page.search('//div.filelist/table/tr')[1..len]
|
28
31
|
|
29
32
|
metadata = rows.map do |row|
|
@@ -1,10 +1,31 @@
|
|
1
1
|
require 'rpaste/nopaste/metadata'
|
2
|
-
require 'rpaste/
|
2
|
+
require 'rpaste/result_set'
|
3
3
|
|
4
4
|
module RPaste
|
5
5
|
module NoPaste
|
6
6
|
class ResultSet < RPaste::ResultSet
|
7
7
|
|
8
|
+
#
|
9
|
+
# Returns an +Array+ containing the metadata dates.
|
10
|
+
#
|
11
|
+
def dates
|
12
|
+
self.map { |data| data.date }
|
13
|
+
end
|
14
|
+
|
15
|
+
#
|
16
|
+
# Returns an +Array+ containing the metadata syntaxes.
|
17
|
+
#
|
18
|
+
def syntaxes
|
19
|
+
self.map { |data| data.syntax }
|
20
|
+
end
|
21
|
+
|
22
|
+
#
|
23
|
+
# Returns an +Array+ containing the metadata descriptions.
|
24
|
+
#
|
25
|
+
def descriptions
|
26
|
+
self.map { |data| data.description }
|
27
|
+
end
|
28
|
+
|
8
29
|
#
|
9
30
|
# Selects the metadata with dates in between _start_ and _stop_.
|
10
31
|
#
|
@@ -30,15 +30,14 @@ module RPaste
|
|
30
30
|
|
31
31
|
#
|
32
32
|
# Retrieves the PasteBin Paste object associated with the specified
|
33
|
-
# _name_.
|
34
|
-
# PasteBin website.
|
33
|
+
# _name_.
|
35
34
|
#
|
36
|
-
def self.paste(name
|
37
|
-
page =
|
35
|
+
def self.paste(name)
|
36
|
+
page = RPaste.open_page("#{PREFIX_URL}#{name}")
|
38
37
|
|
39
38
|
return Paste.new(name) do |paste|
|
40
39
|
paste.text = page.search('//div.text/ol/li').inner_text
|
41
|
-
paste.author = page.search('#content/h1[1]'.inner_text.gsub(/Posted by /,'').split(' on ')
|
40
|
+
paste.author = page.search('#content/h1[1]').inner_text.gsub(/Posted by /,'').split(' on ')
|
42
41
|
end
|
43
42
|
end
|
44
43
|
|
@@ -6,16 +6,28 @@ require 'hpricot'
|
|
6
6
|
|
7
7
|
module RPaste
|
8
8
|
module PasteBin
|
9
|
+
# The PasteBin post URL
|
10
|
+
POST_URL = 'http://pastebin.com/pastebin.php'
|
11
|
+
|
9
12
|
#
|
10
13
|
# Returns the list of all recent pastes on PasteBin. See Recent.get.
|
11
14
|
#
|
12
|
-
def PasteBin.recent(
|
13
|
-
Recent.get(
|
15
|
+
def PasteBin.recent(options={},&block)
|
16
|
+
Recent.get(options,&block)
|
14
17
|
end
|
15
18
|
|
16
19
|
#
|
17
|
-
# Submits a new paste to PasteBin
|
18
|
-
# passed the Paste object before
|
20
|
+
# Submits a new paste to PasteBin with the given _options_. If a
|
21
|
+
# _block_ is given, then it will be passed the Paste object before
|
22
|
+
# it is submitted to PasteBin.
|
23
|
+
#
|
24
|
+
# _options_ may contain the following keys:
|
25
|
+
# <tt>:author</tt>:: The author of the paste.
|
26
|
+
# <tt>:syntax</tt>:: The syntax of the paste.
|
27
|
+
# <tt>:retained</tt>:: Indicates when the paste should expire,
|
28
|
+
# which can be either <tt>:day</tt>,
|
29
|
+
# <tt>:month</tt> or <tt>:year</tt>.
|
30
|
+
# <tt>:text</tt>:: The text to paste.
|
19
31
|
#
|
20
32
|
# PasteBin.post(:author => 'xyz') do |paste|
|
21
33
|
# paste.description = 'test'
|
@@ -28,11 +40,16 @@ module RPaste
|
|
28
40
|
# }
|
29
41
|
# end
|
30
42
|
#
|
31
|
-
def PasteBin.post(
|
32
|
-
|
43
|
+
def PasteBin.post(options={},&block)
|
44
|
+
author = options[:author]
|
45
|
+
syntax = options[:syntax]
|
46
|
+
retained = options[:retained]
|
47
|
+
text = options[:text]
|
48
|
+
|
49
|
+
paste = Paste.new(nil,author,nil,syntax,retained,text,&block)
|
33
50
|
|
34
|
-
agent = RPaste.
|
35
|
-
page = agent.get(
|
51
|
+
agent = RPaste.web_agent
|
52
|
+
page = agent.get(POST_URL)
|
36
53
|
form = page.forms.first
|
37
54
|
|
38
55
|
form.format = paste.syntax if paste.syntax
|
@@ -12,12 +12,15 @@ module RPaste
|
|
12
12
|
MAX_LENGTH = 10
|
13
13
|
|
14
14
|
#
|
15
|
-
# Returns the list of recent pastes on PasteBin. If
|
15
|
+
# Returns the list of recent pastes on PasteBin. If _options_ are
|
16
16
|
# given they will be used in accessing the PasteBin website. If a
|
17
17
|
# _block_ is given, it will be passed the list of recent pastes.
|
18
18
|
#
|
19
|
-
|
20
|
-
|
19
|
+
# _options_ may also contain the following keys:
|
20
|
+
# <tt>:length</tt>:: The maximum number of results to return.
|
21
|
+
#
|
22
|
+
def self.get(options={},&block)
|
23
|
+
len = options[:length]
|
21
24
|
|
22
25
|
if (len.nil? || len>MAX_LENGTH)
|
23
26
|
len = MAX_LENGTH
|
@@ -25,7 +28,7 @@ module RPaste
|
|
25
28
|
len = len.to_i
|
26
29
|
end
|
27
30
|
|
28
|
-
page =
|
31
|
+
page = RPaste.open_page(URL,options))
|
29
32
|
rows = page.search('#menu/ul/li')[0...len]
|
30
33
|
|
31
34
|
metadata = rows.map do |row|
|
data/lib/rpaste/result_set.rb
CHANGED
@@ -10,6 +10,29 @@ module RPaste
|
|
10
10
|
super(results,&block)
|
11
11
|
end
|
12
12
|
|
13
|
+
#
|
14
|
+
# Selects the metadata which match the given _block_.
|
15
|
+
#
|
16
|
+
# results.select { |result| result.date > Time.today }
|
17
|
+
#
|
18
|
+
def select(&block)
|
19
|
+
self.class.new(super(&block))
|
20
|
+
end
|
21
|
+
|
22
|
+
#
|
23
|
+
# Returns an +Array+ containing the metadata names.
|
24
|
+
#
|
25
|
+
def names
|
26
|
+
self.map { |data| data.name }
|
27
|
+
end
|
28
|
+
|
29
|
+
#
|
30
|
+
# Returns an +Array+ containing the metadata authors.
|
31
|
+
#
|
32
|
+
def authors
|
33
|
+
self.map { |data| data.author }
|
34
|
+
end
|
35
|
+
|
13
36
|
#
|
14
37
|
# Selects metadata with the matching _name_.
|
15
38
|
#
|
data/lib/rpaste/rpaste.rb
CHANGED
@@ -2,30 +2,79 @@ require 'mechanize'
|
|
2
2
|
require 'open-uri'
|
3
3
|
|
4
4
|
module RPaste
|
5
|
+
# Common proxy port.
|
6
|
+
COMMON_PROXY_PORT = 8080
|
7
|
+
|
8
|
+
#
|
9
|
+
# Returns the +Hash+ of proxy information.
|
10
|
+
#
|
11
|
+
def RPaste.proxy
|
12
|
+
@@rpaste_proxy ||= {:host => nil, :port => COMMON_PROXY_PORT, :user => nil, :pass => nil}
|
13
|
+
end
|
14
|
+
|
15
|
+
#
|
16
|
+
# Creates a HTTP URI based from the given _proxy_info_ +Hash+. The
|
17
|
+
# _proxy_info_ hash defaults to Web.proxy, if not given.
|
18
|
+
#
|
19
|
+
# _proxy_info_ may contain the following keys:
|
20
|
+
# <tt>:host</tt>:: The proxy host.
|
21
|
+
# <tt>:port</tt>:: The proxy port. Defaults to COMMON_PROXY_PORT,
|
22
|
+
# if not specified.
|
23
|
+
# <tt>:user</tt>:: The user-name to login as.
|
24
|
+
# <tt>:password</tt>:: The password to login with.
|
5
25
|
#
|
6
|
-
|
26
|
+
def RPaste.proxy_uri(proxy_info=RPaste.proxy)
|
27
|
+
if RPaste.proxy[:host]
|
28
|
+
return URI::HTTP.build(:host => RPaste.proxy[:host],
|
29
|
+
:port => RPaste.proxy[:port] || COMMON_PROXY_PORT,
|
30
|
+
:userinfo => "#{RPaste.proxy[:user]}:#{RPaste.proxy[:password]}",
|
31
|
+
:path => '/')
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
#
|
36
|
+
# Returns the supported Web User-Agent Aliases.
|
37
|
+
#
|
38
|
+
def RPaste.user_agent_aliases
|
39
|
+
WWW::Mechanize::AGENT_ALIASES
|
40
|
+
end
|
41
|
+
|
42
|
+
#
|
43
|
+
# Returns the RPaste User-Agent
|
7
44
|
#
|
8
45
|
def RPaste.user_agent
|
9
|
-
|
46
|
+
@@rpaste_user_agent ||= nil
|
10
47
|
end
|
11
48
|
|
12
49
|
#
|
13
50
|
# Sets the RPaste user-agent to the specified _agent_.
|
14
51
|
#
|
15
52
|
def RPaste.user_agent=(agent)
|
16
|
-
|
53
|
+
@@rpaste_user_agent = agent
|
17
54
|
end
|
18
55
|
|
19
56
|
#
|
20
|
-
# Opens the _uri_ with the given
|
21
|
-
# be returned.
|
57
|
+
# Opens the _uri_ with the given _options_. The contents of the _uri_
|
58
|
+
# will be returned.
|
59
|
+
#
|
60
|
+
# _options_ may contain the following keys:
|
61
|
+
# <tt>:user_agent_alias</tt>:: The User-Agent Alias to use.
|
62
|
+
# <tt>:user_agent</tt>:: The User-Agent String to use.
|
63
|
+
# <tt>:proxy</tt>:: A +Hash+ of proxy information which may
|
64
|
+
# contain the following keys:
|
65
|
+
# <tt>:host</tt>:: The proxy host.
|
66
|
+
# <tt>:port</tt>:: The proxy port.
|
67
|
+
# <tt>:user</tt>:: The user-name to login as.
|
68
|
+
# <tt>:password</tt>:: The password to login with.
|
69
|
+
#
|
70
|
+
# RPaste.open_uri('http://www.hackety.org/')
|
22
71
|
#
|
23
|
-
# RPaste.
|
24
|
-
# RPaste.open('http://tenderlovemaking.com/',
|
72
|
+
# RPaste.open_uri('http://tenderlovemaking.com/',
|
25
73
|
# :user_agent_alias => 'Linux Mozilla')
|
26
|
-
# RPaste.
|
74
|
+
# RPaste.open_uri('http://www.wired.com/',
|
75
|
+
# :user_agent => 'the future')
|
27
76
|
#
|
28
|
-
def RPaste.
|
77
|
+
def RPaste.open_uri(uri,options={})
|
29
78
|
headers = {}
|
30
79
|
|
31
80
|
if opts[:user_agent_alias]
|
@@ -36,17 +85,39 @@ module RPaste
|
|
36
85
|
headers['User-Agent'] = RPaste.user_agent
|
37
86
|
end
|
38
87
|
|
88
|
+
proxy = (options[:proxy] || GScraper.proxy)
|
89
|
+
if proxy[:host]
|
90
|
+
headers[:proxy] = GScraper.proxy_uri(proxy)
|
91
|
+
end
|
92
|
+
|
39
93
|
return Kernel.open(uri,headers)
|
40
94
|
end
|
41
95
|
|
42
96
|
#
|
43
|
-
#
|
97
|
+
# Similar to RPaste.open_uri but returns an Hpricot document.
|
98
|
+
#
|
99
|
+
def RPaste.open_page(uri,options={})
|
100
|
+
Hpricot(RPaste.open_uri(uri,options))
|
101
|
+
end
|
102
|
+
|
103
|
+
#
|
104
|
+
# Creates a new Mechanize agent with the given _options_.
|
44
105
|
#
|
45
|
-
#
|
46
|
-
#
|
47
|
-
#
|
106
|
+
# _options_ may contain the following keys:
|
107
|
+
# <tt>:user_agent_alias</tt>:: The User-Agent Alias to use.
|
108
|
+
# <tt>:user_agent</tt>:: The User-Agent String to use.
|
109
|
+
# <tt>:proxy</tt>:: A +Hash+ of proxy information which may
|
110
|
+
# contain the following keys:
|
111
|
+
# <tt>:host</tt>:: The proxy host.
|
112
|
+
# <tt>:port</tt>:: The proxy port.
|
113
|
+
# <tt>:user</tt>:: The user-name to login as.
|
114
|
+
# <tt>:password</tt>:: The password to login with.
|
48
115
|
#
|
49
|
-
|
116
|
+
# RPaste.web_agent
|
117
|
+
# RPaste.web_agent(:user_agent_alias => 'Linux Mozilla')
|
118
|
+
# RPaste.web_agent(:user_agent => 'wooden pants')
|
119
|
+
#
|
120
|
+
def RPaste.web_agent(options={})
|
50
121
|
agent = WWW::Mechanize.new
|
51
122
|
|
52
123
|
if opts[:user_agent_alias]
|
@@ -57,6 +128,11 @@ module RPaste
|
|
57
128
|
agent.user_agent = RPaste.user_agent
|
58
129
|
end
|
59
130
|
|
131
|
+
proxy = (options[:proxy] || GScraper.proxy)
|
132
|
+
if proxy[:host]
|
133
|
+
agent.set_proxy(proxy[:host],proxy[:port],proxy[:user],proxy[:password])
|
134
|
+
end
|
135
|
+
|
60
136
|
return agent
|
61
137
|
end
|
62
138
|
end
|
data/lib/rpaste/version.rb
CHANGED
metadata
CHANGED
@@ -1,38 +1,62 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
rubygems_version: 0.9.4
|
3
|
-
specification_version: 1
|
4
2
|
name: rpaste
|
5
3
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.0
|
7
|
-
date: 2008-01-09 00:00:00 -08:00
|
8
|
-
summary: RPaste provides access to many of the online paste services
|
9
|
-
require_paths:
|
10
|
-
- lib
|
11
|
-
email: postmodern.mod3@gmail.com
|
12
|
-
homepage: " by Postmodern Modulus III"
|
13
|
-
rubyforge_project: rpaste
|
14
|
-
description: "== FEATURES/PROBLEMS: * Supports posting and retrieving from NoPaste. * Supports retrieving from PasteBin. * Provides HTTP access with custom User-Agent strings. == REQUIREMENTS: * Hpricot * Mechanize == INSTALL:"
|
15
|
-
autorequire:
|
16
|
-
default_executable:
|
17
|
-
bindir: bin
|
18
|
-
has_rdoc: true
|
19
|
-
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
20
|
-
requirements:
|
21
|
-
- - ">"
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version: 0.0.0
|
24
|
-
version:
|
4
|
+
version: 0.1.0
|
25
5
|
platform: ruby
|
26
|
-
signing_key:
|
27
|
-
cert_chain:
|
28
|
-
post_install_message:
|
29
6
|
authors:
|
30
7
|
- Postmodern Modulus III
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2008-03-15 00:00:00 -07:00
|
13
|
+
default_executable:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: hpricot
|
17
|
+
version_requirement:
|
18
|
+
version_requirements: !ruby/object:Gem::Requirement
|
19
|
+
requirements:
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: "0"
|
23
|
+
version:
|
24
|
+
- !ruby/object:Gem::Dependency
|
25
|
+
name: mechanize
|
26
|
+
version_requirement:
|
27
|
+
version_requirements: !ruby/object:Gem::Requirement
|
28
|
+
requirements:
|
29
|
+
- - ">="
|
30
|
+
- !ruby/object:Gem::Version
|
31
|
+
version: "0"
|
32
|
+
version:
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: hoe
|
35
|
+
version_requirement:
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 1.5.1
|
41
|
+
version:
|
42
|
+
description: "== FEATURES/PROBLEMS: * Supports posting and retrieving pastes from NoPaste. * Supports retrieving from PasteBin. * Provides HTTP access with custom User-Agent strings. * Provides proxy settings for HTTP access. == REQUIREMENTS: * Hpricot * WWW::Mechanize == INSTALL:"
|
43
|
+
email: postmodern.mod3@gmail.com
|
44
|
+
executables: []
|
45
|
+
|
46
|
+
extensions: []
|
47
|
+
|
48
|
+
extra_rdoc_files:
|
49
|
+
- History.txt
|
50
|
+
- LICENSE.txt
|
51
|
+
- Manifest.txt
|
52
|
+
- README.txt
|
53
|
+
- TODO.txt
|
31
54
|
files:
|
32
55
|
- History.txt
|
33
56
|
- LICENSE.txt
|
34
57
|
- Manifest.txt
|
35
58
|
- README.txt
|
59
|
+
- TODO.txt
|
36
60
|
- Rakefile
|
37
61
|
- lib/rpaste.rb
|
38
62
|
- lib/rpaste/version.rb
|
@@ -53,47 +77,32 @@ files:
|
|
53
77
|
- lib/rpaste/pastebin/pastebin.rb
|
54
78
|
- lib/rpaste/pastebin.rb
|
55
79
|
- test/test_rpaste.rb
|
56
|
-
|
57
|
-
|
80
|
+
has_rdoc: true
|
81
|
+
homepage: " by Postmodern Modulus III"
|
82
|
+
post_install_message:
|
58
83
|
rdoc_options:
|
59
84
|
- --main
|
60
85
|
- README.txt
|
61
|
-
|
62
|
-
-
|
63
|
-
|
64
|
-
|
65
|
-
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
86
|
+
require_paths:
|
87
|
+
- lib
|
88
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
89
|
+
requirements:
|
90
|
+
- - ">="
|
91
|
+
- !ruby/object:Gem::Version
|
92
|
+
version: "0"
|
93
|
+
version:
|
94
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
95
|
+
requirements:
|
96
|
+
- - ">="
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: "0"
|
99
|
+
version:
|
70
100
|
requirements: []
|
71
101
|
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
- !ruby/object:Gem::Version
|
80
|
-
version: 0.0.0
|
81
|
-
version:
|
82
|
-
- !ruby/object:Gem::Dependency
|
83
|
-
name: mechanize
|
84
|
-
version_requirement:
|
85
|
-
version_requirements: !ruby/object:Gem::Version::Requirement
|
86
|
-
requirements:
|
87
|
-
- - ">"
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: 0.0.0
|
90
|
-
version:
|
91
|
-
- !ruby/object:Gem::Dependency
|
92
|
-
name: hoe
|
93
|
-
version_requirement:
|
94
|
-
version_requirements: !ruby/object:Gem::Version::Requirement
|
95
|
-
requirements:
|
96
|
-
- - ">="
|
97
|
-
- !ruby/object:Gem::Version
|
98
|
-
version: 1.4.0
|
99
|
-
version:
|
102
|
+
rubyforge_project: rpaste
|
103
|
+
rubygems_version: 1.0.1
|
104
|
+
signing_key:
|
105
|
+
specification_version: 2
|
106
|
+
summary: RPaste provides access to many of the online paste services
|
107
|
+
test_files:
|
108
|
+
- test/test_rpaste.rb
|