diff --git a/Changelog.md b/Changelog.md index 86458c4b872..f8066b7d3c9 100644 --- a/Changelog.md +++ b/Changelog.md @@ -34,6 +34,7 @@ Ruby 2.0 is no longer officially supported. * Improve the logging messages of Sidekiq messages [#5988](https://github.com/diaspora/diaspora/pull/5988) * Improve the logging of Eyes output [#5989](https://github.com/diaspora/diaspora/pull/5989) * Gracefully handle XML parse errors within federation [#5991](https://github.com/diaspora/diaspora/pull/5991) +* Remove zip-zip workaround gem [#6001](https://github.com/diaspora/diaspora/pull/6001) ## Bug fixes * Disable auto follow back on aspect deletion [#5846](https://github.com/diaspora/diaspora/pull/5846) diff --git a/Gemfile b/Gemfile index 4d27cd231ae..9bf54f75a0d 100644 --- a/Gemfile +++ b/Gemfile @@ -173,9 +173,9 @@ gem "rails-timeago", "2.11.0" gem "logging-rails", "0.5.0", require: "logging/rails" -# Workarounds -# https://github.com/rubyzip/rubyzip#important-note -gem "zip-zip" +# Reading and writing zip files + +gem "rubyzip", "1.1.7" # Prevent occasions where minitest is not bundled in # packaged versions of ruby. See following issues/prs: diff --git a/Gemfile.lock b/Gemfile.lock index ebe8479a3f3..d48ab4f3a51 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -718,8 +718,6 @@ GEM will_paginate (3.0.7) xpath (2.0.0) nokogiri (~> 1.3) - zip-zip (0.3) - rubyzip (>= 1.0.0) PLATFORMS ruby @@ -830,6 +828,7 @@ DEPENDENCIES rspec-rails (= 3.2.1) rubocop (= 0.31.0) ruby-oembed (= 0.8.14) + rubyzip (= 1.1.7) sass-rails (= 5.0.1) selenium-webdriver (= 2.45.0) shoulda-matchers (= 2.8.0) @@ -851,4 +850,3 @@ DEPENDENCIES uuid (= 2.3.7) webmock (= 1.21.0) will_paginate (= 3.0.7) - zip-zip diff --git a/app/models/user.rb b/app/models/user.rb index 46fe8f9f639..938422ae5c3 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -325,7 +325,7 @@ def queue_export_photos def perform_export_photos! temp_zip = Tempfile.new([username, '_photos.zip']) begin - Zip::ZipOutputStream.open(temp_zip.path) do |zos| + Zip::OutputStream.open(temp_zip.path) do |zos| photos.each do |photo| begin photo_file = photo.unprocessed_image.file diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb index 3a95098c318..517cacd856c 100644 --- a/spec/models/user_spec.rb +++ b/spec/models/user_spec.rb @@ -1065,14 +1065,14 @@ expect(@user.exported_photos_at).to be_present expect(@user.exporting_photos).to be_falsey expect(@user.exported_photos_file.filename).to match /.zip/ - expect(Zip::ZipFile.open(@user.exported_photos_file.path).entries.count).to eq(1) + expect(Zip::File.open(@user.exported_photos_file.path).entries.count).to eq(1) end it "does not add empty entries when photo not found" do File.unlink @user.photos.first.unprocessed_image.path @user.perform_export_photos! expect(@user.exported_photos_file.filename).to match /.zip/ - expect(Zip::ZipFile.open(@user.exported_photos_file.path).entries.count).to eq(0) + expect(Zip::File.open(@user.exported_photos_file.path).entries.count).to eq(0) end end