Skip to content

Pain001 v0.0.45 - CLI Dry-Run Mode & Enterprise Logging

Choose a tag to compare

@sebastienrousseau sebastienrousseau released this 14 Jan 11:08

Pain001 Release v0.0.45

Release Date: 2026-01-14
Tag: v0.0.45
Python: 3.9+
Status: Stable

Executive Summary

This release introduces two major enhancements for validation workflows and observability: a CLI dry-run mode for pre-flight validation without XML generation, and enterprise-grade structured logging with standardized events and automatic PII protection.

New Features

🔍 CLI Dry-Run Mode (#81)

Validates XML template, XSD schema, and payment data without generating XML files, enabling CI/CD pre-flight checks and validation workflows.

Key Features:

  • --dry-run / --validate-only flag for validation-only mode
  • Returns exit code 0 on success, 1 on validation failure
  • Validates template structure, XSD compliance, and data integrity
  • Supports all input sources (CSV, SQLite, Python list/dict)

Use Cases:

  • Pre-commit hooks for data validation
  • CI/CD pipeline integration
  • Data quality checks before batch processing
  • Template and schema validation during development

🛡️ Enterprise Structured Logging (#102)

Standardized event names and fields across CLI and library for enterprise-grade observability and log aggregation.

Key Features:

  • 17 standardized event types (process lifecycle, validation, data loading)
  • 20 standardized field names (JSON-formatted for machine parsing)
  • Automatic PII masking (IBANs, BICs, names, amounts)
  • GDPR Article 32 & PCI-DSS Requirement 3.4 compliant
  • Compatible with Splunk, Datadog, Elasticsearch, CloudWatch

Quality Metrics

  • Tests: 435/435 passing (99.30% coverage)
  • Security: 0 vulnerabilities
  • Performance: XML generation <500ms/1000 transactions
  • Type Safety: Full mypy compliance
  • Code Quality: Pylint 9.95/10

Installation

pip install --upgrade pain001==0.0.45

Links


Fully backward compatible with v0.0.44. No breaking changes.