lib/down.rb in down-2.0.0 vs lib/down.rb in down-2.0.1
- old
+ new
@@ -18,14 +18,18 @@
timeout = options.delete(:timeout)
downloaded_file = uri.open({
"User-Agent" => "Down/1.0.0",
content_length_proc: proc { |size|
- raise Down::TooLarge if size && max_size && size > max_size
+ if size && max_size && size > max_size
+ raise Down::TooLarge, "file is too large (max is #{max_size/1024/1024}MB)"
+ end
},
progress_proc: proc { |current_size|
- raise Down::TooLarge if max_size && current_size > max_size
+ if max_size && current_size > max_size
+ raise Down::TooLarge, "file is too large (max is #{max_size/1024/1024}MB)"
+ end
progress.call(current_size) if progress
},
read_timeout: timeout,
redirect: false,
}.merge(options))
@@ -42,18 +46,18 @@
downloaded_file.extend DownloadedFile
downloaded_file
rescue => error
raise if error.is_a?(Down::Error)
- raise Down::NotFound, "#{error.class}: #{error.message}"
+ raise Down::NotFound, "file not found"
end
def copy_to_tempfile(basename, io)
tempfile = Tempfile.new(["down", File.extname(basename)], binmode: true)
if io.is_a?(OpenURI::Meta) && io.is_a?(Tempfile)
FileUtils.mv io.path, tempfile.path
else
- IO.copy_stream(io, tempfile.path)
+ IO.copy_stream(io, tempfile)
io.rewind
end
tempfile.open
tempfile
end