simple-spreadsheet-extractor 0.17.0 → 0.18.1

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
  SHA256:
3
- metadata.gz: 8d5351032c2b34dfcce4bed0469415ab1b98e8f11f305d8e76bca707ed2554e1
4
- data.tar.gz: 01d1abb6c2f8a025ab489f1a83e9b9c627bbc67f151fb3ace3968175b4c69cb2
3
+ metadata.gz: c1f09b5a39ba002c7a3c35d18c830ac88d7453a962e615e5a776e5c091edfc50
4
+ data.tar.gz: 8253440c0c1b754d7d9d65d3114c8fc5c11ce543fac6785ba0e06f645b729b36
5
5
  SHA512:
6
- metadata.gz: 29bea0ec37798888a1e414ed947015c8c991450e8e017b0f4dde822c88ce5ceea32197cd3c93b5f8886bc704be2946c82edb9c7410235f17c53150509485e846
7
- data.tar.gz: aad58ac8c66c8091ae3d9f1d05366c889727cc3f07981d2c9841a02e25dfc289060c57327d6d79b087ae9df8685ecf98ce3f63a9b1ea23300b5c870114802515
6
+ metadata.gz: 7fcf27eb87ca55de77bc17062b078411168c0c388360b429ef537bf2fcaa6fc25e01c3d013252d2fa9276794aaa8f634a55903b6b45270dab1a27ccf65f8c8e8
7
+ data.tar.gz: 7a59b952710bc5d6f7846fe76a40cf856fcfacdee07bd1e5006f7ad2465fc637639292227d106cf7f4569aef42408c35d7740f6c57d55a833e7994caf1ba2d9f
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- ruby-2.7.6
1
+ ruby-3.1.4
data/doc/schema-v1.xsd CHANGED
@@ -93,9 +93,9 @@
93
93
  <xsd:element name="row" type="Row" minOccurs="0"
94
94
  maxOccurs="unbounded" />
95
95
  </xsd:sequence>
96
- <xsd:attribute name="first_row" type="xsd:positiveInteger"
96
+ <xsd:attribute name="first_row" type="xsd:nonNegativeInteger"
97
97
  use="required"></xsd:attribute>
98
- <xsd:attribute name="last_row" type="xsd:positiveInteger"
98
+ <xsd:attribute name="last_row" type="xsd:nonNegativeInteger"
99
99
  use="required"></xsd:attribute>
100
100
  </xsd:complexType>
101
101
 
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -6,7 +6,7 @@ module SysMODB
6
6
 
7
7
  # handles the delegation to java
8
8
  class Extractor
9
- JAR_VERSION = '0.16.0'.freeze
9
+ JAR_VERSION = '0.18.1'.freeze
10
10
  DEFAULT_PATH = File.dirname(__FILE__) + "/../../jars/simple-spreadsheet-extractor-#{JAR_VERSION}.jar"
11
11
 
12
12
  def initialize(memory_allocation)
@@ -38,13 +38,15 @@ module SysMODB
38
38
  end
39
39
  end
40
40
 
41
- def spreadsheet_extractor_command(filepath, format = 'xml', sheet = nil, trim = false)
42
- command = "java -Xmx#{@memory_allocation} -jar #{(defined? SPREADSHEET_EXTRACTOR_JAR_PATH) ? SPREADSHEET_EXTRACTOR_JAR_PATH : DEFAULT_PATH}"
43
- command += " -o #{format}"
44
- command += " -s #{sheet}" if sheet
45
- command += ' -t' if trim
46
- command += " < #{filepath}"
47
- command
41
+ def spreadsheet_extractor_command_line(filepath, format = 'xml', sheet = false, trim = false)
42
+
43
+ args = "-Xmx#{@memory_allocation} -jar #{(defined? SPREADSHEET_EXTRACTOR_JAR_PATH) ? SPREADSHEET_EXTRACTOR_JAR_PATH : DEFAULT_PATH}"
44
+ args += " -o :format"
45
+ args += " -s :sheet" if sheet
46
+ args += ' -t' if trim
47
+ args += " < :filepath"
48
+ args += " 2>:error_log_path"
49
+ Terrapin::CommandLine.new("java", args)
48
50
  end
49
51
 
50
52
  def is_windows?
@@ -52,11 +54,13 @@ module SysMODB
52
54
  end
53
55
 
54
56
  def execute_command_line(filepath, format = 'xml', sheet = nil, trim = false)
55
- command = spreadsheet_extractor_command filepath, format, sheet, trim
56
- begin
57
- Terrapin::CommandLine.new(command).run.strip
58
- rescue Terrapin::ExitStatusError, Terrapin::CommandNotFoundError => e
59
- raise SpreadsheetExtractionException, e.message
57
+ command_line = spreadsheet_extractor_command_line filepath, format, !!sheet, trim
58
+ Tempfile.create('spreadsheet-extraction-error-log') do |f|
59
+ begin
60
+ command_line.run(format: format, sheet: sheet, filepath: filepath, error_log_path: f.path).strip
61
+ rescue Terrapin::ExitStatusError, Terrapin::CommandNotFoundError
62
+ raise SpreadsheetExtractionException, f.read
63
+ end
60
64
  end
61
65
  end
62
66
 
@@ -1,3 +1,3 @@
1
1
  module SysMODB
2
- VERSION = '0.17.0'.freeze
2
+ VERSION = '0.18.1'.freeze
3
3
  end
@@ -20,12 +20,12 @@ Gem::Specification.new do |spec|
20
20
  spec.require_paths = ['lib']
21
21
 
