Skip to content

Commit dd1903d

Browse files
author
github-actions
committed
feat: Add loc property to RyanDataAddressError and enhance cleaning metrics tracking
- Add loc property to RyanDataAddressError for ValidationRunner field extraction - Add OperationType constants (normalization, formatting, expansion, cleaning, parsing) - Add STREET_TYPE_TO_ABBREV, DIRECTION_TO_ABBREV, UNIT_TYPE_TO_ABBREV mappings - Add new tracking methods: track_case_normalization, track_street_type_changes, track_direction_changes, track_unit_type_changes, track_punctuation_removal, track_component_parsing - Export OperationType from ryandata_address_utils package - Add 16 new tests for enhanced tracking functionality Fixes validation report showing 'unknown' field name for ZIP/state errors Provides detailed cleaning metrics for address transformation tracking
1 parent 1c21e57 commit dd1903d

7 files changed

Lines changed: 723 additions & 13 deletions

File tree

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "ryandata-address-utils"
3-
version = "0.7.1"
3+
version = "0.7.2"
44
description = "A Python address parser using usaddress with Pydantic models, validation, and extensible architecture"
55
readme = "README.md"
66
license = { text = "MIT" }

src/ryandata_address_utils/__init__.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@
5151
CleaningTracker,
5252
ValidationError,
5353
ValidationResult,
54+
# Transformation tracking
55+
OperationType,
5456
)
5557
from ryandata_address_utils.core import RyanDataError as CoreRyanDataError
5658
from ryandata_address_utils.core import (
@@ -137,6 +139,8 @@
137139
"ValidationResult",
138140
"CoreRyanDataError",
139141
"CoreRyanDataValidationError",
142+
# Transformation tracking
143+
"OperationType",
140144
# Address-specific errors
141145
"RyanDataAddressError",
142146
"RyanDataValidationError",

src/ryandata_address_utils/core/__init__.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,13 @@
5757
)
5858
from ryandata_address_utils.core.errors import RyanDataError, RyanDataValidationError
5959
from ryandata_address_utils.core.factory import PluginFactory
60-
from ryandata_address_utils.core.tracking import TransformationTracker
60+
from ryandata_address_utils.core.tracking import (
61+
DIRECTION_TO_ABBREV,
62+
STREET_TYPE_TO_ABBREV,
63+
UNIT_TYPE_TO_ABBREV,
64+
OperationType,
65+
TransformationTracker,
66+
)
6167
from ryandata_address_utils.core.zip_normalizer import (
6268
ZipCodeNormalizer,
6369
ZipCodeResult,
@@ -80,6 +86,10 @@
8086
"CleaningTracker",
8187
# Transformation tracking
8288
"TransformationTracker",
89+
"OperationType",
90+
"STREET_TYPE_TO_ABBREV",
91+
"DIRECTION_TO_ABBREV",
92+
"UNIT_TYPE_TO_ABBREV",
8393
# Validation (from abstract_validation_base)
8494
"BaseValidator",
8595
"CompositeValidator",

0 commit comments

Comments
 (0)