flickru 0.5.1 → 0.6.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e82254f660673608d3200decbd1d63d62dc9c561
4
- data.tar.gz: f4739986f5c5ee1fb8dec91d7b3af67d2d30697e
3
+ metadata.gz: 72e16e0762f4fd5e9f5f7273a3ac3d709b7fc4c5
4
+ data.tar.gz: 9fc37f4bbd55c749d8e02f79700ef2e7e8613a43
5
5
  SHA512:
6
- metadata.gz: e6a1d84080fce3b8a0a38d19ae841ca43fc0a4130f1f8db4e3a9f22b4d571822e5f18b12a61ef205b1578c6629a11fd1fb78a4509aff627a5118dcc97c8d851e
7
- data.tar.gz: c9cbcf2d8d1e36dca6088e9f389034f6c508b5dd7eeacf5201e469369d87a2060ad05906f7c80ae0c27af5f8795e8e6fde1f914201ea2f4ce77eb27d2eba46fa
6
+ metadata.gz: c839dc78d9da45abd827527d74afabc9f4766dc7239fbd037fe818e36a8ac90e4da6571d491bcbfa213f1536ca2fcd26e9a7b250d0a1bc9023d8faf24c09bf14
7
+ data.tar.gz: b714bb96e49bc53fde01e577a26af9394107ee012b57222c25ccbd9b3cdd1894646a274215908f1e232d7327dfad8b6bc28c697f21904c09554eb0803c38de67
data/bin/flickru CHANGED
@@ -6,12 +6,17 @@
6
6
  require 'flickru'
7
7
  require 'flickru/version'
8
8
 
9
+ rmFlag = false
10
+
9
11
  if ARGV[0] == "-h" or ARGV[0] == "--help"
10
12
  Flickru.usage
11
13
  exit
12
14
  elsif ARGV[0] == "-v" or ARGV[0] == "--version"
13
15
  puts Flickru::VERSION
14
16
  exit
17
+ elsif ARGV[0] == "-r" or ARGV[0] == "--rm"
18
+ rmFlag = true
19
+ ARGV.shift
15
20
  elsif ARGV.length != 1
16
21
  Flickru.usage
17
22
  Flickru.die __LINE__, "wrong number of arguments" +
@@ -28,4 +33,4 @@ elsif not File.directory? photo_dir
28
33
  Flickru.die __LINE__, "'#{ARGV[0]}' is not directory"
29
34
  end
30
35
 
31
- Flickru.flickru photo_dir
36
+ Flickru.flickru rmFlag, photo_dir
data/lib/flickru.rb CHANGED
@@ -18,8 +18,12 @@ module Flickru
18
18
  def Flickru.usage
19
19
  filename = File.basename __FILE__
20
20
  Printer.show "#{filename} -- Flickr upload command-line automator\n"
21
- Printer.show "usage: #{filename} [-h|--help|-v|--version] <photo directory>\n"
21
+ Printer.show "usage: #{filename} [<options>] <photo directory>\n"
22
22
  Printer.show "example: #{filename} my_photos\n"
23
+ Printer.show "options:\n"
24
+ Printer.show " -h, --help show help\n"
25
+ Printer.show " -r, --rm delete each photo when uploaded\n"
26
+ Printer.show " -v, --version show version\n"
23
27
  readme = File.expand_path(File.join(File.dirname(__FILE__), '..', 'README'))
24
28
  Printer.show "\n#{IO.read(readme)}"
25
29
  end
@@ -57,7 +61,7 @@ rescue
57
61
  raise RuntimeError, "unable to write configuration file #{config_filename}"
58
62
  end
59
63
 
60
- def self.flickru photo_dir
64
+ def self.flickru rmFlag, photo_dir
61
65
  begin
62
66
  Flickru.read_config
63
67
  rescue RuntimeError
@@ -74,15 +78,23 @@ def self.flickru photo_dir
74
78
  photos.sort.each do |photo|
75
79
  Printer.info "file '#{File.join File.basename(File.dirname(photo)), File.basename(photo)}' under process"
76
80
  begin
81
+ retries ||= 0
77
82
  photo_id = Flickr.upload_photo photo
78
83
  photoset_ids << Flickr.classify(photo, photo_id)
79
- rescue ArgumentError || Errno::ENOENT || Errno::EAGAIN || FlickRaw::FailedResponse
80
- Printer.failure "#{photo}: #{$!}"
84
+ rescue ArgumentError || Errno::ENOENT || Errno::EAGAIN || Errno::EPIPE || FlickRaw::FailedResponse
85
+ if (retries += 1) < 3
86
+ Printer.warn "retrying #{photo}: #{$!}"
87
+ sleep (Math.exp retries)
88
+ retry
89
+ else
90
+ Printer.failure "#{photo}: #{$!}"
91
+ end
81
92
  end
82
93
  journey.take File.size(photo)
83
94
  Printer.info "#{File.human_readable_size journey.progress} uploaded, " +
84
95
  "#{File.human_readable_size journey.distance} remaining. " +
85
96
  "ETA: #{Printer.human_readable_seconds journey.eta}" if journey.eta > 0
97
+ File.delete photo if rmFlag
86
98
  end
87
99
 
88
100
  photoset_ids.each do |set_id|
@@ -93,7 +105,7 @@ def self.flickru photo_dir
93
105
  " better primary photos for your sets have been uploaded,\n" +
94
106
  " and better collection mosaics can be randomised."
95
107
  rescue Exception => e
96
- file_line = e.backtrace[0].split(':')
108
+ file_line = e.backtrace.empty? ? "?" : e.backtrace[0].split(':')
97
109
  Flickru.die "#{File.basename file_line[-3]}:#{file_line[-2]}", e.message
98
110
  end
99
111
 
data/lib/flickru/file.rb CHANGED
@@ -90,9 +90,9 @@ class File
90
90
  elsif file_size < 1000000
91
91
  (file_size / 1000).to_s + "KB"
92
92
  elsif file_size < 1000000000
93
- (file_size / 1000000).to_s + "MB"
93
+ (file_size / 100000).to_s + "MB"
94
94
  else
95
- (file_size / 1000000000).to_s + "GB"
95
+ (file_size / 1000000000.0).round.to_s + "GB" # with float division
96
96
  end
97
97
  end
98
98
 
@@ -1,5 +1,5 @@
1
1
  module Flickru
2
2
  unless defined? VERSION
3
- VERSION = "0.5.1"
3
+ VERSION = "0.6.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flickru
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jesus Pardillo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-10-17 00:00:00.000000000 Z
11
+ date: 2016-11-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -236,7 +236,8 @@ executables:
236
236
  - flickru
237
237
  - geowiki
238
238
  extensions: []
239
- extra_rdoc_files: []
239
+ extra_rdoc_files:
240
+ - README
240
241
  files:
241
242
  - README
242
243
  - bin/flickru
@@ -314,7 +315,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
314
315
  requirements:
315
316
  - - ">="
316
317
  - !ruby/object:Gem::Version
317
- version: '0'
318
+ version: '2.3'
318
319
  required_rubygems_version: !ruby/object:Gem::Requirement
319
320
  requirements:
320
321
  - - ">="