spreadbase 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 45c4554bad3ea396a50ac1bad824d06fe218b17392062152ab07298e636d8be6
4
- data.tar.gz: ed6a11f32c3acf8ba6d41c1b0630d36c010a707dd1039161718741acd70e830a
3
+ metadata.gz: 37e52d4079a3f0f7c0ba6fef6db24dbe8426f1f47d66904ea9fa418744719e27
4
+ data.tar.gz: 79304c560419b6500e95f9c4fb5c8d8bfbf9ffe3ed1b591125ab696be5652560
5
5
  SHA512:
6
- metadata.gz: 7d60ab79f3551f59d566940435fb75c63b05fe91ece2dbdc84f9c5e60e64ebe08dffcb76159b898b9bf16b878d97a128d744d545ac13d88bc55047b1a90f3863
7
- data.tar.gz: 69b4c6b2f7a7476826cd4990b8cbe3c3a455826e34ac8060acb2ef30749bc5b793d9b6a84969414a55e3dd6f7f05933d52cd3b50c6541eee43cb83f99a130bf4
6
+ metadata.gz: c02992b1b27f909a4df2bc93df27965b90277d0343bed2a5c0cb88c99e8ff337146ba6239aa5764f826833e2ebde0793ac20ce0170afa473b9e78796c361e38f
7
+ data.tar.gz: c02bbb08fe16bbb8dff403fac1948bc2f3457f544408c9e5bbd996fd90dbe3d4df6a68ad766f0217592f10823773bd0cdf307210b259ff1690c7ecf02ffadad9
@@ -8,7 +8,7 @@ jobs:
8
8
 
9
9
  strategy:
10
10
  matrix:
11
- ruby: ['3.0', '2.7', '2.6', '2.5', '2.4']
11
+ ruby: ['3.1', '3.0', '2.7', '2.6', '2.5', '2.4']
12
12
 
13
13
  steps:
14
14
  - name: Checkout spreadbase repository
@@ -59,8 +59,7 @@ module SpreadBase # :nodoc:
59
59
  # _returns_ the SpreadBase::Document instance.
60
60
  #
61
61
  def decode_archive(zip_buffer, options={})
62
- io = StringIO.new(zip_buffer)
63
- content_xml_data = Zip::File.new(io, false, true).read('content.xml')
62
+ content_xml_data = read_content_xml(zip_buffer)
64
63
 
65
64
  decode_content_xml(content_xml_data, options)
66
65
  end
@@ -106,6 +105,22 @@ module SpreadBase # :nodoc:
106
105
 
107
106
  private
108
107
 
108
+ def read_content_xml(zip_buffer)
109
+ io = StringIO.new(zip_buffer)
110
+
111
+ zip_file = if using_rubyzip_3?
112
+ Zip::File.new(io, buffer: true)
113
+ else
114
+ Zip::File.new(io, false, true)
115
+ end
116
+
117
+ zip_file.read('content.xml')
118
+ end
119
+
120
+ def using_rubyzip_3?
121
+ Gem.loaded_specs['rubyzip'].version >= Gem::Version.new('3.0.0')
122
+ end
123
+
109
124
  def pretty_xml(document)
110
125
  buffer = ""
111
126
 
@@ -1,3 +1,3 @@
1
1
  module SpreadBase
2
- VERSION = "0.3.0"
2
+ VERSION = "0.4.0"
3
3
  end
data/spreadbase.gemspec CHANGED
@@ -10,14 +10,14 @@ Gem::Specification.new do |s|
10
10
  s.platform = Gem::Platform::RUBY
11
11
  s.required_ruby_version = '>= 2.4.0'
12
12
  s.authors = ["Saverio Miroddi"]
13
- s.date = '2021-03-05'
13
+ s.date = '2021-12-31'
14
14
  s.email = ["saverio.pub2@gmail.com"]
15
15
  s.homepage = "https://github.com/saveriomiroddi/spreadbase"
16
16
  s.summary = %q{Library for reading/writing OpenOffice Calc documents.}
17
17
  s.description = %q{Library for reading/writing OpenOffice Calc documents.}
18
18
  s.license = "GPL-3.0"
19
19
 
20
- s.add_runtime_dependency "rubyzip", "~>2.3.0"
20
+ s.add_runtime_dependency "rubyzip", ">=2.3.0"
21
21
  s.add_development_dependency "rspec", "~>3.9.0"
22
22
 
23
23
  s.add_development_dependency "rake", "~>13.0"
metadata CHANGED
@@ -1,27 +1,27 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spreadbase
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Saverio Miroddi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-05 00:00:00.000000000 Z
11
+ date: 2021-12-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubyzip
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: 2.3.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: 2.3.0
27
27
  - !ruby/object:Gem::Dependency
@@ -108,7 +108,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
108
108
  - !ruby/object:Gem::Version
109
109
  version: '0'
110
110
  requirements: []
111
- rubygems_version: 3.2.3
111
+ rubygems_version: 3.2.22
112
112
  signing_key:
113
113
  specification_version: 4
114
114
  summary: Library for reading/writing OpenOffice Calc documents.