ndr_import 11.0.1 → 11.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -2
- data/lib/ndr_import/file/excel.rb +1 -1
- data/lib/ndr_import/helpers/file/excel.rb +1 -1
- data/lib/ndr_import/helpers/file/xml.rb +5 -0
- data/lib/ndr_import/version.rb +1 -1
- data/lib/ndr_import/xml/table.rb +8 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1acf9db0301b6da991e890e74db10573ff666dd732eda4b58ba90e03370bb32a
|
4
|
+
data.tar.gz: eba9da2d2d9f5fa98c3a7f8745086f3945c363844f4d1f8fc1dc6c38ab4bcb5b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8509511d4f54f36344e09d380da53f168f8fa94efd4eec2d73e29c80811bd644d853bb82a835bf7ddf2820202b8abad28cbe0d265de3557e2af8adca4f12b178
|
7
|
+
data.tar.gz: 384d8365d4e6ba741bf6b76a1ecfe1bf1bb92c6fd0e737489d2d3a13047d9e557b883c339ff2f89f372071140a071bcbedfdd303b588dda79d58870bab0be2e6
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,15 @@
|
|
1
1
|
## [Unreleased]
|
2
2
|
=======
|
3
|
-
*no unreleased changes*
|
3
|
+
* no unreleased changes *
|
4
|
+
|
5
|
+
## 11.1.0 / 2024-03-07
|
6
|
+
### Added
|
7
|
+
* XML table should not expect column mappings for empty nodes/elements
|
8
|
+
|
9
|
+
## 11.0.2 / 2024-02-06
|
10
|
+
### Fixed
|
11
|
+
* Resolve Rails 7 deprecation warnings
|
12
|
+
* Fix XML parsing with latest `nokogiri` 1.16.0
|
4
13
|
|
5
14
|
## 11.0.1 / 2023-10-30
|
6
15
|
### Fixed
|
@@ -10,7 +19,7 @@
|
|
10
19
|
### Changed
|
11
20
|
* XML enhancements. Breaking change, the enhancements are not backward compatible
|
12
21
|
### Fixed
|
13
|
-
* Replace unsupported seven_zip_ruby gem with seven-zip fork
|
22
|
+
* Replace unsupported `seven_zip_ruby` gem with seven-zip fork
|
14
23
|
|
15
24
|
## 10.3.0 / 2023-09-07
|
16
25
|
### Added
|
@@ -22,6 +22,11 @@ module NdrImport
|
|
22
22
|
doc = nil
|
23
23
|
|
24
24
|
escaping_control_chars_if_necessary(preserve_control_chars, file_data) do
|
25
|
+
if Nokogiri::XML('<?xml version="1.0" encoding="UTF-16"?><body/>').
|
26
|
+
errors.first.message.match?(/Blank needed here\z/)
|
27
|
+
# Nokogiri 1.16.0 workaround for UTF-16 data.
|
28
|
+
file_data.sub!('UTF-16', 'UTF-8')
|
29
|
+
end
|
25
30
|
doc = Nokogiri::XML(file_data, &:huge)
|
26
31
|
doc.encoding = 'UTF-8'
|
27
32
|
emulate_strict_mode_fatal_check!(doc)
|
data/lib/ndr_import/version.rb
CHANGED
data/lib/ndr_import/xml/table.rb
CHANGED
@@ -169,6 +169,8 @@ module NdrImport
|
|
169
169
|
xpaths = []
|
170
170
|
|
171
171
|
line.xpath('.//*[not(child::*)]').each do |node|
|
172
|
+
next unless populated?(node)
|
173
|
+
|
172
174
|
xpath = node.path.sub("#{line.path}/", '')
|
173
175
|
if node.attributes.any?
|
174
176
|
node.attributes.each_key { |key| xpaths << "#{xpath}/@#{key}" }
|
@@ -179,6 +181,12 @@ module NdrImport
|
|
179
181
|
xpaths
|
180
182
|
end
|
181
183
|
|
184
|
+
def populated?(node)
|
185
|
+
node.element_children.empty? &&
|
186
|
+
!node.is_a?(Nokogiri::XML::Comment) && !node.text? && !node.cdata? &&
|
187
|
+
!(node.attributes.empty? && node.content.strip.blank?)
|
188
|
+
end
|
189
|
+
|
182
190
|
def build_xpath_from(column)
|
183
191
|
column_name = column_name_from(column)
|
184
192
|
column['xml_cell'].presence ? relative_path_from(column, column_name) : column_name
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ndr_import
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 11.0
|
4
|
+
version: 11.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- NCRS Development Team
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-03-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activemodel
|
@@ -465,7 +465,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
465
465
|
- !ruby/object:Gem::Version
|
466
466
|
version: '0'
|
467
467
|
requirements: []
|
468
|
-
rubygems_version: 3.
|
468
|
+
rubygems_version: 3.2.3
|
469
469
|
signing_key:
|
470
470
|
specification_version: 4
|
471
471
|
summary: NDR Import
|