22
22
  spec.add_dependency('libxml-ruby', '~> 2.9')
23
- spec.add_dependency('terrapin', '~> 0.6')
23
+ spec.add_dependency('terrapin','~>1.0')
24
24
 
25
- spec.add_development_dependency('rubocop','~> 1.25')
25
+ spec.add_development_dependency('rubocop','~>1.25')
26
26
  spec.add_development_dependency('rubycritic')
27
- spec.add_development_dependency('bundler','~> 2.3')
27
+ spec.add_development_dependency('bundler')
28
28
 
29
- spec.add_development_dependency('rake')
30
- spec.add_development_dependency('minitest','~>5.14')
29
+ spec.add_development_dependency('rake','~>13.0')
30
+ spec.add_development_dependency('minitest','~>5.1')
31
31
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple-spreadsheet-extractor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.0
4
+ version: 0.18.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stuart Owen
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2022-12-16 00:00:00.000000000 Z
13
+ date: 2024-02-01 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: libxml-ruby
@@ -32,14 +32,14 @@ dependencies:
32
32
  requirements:
33
33
  - - "~>"
34
34
  - !ruby/object:Gem::Version
35
- version: '0.6'
35
+ version: '1.0'
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - "~>"
41
41
  - !ruby/object:Gem::Version
42
- version: '0.6'
42
+ version: '1.0'
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: rubocop
45
45
  requirement: !ruby/object:Gem::Requirement
@@ -72,44 +72,44 @@ dependencies:
72
72
  name: bundler
73
73
  requirement: !ruby/object:Gem::Requirement
74
74
  requirements:
75
- - - "~>"
75
+ - - ">="
76
76
  - !ruby/object:Gem::Version
77
- version: '2.3'
77
+ version: '0'
78
78
  type: :development
79
79
  prerelease: false
80
80
  version_requirements: !ruby/object:Gem::Requirement
81
81
  requirements:
82
- - - "~>"
82
+ - - ">="
83
83
  - !ruby/object:Gem::Version
84
- version: '2.3'
84
+ version: '0'
85
85
  - !ruby/object:Gem::Dependency
86
86
  name: rake
87
87
  requirement: !ruby/object:Gem::Requirement
88
88
  requirements:
89
- - - ">="
89
+ - - "~>"
90
90
  - !ruby/object:Gem::Version
91
- version: '0'
91
+ version: '13.0'
92
92
  type: :development
93
93
  prerelease: false
94
94
  version_requirements: !ruby/object:Gem::Requirement
95
95
  requirements:
96
- - - ">="
96
+ - - "~>"
97
97
  - !ruby/object:Gem::Version
98
- version: '0'
98
+ version: '13.0'
99
99
  - !ruby/object:Gem::Dependency
100
100
  name: minitest
101
101
  requirement: !ruby/object:Gem::Requirement
102
102
  requirements:
103
103
  - - "~>"
104
104
  - !ruby/object:Gem::Version
105
- version: '5.14'
105
+ version: '5.1'
106
106
  type: :development
107
107
  prerelease: false
108
108
  version_requirements: !ruby/object:Gem::Requirement
109
109
  requirements:
110
110
  - - "~>"
111
111
  - !ruby/object:Gem::Version
112
- version: '5.14'
112
+ version: '5.1'
113
113
  description: Takes a stream to a spreadsheet file and produces an XML or CSV representation
114
114
  of its contents
115
115
  email:
@@ -128,18 +128,23 @@ files:
128
128
  - Rakefile
129
129
  - doc/schema-v1.xsd
130
130
  - examples/example.rb
131
- - jars/lib/commons-codec-1.10.jar
132
- - jars/lib/commons-collections4-4.1.jar
133
- - jars/lib/curvesapi-1.04.jar
134
- - jars/lib/dom4j-1.6.1.jar
135
- - jars/lib/log4j-1.2.17.jar
136
- - jars/lib/poi-3.17.jar
137
- - jars/lib/poi-ooxml-3.17.jar
138
- - jars/lib/poi-ooxml-schemas-3.17.jar
139
- - jars/lib/xercesImpl-2.11.0.jar
131
+ - jars/lib/SparseBitSet-1.2.jar
132
+ - jars/lib/commons-codec-1.15.jar
133
+ - jars/lib/commons-collections4-4.4.jar
134
+ - jars/lib/commons-compress-1.21.jar
135
+ - jars/lib/commons-io-2.11.0.jar
136
+ - jars/lib/commons-math3-3.6.1.jar
137
+ - jars/lib/curvesapi-1.07.jar
138
+ - jars/lib/log4j-1.2-api-2.20.0.jar
139
+ - jars/lib/log4j-api-2.18.0.jar
140
+ - jars/lib/log4j-core-2.20.0.jar
141
+ - jars/lib/poi-5.2.3.jar
142
+ - jars/lib/poi-ooxml-5.2.3.jar
143
+ - jars/lib/poi-ooxml-lite-5.2.3.jar
144
+ - jars/lib/xercesImpl-2.12.2.jar
140
145
  - jars/lib/xml-apis-1.4.01.jar
141
- - jars/lib/xmlbeans-2.6.0.jar
142
- - jars/simple-spreadsheet-extractor-0.16.0.jar
146
+ - jars/lib/xmlbeans-5.1.1.jar
147
+ - jars/simple-spreadsheet-extractor-0.18.1.jar
143
148
  - lib/simple-spreadsheet-extractor.rb
144
149
  - lib/sysmodb/extractor.rb
145
150
  - lib/sysmodb/simple-spreadsheet-extractor.rb
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file