ndr_import 11.4.1 → 11.5.0

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: 126526e53b9a41befd988c332ee181142e5917c491daa0310341e1b9ee9d9728
4
- data.tar.gz: 6fa42ce8d1bff9030f13b3498cbd3c783cd73484d04246a5ed2c6c8b48e66b07
3
+ metadata.gz: c96ccb2b8ec749a6f0b14836b2ba0e9006f50016988447ffd6833471ef2386ac
4
+ data.tar.gz: f0602bf4c5f5df488261792843951d4c939e7e05249ea818b0ded27172047741
5
5
  SHA512:
6
- metadata.gz: d2ef81755bc31b84725d3e170ca4b88de89d78b98518eaae72b6e8048ec28ab3b39f01afe2bf61bc31362573d470b576529d8fb614c8e85dffbc5b5da209c5d9
7
- data.tar.gz: f12ebb30d9943a653dcd9d97706678f03702072ab2de7e673e002d70c9dc1c113e8c1886b29d3870e2d8c40510ecf1316bd9531c7ea47f4cbaf1df594c7429e8
6
+ metadata.gz: 0aa09835563161998d8d86165bb94346d71528dbf07ee4830ed19c1887466d2b955a583f8ad5e264ae1bc46c69b4025d844c422de391ce72ef942624721e6b62
7
+ data.tar.gz: 61c1cb4a0959cdcab990f27120493fedf45e4df3c10e243a853ed77ada29374b33cc5aa0e7ab8a1a93d125e195c1e85d7881657f896c923ef80dbcea585c4a16
data/CHANGELOG.md CHANGED
@@ -1,6 +1,12 @@
1
1
  ## [Unreleased]
2
+
2
3
  *no unreleased changes*
3
4
 
5
+ ## 11.5.0 / 2026-06-25
6
+ ### Fixed
7
+ * Support Rails 8.1, Ruby 4.0. Drop support for Ruby 3.2
8
+ * Allow direct assignment of `table.table_metadata`
9
+
4
10
  ## 11.4.1 / 2025-11-05
5
11
  ### Fixed
6
12
  * Support Ruby 3.4. Drop support for Ruby 3.0 and 3.1, Rails 6.1 and 7.0
data/SECURITY.md ADDED
@@ -0,0 +1,35 @@
1
+ # Security
2
+
3
+ NHS England takes security and the protection of private data extremely seriously. If you believe you have found a vulnerability or other issue which has compromised or could compromise the security of any of our systems and/or private data managed by our systems, please do not hesitate to contact us using the methods outlined below.
4
+
5
+ ## Table of Contents
6
+
7
+ - [Security](#security)
8
+ - [Table of Contents](#table-of-contents)
9
+ - [Reporting a vulnerability](#reporting-a-vulnerability)
10
+ - [Email](#email)
11
+ - [NCSC](#ncsc)
12
+ - [General Security Enquiries](#general-security-enquiries)
13
+
14
+ ## Reporting a vulnerability
15
+
16
+ Please note, email is our preferred method of receiving reports.
17
+
18
+ ### Email
19
+
20
+ If you wish to notify us of a vulnerability via email, please include detailed information on the nature of the vulnerability and any steps required to reproduce it.
21
+
22
+ You can reach us at:
23
+
24
+ - [Brian.Shand@nhs.net](mailto:Brian.Shand@nhs.net)
25
+ - [cybersecurity@nhs.net](mailto:cybersecurity@nhs.net)
26
+
27
+ ### NCSC
28
+
29
+ You can send your report to the National Cyber Security Centre, who will assess your report and pass it on to NHS England if necessary.
30
+
31
+ You can report vulnerabilities here: [https://www.ncsc.gov.uk/information/vulnerability-reporting](https://www.ncsc.gov.uk/information/vulnerability-reporting)
32
+
33
+ ## General Security Enquiries
34
+
35
+ If you have general enquiries regarding our cybersecurity, please reach out to us at [cybersecurity@nhs.net](mailto:cybersecurity@nhs.net)
@@ -11,9 +11,9 @@ module NdrImport
11
11
  include NdrImport::Mapper
12
12
 
13
13
  def self.all_valid_options
14
- %w[canonical_name delimiter liberal_parsing filename_pattern file_password last_data_column
15
- tablename_pattern header_lines footer_lines format klass columns slurp row_identifier
16
- significant_mapped_fields]
14
+ %w[canonical_name delimiter liberal_parsing filename_pattern file_password
15
+ last_data_column tablename_pattern header_lines footer_lines
16
+ format klass columns slurp row_identifier significant_mapped_fields table_metadata]
17
17
  end
18
18
 
19
19
  def all_valid_options
@@ -72,7 +72,7 @@ module NdrImport
72
72
 
73
73
  # This method does the table row yielding for the extract method, setting the notifier
74
74
  # so that we can monitor progress
75
- def yield_tables_and_their_content(filename, tables, &block)
75
+ def yield_tables_and_their_content(filename, tables, &)
76
76
  return enum_for(:yield_tables_and_their_content, filename, tables) unless block_given?
77
77
 
78
78
  tables.each do |tablename, table_content, file_metadata|
@@ -80,7 +80,9 @@ module NdrImport
80
80
  next if mapping.nil?
81
81
 
82
82
  mapping.notifier = get_notifier(record_total(filename, table_content))
83
- mapping.table_metadata = file_metadata || {}
83
+ # Merge file_metadata (from VCF or XML) with directly assigned table_metadata
84
+ # to form `table_metadata`
85
+ mapping.table_metadata = (mapping.table_metadata || {}).merge(file_metadata || {})
84
86
  yield(mapping, table_content)
85
87
  end
86
88
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
  # This stores the current version of the NdrImport gem
3
3
  module NdrImport
4
- VERSION = '11.4.1'
4
+ VERSION = '11.5.0'
5
5
  end
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.4.1
4
+ version: 11.5.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: 2025-11-05 00:00:00.000000000 Z
11
+ date: 2026-06-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -33,7 +33,7 @@ dependencies:
33
33
  version: '7.1'
34
34
  - - "<"
35
35
  - !ruby/object:Gem::Version
36
- version: '8.1'
36
+ version: '8.2'
37
37
  type: :runtime
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '7.1'
44
44
  - - "<"
45
45
  - !ruby/object:Gem::Version
46
- version: '8.1'
46
+ version: '8.2'
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: ndr_support
49
49
  requirement: !ruby/object:Gem::Requirement
@@ -406,6 +406,7 @@ files:
406
406
  - LICENSE.txt
407
407
  - README.md
408
408
  - Rakefile
409
+ - SECURITY.md
409
410
  - exe/pdf_acro_form_to_yaml
410
411
  - exe/pdf_to_text
411
412
  - exe/word_to_text
@@ -472,7 +473,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
472
473
  requirements:
473
474
  - - ">="
474
475
  - !ruby/object:Gem::Version
475
- version: '3.2'
476
+ version: '3.3'
476
477
  required_rubygems_version: !ruby/object:Gem::Requirement
477
478
  requirements:
478
479
  - - ">="