data-validation-engine 0.7.0__tar.gz → 0.7.2__tar.gz
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.
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/PKG-INFO +9 -3
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/pyproject.toml +29 -7
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/readers/csv.py +4 -2
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/rules.py +1 -1
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/rules.py +1 -1
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/metadata/reporting.py +7 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/configuration/v1/filters.py +2 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/pipeline/foundry_ddb_pipeline.py +6 -2
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/reporting/excel_report.py +4 -1
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/LICENSE +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/README.md +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/common/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/common/error_utils.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/base/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/base/auditing.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/base/backend.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/base/contract.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/base/core.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/base/reader.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/base/reference_data.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/base/rules.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/base/utilities.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/exceptions.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/auditing.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/contract.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/duckdb_helpers.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/readers/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/readers/json.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/readers/xml.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/reference_data.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/types.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/duckdb/utilities.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/auditing.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/backend.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/contract.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/readers/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/readers/csv.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/readers/json.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/readers/xml.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/reference_data.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/spark_helpers.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/types.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/implementations/spark/utilities.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/metadata/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/metadata/contract.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/metadata/rules.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/readers/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/readers/csv.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/readers/utilities.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/readers/xml.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/readers/xml_linting.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/types.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/utilities.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/configuration/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/configuration/base.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/configuration/v1/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/configuration/v1/rule_stores/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/configuration/v1/rule_stores/models.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/configuration/v1/steps.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/constants.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/engine.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/exceptions.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/functions/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/functions/implementations.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/loggers.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/message.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/models.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/templating.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/type_hints.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/validation.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/domain_types.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/exc.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/function_library.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/function_wrapper.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/model_generator.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/models.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/utilities.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/exceptions.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/file_handling/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/file_handling/helpers.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/file_handling/implementations/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/file_handling/implementations/base.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/file_handling/implementations/dbfs.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/file_handling/implementations/file.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/file_handling/implementations/s3.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/file_handling/log_handler.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/file_handling/service.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/file_handling/utilities.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/type_hints.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/parser/utilities.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/pipeline/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/pipeline/duckdb_pipeline.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/pipeline/pipeline.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/pipeline/spark_pipeline.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/pipeline/utils.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/reporting/__init__.py +0 -0
- {data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/reporting/error_report.py +0 -0
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: data-validation-engine
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.2
|
|
4
4
|
Summary: `nhs data validation engine` is a framework used to validate data
|
|
5
|
+
License-Expression: MIT
|
|
5
6
|
License-File: LICENSE
|
|
6
7
|
Author: NHS England
|
|
7
8
|
Author-email: england.contactus@nhs.net
|
|
8
9
|
Requires-Python: >=3.10,<3.12
|
|
9
|
-
Classifier: Operating System :: OS Independent
|
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.10
|
|
12
12
|
Classifier: Programming Language :: Python :: 3.11
|
|
13
|
+
Classifier: Operating System :: OS Independent
|
|
13
14
|
Classifier: Topic :: Software Development :: Libraries
|
|
14
15
|
Classifier: Typing :: Typed
|
|
15
16
|
Requires-Dist: Jinja2 (==3.1.*)
|
|
@@ -22,9 +23,14 @@ Requires-Dist: openpyxl (>=3.1,<4.0)
|
|
|
22
23
|
Requires-Dist: pandas (>=2.2.2,<3.0.0)
|
|
23
24
|
Requires-Dist: polars (==0.20.*)
|
|
24
25
|
Requires-Dist: pyarrow (>=17.0.0,<18.0.0)
|
|
25
|
-
Requires-Dist: pydantic (==1.10.
|
|
26
|
+
Requires-Dist: pydantic (==1.10.16)
|
|
26
27
|
Requires-Dist: pyspark (==3.4.*)
|
|
27
28
|
Requires-Dist: typing_extensions (>=4.6.2,<5.0.0)
|
|
29
|
+
Project-URL: Changelog, https://github.com/NHSDigital/data-validation-engine/blob/main/CHANGELOG.md
|
|
30
|
+
Project-URL: Documentation, https://nhsdigital.github.io/data-validation-engine/
|
|
31
|
+
Project-URL: Homepage, https://github.com/NHSDigital/data-validation-engine
|
|
32
|
+
Project-URL: Issues, https://github.com/NHSDigital/data-validation-engine/issues
|
|
33
|
+
Project-URL: Repository, https://github.com/NHSDigital/data-validation-engine.git
|
|
28
34
|
Description-Content-Type: text/markdown
|
|
29
35
|
|
|
30
36
|
<h1 style="display: flex; align-items: center; gap: 10px;">
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
[
|
|
1
|
+
[project]
|
|
2
2
|
name = "data-validation-engine"
|
|
3
|
-
|
|
3
|
+
dynamic = [ "version" ]
|
|
4
4
|
description = "`nhs data validation engine` is a framework used to validate data"
|
|
5
|
-
authors = [
|
|
6
|
-
|
|
7
|
-
packages = [
|
|
8
|
-
{ include = "dve", from = "src" },
|
|
5
|
+
authors = [
|
|
6
|
+
{ name = "NHS England", email = "england.contactus@nhs.net" }
|
|
9
7
|
]
|
|
8
|
+
readme = "README.md"
|
|
10
9
|
classifiers = [
|
|
11
10
|
"Programming Language :: Python :: 3",
|
|
12
11
|
"Programming Language :: Python :: 3.10",
|
|
@@ -15,6 +14,20 @@ classifiers = [
|
|
|
15
14
|
"Topic :: Software Development :: Libraries",
|
|
16
15
|
"Typing :: Typed",
|
|
17
16
|
]
|
|
17
|
+
license = "MIT"
|
|
18
|
+
|
|
19
|
+
[project.urls]
|
|
20
|
+
Homepage = "https://github.com/NHSDigital/data-validation-engine"
|
|
21
|
+
Documentation = "https://nhsdigital.github.io/data-validation-engine/"
|
|
22
|
+
Repository = "https://github.com/NHSDigital/data-validation-engine.git"
|
|
23
|
+
Issues = "https://github.com/NHSDigital/data-validation-engine/issues"
|
|
24
|
+
Changelog = "https://github.com/NHSDigital/data-validation-engine/blob/main/CHANGELOG.md"
|
|
25
|
+
|
|
26
|
+
[tool.poetry]
|
|
27
|
+
version = "0.7.2"
|
|
28
|
+
packages = [
|
|
29
|
+
{ include = "dve", from = "src" },
|
|
30
|
+
]
|
|
18
31
|
|
|
19
32
|
[tool.poetry.dependencies]
|
|
20
33
|
python = ">=3.10,<3.12"
|
|
@@ -28,7 +41,7 @@ openpyxl = "^3.1"
|
|
|
28
41
|
pandas = "^2.2.2"
|
|
29
42
|
polars = "0.20.*"
|
|
30
43
|
pyarrow = "^17.0.0"
|
|
31
|
-
pydantic = "1.10.
|
|
44
|
+
pydantic = "1.10.16"
|
|
32
45
|
pyspark = "3.4.*"
|
|
33
46
|
typing_extensions = "^4.6.2"
|
|
34
47
|
|
|
@@ -78,6 +91,15 @@ types-setuptools = "68.2.0.0"
|
|
|
78
91
|
types-urllib3 = "1.26.25.14"
|
|
79
92
|
types-xmltodict = "0.13.0.3"
|
|
80
93
|
|
|
94
|
+
[tool.poetry.group.docs]
|
|
95
|
+
optional = true
|
|
96
|
+
|
|
97
|
+
[tool.poetry.group.docs.dependencies]
|
|
98
|
+
click = "8.2.1"
|
|
99
|
+
mkdocs = "^1.6.1"
|
|
100
|
+
mkdocstrings = { version = "^1.0.3", extras = ["python"] }
|
|
101
|
+
zensical = "~=0.0.23"
|
|
102
|
+
|
|
81
103
|
[tool.ruff]
|
|
82
104
|
line-length = 100
|
|
83
105
|
|
|
@@ -82,11 +82,12 @@ class DuckDBCSVReader(BaseFileReader):
|
|
|
82
82
|
messages=[
|
|
83
83
|
FeedbackMessage(
|
|
84
84
|
entity=entity_name,
|
|
85
|
-
record=
|
|
85
|
+
record={"missing_fields": missing},
|
|
86
86
|
failure_type="submission",
|
|
87
87
|
error_location="Whole File",
|
|
88
|
+
reporting_field="missing_fields",
|
|
88
89
|
error_code=self.field_check_error_code,
|
|
89
|
-
error_message=f"{self.field_check_error_message}
|
|
90
|
+
error_message=f"{self.field_check_error_message}", # pylint: disable=line-too-long
|
|
90
91
|
)
|
|
91
92
|
],
|
|
92
93
|
)
|
|
@@ -202,6 +203,7 @@ class DuckDBCSVRepeatingHeaderReader(PolarsToDuckDBCSVReader):
|
|
|
202
203
|
`NonDistinctHeaderError`.
|
|
203
204
|
|
|
204
205
|
So using the example above, the expected entity would look like this...
|
|
206
|
+
|
|
205
207
|
| headerCol1 | headerCol2 | headerCol3 |
|
|
206
208
|
| ---------- | ---------- | ---------- |
|
|
207
209
|
| shop1 | clothes | 2025-01-01 |
|
|
@@ -505,7 +505,7 @@ class DuckDBStepImplementations(BaseStepImplementations[DuckDBPyRelation]):
|
|
|
505
505
|
messages.append(
|
|
506
506
|
FeedbackMessage(
|
|
507
507
|
entity=config.reporting.reporting_entity_override or config.entity_name,
|
|
508
|
-
original_entity=config.entity_name,
|
|
508
|
+
original_entity=config.reporting.original_entity_override or config.entity_name,
|
|
509
509
|
record=record, # type: ignore
|
|
510
510
|
error_location=config.reporting.legacy_location,
|
|
511
511
|
error_message=template_object(config.reporting.message, record), # type: ignore
|
|
@@ -401,7 +401,7 @@ class SparkStepImplementations(BaseStepImplementations[DataFrame]):
|
|
|
401
401
|
# more complex extraction done in reporting module
|
|
402
402
|
FeedbackMessage(
|
|
403
403
|
entity=config.reporting.reporting_entity_override or config.entity_name,
|
|
404
|
-
original_entity=config.entity_name,
|
|
404
|
+
original_entity=config.reporting.original_entity_override or config.entity_name,
|
|
405
405
|
record=record.asDict(recursive=True),
|
|
406
406
|
error_location=config.reporting.legacy_location,
|
|
407
407
|
error_message=template_object(
|
|
@@ -10,6 +10,7 @@ from typing_extensions import Literal
|
|
|
10
10
|
|
|
11
11
|
from dve.core_engine.templating import template_object
|
|
12
12
|
from dve.core_engine.type_hints import (
|
|
13
|
+
EntityName,
|
|
13
14
|
ErrorCategory,
|
|
14
15
|
ErrorCode,
|
|
15
16
|
ErrorEmitValue,
|
|
@@ -102,6 +103,12 @@ class BaseReportingConfig(BaseModel):
|
|
|
102
103
|
If this is not provided, the top level names from the `location` field
|
|
103
104
|
will be used in the report.
|
|
104
105
|
|
|
106
|
+
"""
|
|
107
|
+
original_entity_override: Optional[EntityName] = None
|
|
108
|
+
"""
|
|
109
|
+
This should only be populated where you need to refer back to an originally defined entity that
|
|
110
|
+
contains the key field(s) of interest. This might be required in cases where you've created
|
|
111
|
+
lots of new entities during a complex rule.
|
|
105
112
|
"""
|
|
106
113
|
|
|
107
114
|
def template(
|
|
@@ -24,6 +24,7 @@ class ConcreteFilterConfig(BaseModel):
|
|
|
24
24
|
reporting_field: Optional[Union[str, list[str]]] = None
|
|
25
25
|
reporting_field_name: Optional[str] = None
|
|
26
26
|
category: ErrorCategory = "Bad value"
|
|
27
|
+
original_entity_override: Optional[str] = None
|
|
27
28
|
|
|
28
29
|
def to_step(self) -> AbstractStep:
|
|
29
30
|
"""Create a deferred filter from the concrete filter config."""
|
|
@@ -37,6 +38,7 @@ class ConcreteFilterConfig(BaseModel):
|
|
|
37
38
|
legacy_is_informational=self.is_informational,
|
|
38
39
|
legacy_location=self.error_location,
|
|
39
40
|
legacy_reporting_field=self.reporting_field,
|
|
41
|
+
original_entity_override=self.original_entity_override,
|
|
40
42
|
)
|
|
41
43
|
|
|
42
44
|
return DeferredFilter(
|
|
@@ -42,11 +42,15 @@ class FoundryDDBPipeline(DDBDVEPipeline):
|
|
|
42
42
|
write_to.parent.mkdir(parents=True, exist_ok=True)
|
|
43
43
|
write_to = write_to.as_posix()
|
|
44
44
|
self.write_parquet( # type: ignore # pylint: disable=E1101
|
|
45
|
-
self._audit_tables._processing_status.get_relation()
|
|
45
|
+
self._audit_tables._processing_status.get_relation().filter( # pylint: disable=W0212
|
|
46
|
+
f"submission_id = '{submission_info.submission_id}'"
|
|
47
|
+
),
|
|
46
48
|
fh.joinuri(write_to, "processing_status.parquet"),
|
|
47
49
|
)
|
|
48
50
|
self.write_parquet( # type: ignore # pylint: disable=E1101
|
|
49
|
-
self._audit_tables._submission_statistics.get_relation()
|
|
51
|
+
self._audit_tables._submission_statistics.get_relation().filter( # pylint: disable=W0212
|
|
52
|
+
f"submission_id = '{submission_info.submission_id}'"
|
|
53
|
+
),
|
|
50
54
|
fh.joinuri(write_to, "submission_statistics.parquet"),
|
|
51
55
|
)
|
|
52
56
|
return write_to
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/reporting/excel_report.py
RENAMED
|
@@ -135,8 +135,11 @@ class SummaryItems:
|
|
|
135
135
|
if "Status" not in self.summary_dict:
|
|
136
136
|
summary.append(["", "Status", status])
|
|
137
137
|
|
|
138
|
+
_key_renames = {
|
|
139
|
+
"File Size": "File Size (Bytes)",
|
|
140
|
+
}
|
|
138
141
|
for key, value in self.summary_dict.items():
|
|
139
|
-
summary.append(["", key, str(value)])
|
|
142
|
+
summary.append(["", _key_renames.get(key, key), str(value)])
|
|
140
143
|
|
|
141
144
|
summary.append(["", ""])
|
|
142
145
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/backends/types.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/constants.py
RENAMED
|
File without changes
|
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/exceptions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/loggers.py
RENAMED
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/message.py
RENAMED
|
File without changes
|
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/templating.py
RENAMED
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/type_hints.py
RENAMED
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/core_engine/validation.py
RENAMED
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/exc.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/models.py
RENAMED
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/metadata_parser/utilities.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/pipeline/duckdb_pipeline.py
RENAMED
|
File without changes
|
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/pipeline/spark_pipeline.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{data_validation_engine-0.7.0 → data_validation_engine-0.7.2}/src/dve/reporting/error_report.py
RENAMED
|
File without changes
|