tumblr-rb 2.0.0 → 2.1.0
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/Gemfile +1 -1
- data/Gemfile.lock +28 -25
- data/LICENSE +2 -2
- data/README.md +9 -1
- data/lib/tumblr/client.rb +1 -1
- data/lib/tumblr/command_line_interface.rb +55 -5
- data/lib/tumblr/post.rb +11 -4
- data/lib/tumblr/post/answer.rb +8 -2
- data/lib/tumblr/post/quote.rb +9 -0
- data/lib/tumblr/version.rb +2 -2
- data/man/tumblr.1 +10 -2
- data/man/tumblr.1.html +5 -2
- data/man/tumblr.1.ronn +8 -1
- data/share/tumblr-rb.rb +3 -3
- data/tumblr-rb.gemspec +3 -2
- metadata +24 -8
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,28 +1,31 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
tumblr-rb (2.
|
5
|
-
|
6
|
-
|
4
|
+
tumblr-rb (2.1.0)
|
5
|
+
launchy (~> 2.1.2)
|
6
|
+
sinatra (~> 1.4.0)
|
7
|
+
thor (~> 0.18.0)
|
7
8
|
weary (~> 1.1.0)
|
8
9
|
|
9
10
|
GEM
|
10
11
|
remote: http://rubygems.org/
|
11
12
|
specs:
|
12
|
-
addressable (2.3.
|
13
|
-
crack (0.3.
|
13
|
+
addressable (2.3.4)
|
14
|
+
crack (0.3.2)
|
14
15
|
diff-lcs (1.1.3)
|
15
16
|
hpricot (0.8.6)
|
16
|
-
|
17
|
+
launchy (2.1.2)
|
18
|
+
addressable (~> 2.3)
|
19
|
+
multi_json (1.7.3)
|
17
20
|
mustache (0.99.4)
|
18
21
|
promise (0.3.0)
|
19
|
-
rack (1.
|
20
|
-
rack-protection (1.
|
22
|
+
rack (1.5.2)
|
23
|
+
rack-protection (1.5.0)
|
21
24
|
rack
|
22
25
|
rack-test (0.6.2)
|
23
26
|
rack (>= 1.0)
|
24
|
-
rake (0.9.
|
25
|
-
rdiscount (
|
27
|
+
rake (0.9.6)
|
28
|
+
rdiscount (2.0.7.3)
|
26
29
|
ronn (0.7.3)
|
27
30
|
hpricot (>= 0.8.2)
|
28
31
|
mustache (>= 0.7.0)
|
@@ -35,22 +38,22 @@ GEM
|
|
35
38
|
rspec-expectations (2.11.3)
|
36
39
|
diff-lcs (~> 1.1.3)
|
37
40
|
rspec-mocks (2.11.3)
|
38
|
-
simple_oauth (0.
|
39
|
-
sinatra (1.
|
40
|
-
rack (~> 1.
|
41
|
-
rack-protection (~> 1.
|
42
|
-
tilt (~> 1.3, >= 1.3.
|
43
|
-
thor (0.
|
44
|
-
tilt (1.
|
45
|
-
weary (1.1.
|
46
|
-
addressable (~> 2.3
|
47
|
-
multi_json (~> 1.
|
41
|
+
simple_oauth (0.2.0)
|
42
|
+
sinatra (1.4.2)
|
43
|
+
rack (~> 1.5, >= 1.5.2)
|
44
|
+
rack-protection (~> 1.4)
|
45
|
+
tilt (~> 1.3, >= 1.3.4)
|
46
|
+
thor (0.18.1)
|
47
|
+
tilt (1.4.1)
|
48
|
+
weary (1.1.3)
|
49
|
+
addressable (~> 2.3)
|
50
|
+
multi_json (~> 1.7)
|
48
51
|
promise (~> 0.3.0)
|
49
|
-
rack (~> 1.
|
50
|
-
simple_oauth (~> 0.
|
51
|
-
webmock (1.
|
52
|
+
rack (~> 1.5)
|
53
|
+
simple_oauth (~> 0.2)
|
54
|
+
webmock (1.9.3)
|
52
55
|
addressable (>= 2.2.7)
|
53
|
-
crack (>= 0.
|
56
|
+
crack (>= 0.3.2)
|
54
57
|
|
55
58
|
PLATFORMS
|
56
59
|
ruby
|
@@ -62,4 +65,4 @@ DEPENDENCIES
|
|
62
65
|
ronn
|
63
66
|
rspec (~> 2.11.0)
|
64
67
|
tumblr-rb!
|
65
|
-
webmock (~> 1.
|
68
|
+
webmock (~> 1.9.0)
|
data/LICENSE
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
Copyright (c) 2010-
|
1
|
+
Copyright (c) 2010-2013 Mark Wunsch
|
2
2
|
|
3
3
|
MIT License
|
4
4
|
|
@@ -19,4 +19,4 @@ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
19
19
|
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
20
|
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
21
|
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
-
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
CHANGED
@@ -59,8 +59,16 @@ Understood YAML parameters are taken from the Tumblr API: http://www.tumblr.com/
|
|
59
59
|
|
60
60
|
See [tumblr(5)](http://mwunsch.github.com/tumblr/tumblr.5.html) for more info.
|
61
61
|
|
62
|
+
## Configuration
|
63
|
+
|
64
|
+
The gem has some configuration options – API keys are kept in `~/.tumblr` and can be changed if needed. It will also use a `$TUMBLRHOST` environment variable if specified. These are usually placed in your `.bashrc` or `.zshrc`, or specified on running the `tumblr` command: `TUMBLRHOST=foo.tumblr.com tumblr post "Hello world!"`
|
65
|
+
|
66
|
+
## TODO
|
67
|
+
|
68
|
+
- [ ] Photoset support
|
69
|
+
|
62
70
|
## Copyright
|
63
71
|
|
64
|
-
The Tumblr gem is Copyright (c) 2010 -
|
72
|
+
The Tumblr gem is Copyright (c) 2010 - 2013 Mark Wunsch and is licensed under the [MIT License](http://creativecommons.org/licenses/MIT/).
|
65
73
|
|
66
74
|
Tumblr is Copyright (c) Tumblr, Inc. The Tumblr gem is NOT affiliated with Tumblr, Inc.
|
data/lib/tumblr/client.rb
CHANGED
@@ -7,7 +7,7 @@ module Tumblr
|
|
7
7
|
USER_AGENT = "Tumblr API Client (Ruby)/#{Tumblr::VERSION} (+http://github.com/mwunsch/tumblr)"
|
8
8
|
|
9
9
|
POST_OPTIONS = [
|
10
|
-
:state, :tags, :tweet, :date, :format, :slug,
|
10
|
+
:state, :tags, :tweet, :date, :format, :slug, :source_url, :source_title,
|
11
11
|
:title, :body, # Text posts
|
12
12
|
:caption, :link, :source, :data, #Photo posts
|
13
13
|
:quote, # Quote posts
|
@@ -33,7 +33,7 @@ module Tumblr
|
|
33
33
|
|
34
34
|
Writes the serialized post to STDOUT.
|
35
35
|
LONGDESC
|
36
|
-
def pipe
|
36
|
+
def pipe(*args)
|
37
37
|
if !$stdin.tty?
|
38
38
|
puts post($stdin).serialize
|
39
39
|
else
|
@@ -108,7 +108,7 @@ module Tumblr
|
|
108
108
|
end
|
109
109
|
end
|
110
110
|
|
111
|
-
desc "fetch POST_ID", "Fetch a post and write out its serialized form
|
111
|
+
desc "fetch POST_ID", "Fetch a post and write out its serialized form"
|
112
112
|
def fetch(id)
|
113
113
|
client = get_client
|
114
114
|
response = client.posts(:id => id, :filter => :raw).perform
|
@@ -126,6 +126,54 @@ module Tumblr
|
|
126
126
|
ui_success "Post #{id} successfully deleted."
|
127
127
|
end
|
128
128
|
|
129
|
+
desc "list", "List Tumblr post_ids and URLs for posts"
|
130
|
+
method_option :tag, :type => :string,
|
131
|
+
:desc => "Post tag"
|
132
|
+
method_option :type, :type => :string,
|
133
|
+
:desc => "Post type: text, quote, link, answer, video, audio, photo, chat"
|
134
|
+
def list()
|
135
|
+
client = get_client
|
136
|
+
posts = Tumblr::Post.perform client.posts(:tag => options[:tag], :type => options[:type], :filter => :text)
|
137
|
+
ui_puts Hash[ posts.map {|post| [post.id, post.post_url]} ].to_yaml
|
138
|
+
end
|
139
|
+
|
140
|
+
desc "backup <DIR>", "Download, serialize, and save all the public posts for HOST into DIR"
|
141
|
+
long_desc <<-LONGDESC
|
142
|
+
Download all of the public posts for the host tumblr, and save them into DIR.
|
143
|
+
DIR, if absent, is the current working directory.
|
144
|
+
|
145
|
+
The posts are written to .txt files with the filename {POST-ID}_{POST-SLUG}, or just the POST-ID if there is no slug.
|
146
|
+
LONGDESC
|
147
|
+
def backup(dir = Dir.getwd, offset = 0)
|
148
|
+
backup_dir = File.expand_path(dir)
|
149
|
+
unless File.directory?(backup_dir) && File.writable?(backup_dir)
|
150
|
+
ui_abort "Can't write to directory: #{backup_dir}"
|
151
|
+
end
|
152
|
+
client = get_client
|
153
|
+
response = client.posts(:filter => :raw, :offset => offset).perform
|
154
|
+
tumblr_error(response) unless response.success?
|
155
|
+
json = response.parse["response"]
|
156
|
+
total_post_count = json["blog"]["posts"]
|
157
|
+
|
158
|
+
ui_puts "Downloading #{total_post_count} posts to #{backup_dir}." if offset.zero?
|
159
|
+
|
160
|
+
posts = json["posts"].map{|post| Tumblr::Post.create(post) }
|
161
|
+
posts.each do |post|
|
162
|
+
file_name = post.id.to_s + (post.slug.empty? ? "" : "_#{post.slug}") + ".txt"
|
163
|
+
File.open(File.join(backup_dir, file_name), "w") do |f|
|
164
|
+
ui_puts "Writing file: #{f.path} for #{post.type} post #{post.id}."
|
165
|
+
f.write(post.serialize)
|
166
|
+
end
|
167
|
+
end
|
168
|
+
|
169
|
+
new_offset = offset + posts.size
|
170
|
+
if total_post_count > new_offset
|
171
|
+
backup(dir, new_offset)
|
172
|
+
else
|
173
|
+
ui_success "Downloaded #{new_offset}/#{total_post_count} posts to #{backup_dir}"
|
174
|
+
end
|
175
|
+
end
|
176
|
+
|
129
177
|
desc "authorize", "Authenticate and authorize the cli to post on your behalf"
|
130
178
|
option :port, :type => :string,
|
131
179
|
:default => "4567",
|
@@ -147,13 +195,14 @@ module Tumblr
|
|
147
195
|
LONGDESC
|
148
196
|
def authorize(*soak)
|
149
197
|
require 'tumblr/authentication'
|
198
|
+
require 'launchy'
|
150
199
|
sinatra_options = {
|
151
200
|
:port => options[:port],
|
152
201
|
:bind => options[:bind],
|
153
202
|
:credential_path => options[:credentials]
|
154
203
|
}
|
155
204
|
Tumblr::Authentication.run!(sinatra_options) do |server|
|
156
|
-
|
205
|
+
::Launchy.open("http://#{options[:bind]}:#{options[:port]}/")
|
157
206
|
end
|
158
207
|
if has_credentials?
|
159
208
|
ui_success "Success! Your Tumblr OAuth credentials were written to #{credentials.path}"
|
@@ -167,7 +216,7 @@ module Tumblr
|
|
167
216
|
puts Tumblr::VERSION
|
168
217
|
end
|
169
218
|
|
170
|
-
|
219
|
+
private
|
171
220
|
|
172
221
|
def credentials
|
173
222
|
require 'tumblr/credentials'
|
@@ -187,6 +236,7 @@ module Tumblr
|
|
187
236
|
end
|
188
237
|
|
189
238
|
def get_host
|
239
|
+
return ENV["TUMBLRHOST"] if ENV["TUMBLRHOST"]
|
190
240
|
host = ask("What is your Tumblr hostname?") if options[:host].nil? and $stdin.tty?
|
191
241
|
host ||= options[:host]
|
192
242
|
ui_abort "You need to provide a hostname i.e. --host=YOUR-NAME.tumblr.com" if host.nil? or host.empty?
|
@@ -219,4 +269,4 @@ module Tumblr
|
|
219
269
|
end
|
220
270
|
|
221
271
|
end
|
222
|
-
end
|
272
|
+
end
|
data/lib/tumblr/post.rb
CHANGED
@@ -17,7 +17,7 @@ module Tumblr
|
|
17
17
|
:blog_name, :id, :post_url, :type, :timestamp, :date, :format,
|
18
18
|
:reblog_key, :tags, :bookmarklet, :mobile, :source_url, :source_title,
|
19
19
|
:total_posts,
|
20
|
-
:photos, :dialogue, :player # Post-specific response fields
|
20
|
+
:photos, :dialogue, :player, :text, :question, :asking_name, :asking_url # Post-specific response fields
|
21
21
|
]
|
22
22
|
|
23
23
|
# Some post types have several "body keys", which allow the YAML front-matter
|
@@ -81,9 +81,12 @@ module Tumblr
|
|
81
81
|
meta_data["format"] ||= "markdown"
|
82
82
|
|
83
83
|
post_type = get_post_type(meta_data["type"])
|
84
|
-
|
85
|
-
|
86
|
-
|
84
|
+
pairs = if post_type.post_body_keys.length > 1
|
85
|
+
pair_post_body_types(post_type.post_body_keys, doc_body.split(POST_BODY_SEPARATOR).dup)
|
86
|
+
else
|
87
|
+
[[post_type.post_body_keys.first, doc_body]]
|
88
|
+
end
|
89
|
+
|
87
90
|
Hash[pairs].merge(meta_data)
|
88
91
|
end
|
89
92
|
|
@@ -228,6 +231,10 @@ module Tumblr
|
|
228
231
|
@slug
|
229
232
|
end
|
230
233
|
|
234
|
+
def post_url
|
235
|
+
@post_url
|
236
|
+
end
|
237
|
+
|
231
238
|
# These are handy convenience methods.
|
232
239
|
|
233
240
|
def markdown?
|
data/lib/tumblr/post/answer.rb
CHANGED
data/lib/tumblr/post/quote.rb
CHANGED
@@ -4,6 +4,7 @@ module Tumblr
|
|
4
4
|
def initialize(post_data = {})
|
5
5
|
super(post_data)
|
6
6
|
@type = :quote
|
7
|
+
@quote ||= @text
|
7
8
|
end
|
8
9
|
|
9
10
|
def quote
|
@@ -14,6 +15,14 @@ module Tumblr
|
|
14
15
|
@source
|
15
16
|
end
|
16
17
|
|
18
|
+
def source_url
|
19
|
+
@source_url
|
20
|
+
end
|
21
|
+
|
22
|
+
def source_title
|
23
|
+
@source_title
|
24
|
+
end
|
25
|
+
|
17
26
|
def self.post_body_keys
|
18
27
|
[:quote]
|
19
28
|
end
|
data/lib/tumblr/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
module Tumblr
|
2
|
-
VERSION = "2.
|
3
|
-
end
|
2
|
+
VERSION = "2.1.0"
|
3
|
+
end
|
data/man/tumblr.1
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "TUMBLR" "1" "
|
4
|
+
.TH "TUMBLR" "1" "May 2013" "Mark Wunsch" "Tumblr Manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBtumblr\fR \- publish to tumblr\.com
|
@@ -41,10 +41,18 @@ Fetch \fIPOST_ID\fR from tumblr and write out its serialized form\.
|
|
41
41
|
Delete \fIPOST_ID\fR from tumblr\.
|
42
42
|
.
|
43
43
|
.TP
|
44
|
+
\fBtumblr list\fR
|
45
|
+
Print a YAML listing of Post IDs to Post URLs\.
|
46
|
+
.
|
47
|
+
.TP
|
44
48
|
\fBtumblr help\fR [\fITASK\fR]
|
45
49
|
Print the help message and the description for \fITASK\fR\.
|
46
50
|
.
|
47
51
|
.TP
|
52
|
+
\fBtumblr backup\fR [\fIDIR\fR]
|
53
|
+
Download, serialize, and save all the public posts for this \fIHOST\fR into \fIDIR\fR\. \fIDIR\fR will default to the current working directory\.
|
54
|
+
.
|
55
|
+
.TP
|
48
56
|
\fBtumblr authorize\fR
|
49
57
|
Start a web server and application to authenticate to tumblr and authorize the cli\. See \fIAUTHORIZATION\fR
|
50
58
|
.
|
@@ -152,7 +160,7 @@ $ tumblr post \-d http://www\.youtube\.com/watch?v=CW0DUg63lqU
|
|
152
160
|
.IP "" 0
|
153
161
|
.
|
154
162
|
.SH "COPYRIGHT"
|
155
|
-
Tumblr (the gem) is Copyright (C) 2010 \-
|
163
|
+
Tumblr (the gem) is Copyright (C) 2010 \- 2013 Mark Wunsch
|
156
164
|
.
|
157
165
|
.P
|
158
166
|
Tumblr is Copyright (c) Tumblr, Inc\. The Tumblr gem is NOT affiliated with Tumblr, Inc\.
|
data/man/tumblr.1.html
CHANGED
@@ -100,7 +100,10 @@
|
|
100
100
|
Will open the serialized post in the foreground with $TUMBLREDITOR then $EDITOR.</p></dd>
|
101
101
|
<dt><code>tumblr fetch</code> <var>POST_ID</var></dt><dd><p> Fetch <var>POST_ID</var> from tumblr and write out its serialized form.</p></dd>
|
102
102
|
<dt><code>tumblr delete</code> <var>POST_ID</var></dt><dd><p> Delete <var>POST_ID</var> from tumblr.</p></dd>
|
103
|
+
<dt><code>tumblr list</code></dt><dd><p>Print a YAML listing of Post IDs to Post URLs.</p></dd>
|
103
104
|
<dt><code>tumblr help</code> [<var>TASK</var>]</dt><dd><p> Print the help message and the description for <var>TASK</var>.</p></dd>
|
105
|
+
<dt><code>tumblr backup</code> [<var>DIR</var>]</dt><dd><p>Download, serialize, and save all the public posts for this <var>HOST</var> into <var>DIR</var>.
|
106
|
+
<var>DIR</var> will default to the current working directory.</p></dd>
|
104
107
|
<dt><code>tumblr authorize</code></dt><dd><p> Start a web server and application to authenticate to tumblr and authorize the cli.
|
105
108
|
See <a href="#AUTHORIZATION" title="AUTHORIZATION" data-bare-link="true">AUTHORIZATION</a></p></dd>
|
106
109
|
<dt><code>tumblr version</code></dt><dd><p> Print the <code>tumblr</code> version and quit.</p></dd>
|
@@ -168,7 +171,7 @@ Alternatively, use the <code>$TUMBLRCRED</code> environment variable.</p>
|
|
168
171
|
|
169
172
|
<h2 id="COPYRIGHT">COPYRIGHT</h2>
|
170
173
|
|
171
|
-
<p>Tumblr (the gem) is Copyright (C) 2010 -
|
174
|
+
<p>Tumblr (the gem) is Copyright (C) 2010 - 2013 Mark Wunsch</p>
|
172
175
|
|
173
176
|
<p>Tumblr is Copyright (c) Tumblr, Inc. The Tumblr gem is NOT affiliated with Tumblr, Inc.</p>
|
174
177
|
|
@@ -179,7 +182,7 @@ Alternatively, use the <code>$TUMBLRCRED</code> environment variable.</p>
|
|
179
182
|
|
180
183
|
<ol class='man-decor man-foot man foot'>
|
181
184
|
<li class='tl'>Mark Wunsch</li>
|
182
|
-
<li class='tc'>
|
185
|
+
<li class='tc'>May 2013</li>
|
183
186
|
<li class='tr'>tumblr(1)</li>
|
184
187
|
</ol>
|
185
188
|
|
data/man/tumblr.1.ronn
CHANGED
@@ -34,9 +34,16 @@ If you preface your plaintext file with a bit of YAML (<yaml.org>) frontmatter,
|
|
34
34
|
* `tumblr delete` <POST_ID>:
|
35
35
|
Delete <POST_ID> from tumblr.
|
36
36
|
|
37
|
+
* `tumblr list`:
|
38
|
+
Print a YAML listing of Post IDs to Post URLs.
|
39
|
+
|
37
40
|
* `tumblr help` [<TASK>]:
|
38
41
|
Print the help message and the description for <TASK>.
|
39
42
|
|
43
|
+
* `tumblr backup` [<DIR>]:
|
44
|
+
Download, serialize, and save all the public posts for this <HOST> into <DIR>.
|
45
|
+
<DIR> will default to the current working directory.
|
46
|
+
|
40
47
|
* `tumblr authorize`:
|
41
48
|
Start a web server and application to authenticate to tumblr and authorize the cli.
|
42
49
|
See [AUTHORIZATION][]
|
@@ -103,7 +110,7 @@ Save it as a draft:
|
|
103
110
|
|
104
111
|
## COPYRIGHT
|
105
112
|
|
106
|
-
Tumblr (the gem) is Copyright (C) 2010 -
|
113
|
+
Tumblr (the gem) is Copyright (C) 2010 - 2013 Mark Wunsch
|
107
114
|
|
108
115
|
Tumblr is Copyright (c) Tumblr, Inc. The Tumblr gem is NOT affiliated with Tumblr, Inc.
|
109
116
|
|
data/share/tumblr-rb.rb
CHANGED
@@ -18,7 +18,7 @@ class RubyGemFormula < Formula
|
|
18
18
|
ENV['GEM_HOME']="#{prefix}"
|
19
19
|
ENV['GEM_PATH']="#{prefix}"
|
20
20
|
system "gem", "install", "tumblr-rb",
|
21
|
-
"--version", "2.
|
21
|
+
"--version", "2.1.0",
|
22
22
|
"--no-rdoc", "--no-ri",
|
23
23
|
"--install-dir", prefix
|
24
24
|
bin.rmtree
|
@@ -43,7 +43,7 @@ load "#{file}"
|
|
43
43
|
end
|
44
44
|
|
45
45
|
class TumblrRb < RubyGemFormula
|
46
|
-
url "http://rubygems.org/downloads/tumblr-rb-2.
|
46
|
+
url "http://rubygems.org/downloads/tumblr-rb-2.1.0.gem"
|
47
47
|
homepage "http://rubygems.org/gems/tumblr-rb"
|
48
|
-
version "2.
|
48
|
+
version "2.1.0"
|
49
49
|
end
|
data/tumblr-rb.gemspec
CHANGED
@@ -16,6 +16,7 @@ Gem::Specification.new do |gem|
|
|
16
16
|
gem.version = Tumblr::VERSION
|
17
17
|
|
18
18
|
gem.add_runtime_dependency "weary", "~> 1.1.0"
|
19
|
-
gem.add_runtime_dependency "sinatra", "~> 1.
|
20
|
-
gem.add_runtime_dependency "thor", "~> 0.
|
19
|
+
gem.add_runtime_dependency "sinatra", "~> 1.4.0"
|
20
|
+
gem.add_runtime_dependency "thor", "~> 0.18.0"
|
21
|
+
gem.add_runtime_dependency "launchy", "~> 2.1.2"
|
21
22
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tumblr-rb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-05-19 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: weary
|
@@ -34,7 +34,7 @@ dependencies:
|
|
34
34
|
requirements:
|
35
35
|
- - ~>
|
36
36
|
- !ruby/object:Gem::Version
|
37
|
-
version: 1.
|
37
|
+
version: 1.4.0
|
38
38
|
type: :runtime
|
39
39
|
prerelease: false
|
40
40
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -42,7 +42,7 @@ dependencies:
|
|
42
42
|
requirements:
|
43
43
|
- - ~>
|
44
44
|
- !ruby/object:Gem::Version
|
45
|
-
version: 1.
|
45
|
+
version: 1.4.0
|
46
46
|
- !ruby/object:Gem::Dependency
|
47
47
|
name: thor
|
48
48
|
requirement: !ruby/object:Gem::Requirement
|
@@ -50,7 +50,7 @@ dependencies:
|
|
50
50
|
requirements:
|
51
51
|
- - ~>
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version: 0.
|
53
|
+
version: 0.18.0
|
54
54
|
type: :runtime
|
55
55
|
prerelease: false
|
56
56
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -58,7 +58,23 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - ~>
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 0.
|
61
|
+
version: 0.18.0
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: launchy
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ~>
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: 2.1.2
|
70
|
+
type: :runtime
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ~>
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: 2.1.2
|
62
78
|
description: Ruby library and command line utility to interact with the Tumblr API.
|
63
79
|
email:
|
64
80
|
- mark@markwunsch.com
|
@@ -123,7 +139,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
123
139
|
version: '0'
|
124
140
|
segments:
|
125
141
|
- 0
|
126
|
-
hash:
|
142
|
+
hash: 3871275753992045384
|
127
143
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
128
144
|
none: false
|
129
145
|
requirements:
|
@@ -132,7 +148,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
132
148
|
version: '0'
|
133
149
|
segments:
|
134
150
|
- 0
|
135
|
-
hash:
|
151
|
+
hash: 3871275753992045384
|
136
152
|
requirements: []
|
137
153
|
rubyforge_project:
|
138
154
|
rubygems_version: 1.8.23
|