diff --git a/.travis.yml b/.travis.yml index 4045e955..216758c1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,6 +3,7 @@ rvm: - 2.5 - 2.6 - 2.7 + - 3.0 - ruby-head - jruby-9.1.6.0 env: diff --git a/Gemfile b/Gemfile index 5438ac99..e3fd9035 100755 --- a/Gemfile +++ b/Gemfile @@ -10,6 +10,7 @@ group :test do gem 'simplecov', '>= 0.9.0', require: false gem 'coveralls', require: false gem "minitest-reporters" + gem 'webrick' if RUBY_VERSION >= '3.0.0' end group :local_development do diff --git a/lib/roo/excelx.rb b/lib/roo/excelx.rb index 83aa9e4b..91ebc1e0 100755 --- a/lib/roo/excelx.rb +++ b/lib/roo/excelx.rb @@ -429,6 +429,11 @@ def process_zipfile_entries(entries) entries.each do |entry| path = case entry.name.downcase + when /richdata/ + # FIXME: Ignore richData as parsing is not implemented yet and can cause + # Zip::DestinationFileExistsError when including a second "styles.xml" entry + # see http://schemas.microsoft.com/office/spreadsheetml/2017/richdata2 + nil when /sharedstrings.xml$/ "#{@tmpdir}/roo_sharedStrings.xml" when /styles.xml$/