Skip to content

Release v0.0.38

Choose a tag to compare

@sebastienrousseau sebastienrousseau released this 11 Jan 18:46

Pain001 v0.0.38 Release Notes

Pain001 Banner

📚 Documentation Transformation & PyData Theme Migration

Release Date: January 11, 2026

We are excited to announce Pain001 v0.0.38, a major documentation release featuring a complete migration to the professional PyData Sphinx Theme and comprehensive documentation overhaul. This release elevates Pain001's documentation to enterprise standards with professional appearance, improved navigation, and extensive guides.


🎨 Major Changes

Documentation Platform Upgrade

  • PyData Sphinx Theme Migration: Replaced sphinx-rtd-theme with industry-standard PyData Sphinx theme
    • Professional, modern appearance matching industry standards (pydata.org)
    • Improved navigation with sidebar and enhanced search
    • Responsive design for mobile and desktop
    • Light/dark mode support
    • Integrated GitHub icon links and external resources

Theme Configuration & Branding

  • Professional Theme Configuration:
    • Added GitHub repository links
    • PyPI package direct links
    • pain001.com external link
    • Proper footer with copyright and Sphinx version info
    • Navbar with logo, navigation, and icon links
    • Configurable level-based navigation sidebar

Documentation Content Expansion

New Documentation Files

  1. installation.rst - Comprehensive Installation Guide

    • Multiple installation methods (pip, Poetry, Conda)
    • Development environment setup
    • System requirements
    • Verification steps
    • Troubleshooting section
  2. usage.rst - Complete Usage Guide

    • Quick start examples
    • CSV file processing with field specifications
    • SQLite database integration
    • Python data structure support
    • Data validation details
    • ISO 20022 version comparison
    • Advanced configuration options
    • Error handling patterns
    • Common workflow examples
    • Logging and debugging setup
  3. configuration.rst - Detailed Configuration Guide

    • XML template configuration with examples
    • CSV column mapping table (pain.001.001.03 specification)
    • ISO 20022 version-specific settings (v03-v11)
    • Validation configuration options
    • Environment variable settings
    • Performance tuning recommendations
    • Security configuration best practices
    • Common issues and solutions
  4. examples.rst - Real-World Examples

    • 8 production-ready code examples:
      • Basic SEPA payment processing
      • Batch CSV file processing
      • Database-driven payment processing
      • Multi-version support
      • Error handling and logging
      • Large batch processing with chunking
      • Payment amount validation
      • Custom processing pipeline
    • Each example with complete working code
    • Error handling demonstrations
  5. faq.rst - Comprehensive FAQ

    • 50+ frequently asked questions
    • General questions about Pain001
    • Installation & setup section
    • Usage patterns and data sources
    • Validation & error troubleshooting
    • Payment processing specifics
    • Integration guidance
    • Security best practices
    • Getting help resources
  6. glossary.rst - ISO 20022 & Payment Terms Glossary

    • 100+ term definitions
    • ISO 20022 terminology
    • Payment processing concepts
    • SEPA-specific terms
    • Bank and financial institution terms
    • Technical and business rule definitions

Enhanced Landing Page (index.rst)

  • Professional Landing Page Design:
    • Executive summary with key benefits
    • Feature grid with icon links
    • Comprehensive version support table (pain.001.001.03 - v11)
    • Value proposition sections ("Why Pain001?")
    • 3-step getting started guide
    • Organized table of contents with multiple sections
    • Search-optimized structure

Enhanced Sphinx Extensions

  • Added sphinx_design for professional card layouts and grids
  • Added myst_parser for Markdown support alongside reStructuredText
  • Improved Napoleon extension configuration for NumPy-style docstrings
  • Enhanced autodoc for better API documentation

✨ Documentation Features

Navigation & Discoverability

  • Professional navbar with GitHub/PyPI links
  • Sidebar navigation with expandable sections
  • Breadcrumb navigation
  • Related links between documentation sections
  • Search optimization with proper heading anchors

Content Quality

  • Consistency: Unified formatting and structure across all guides
  • Completeness: Covers installation, usage, configuration, and advanced topics
  • Clarity: Step-by-step instructions with code examples
  • Practicality: Real-world examples for common use cases
  • Accessibility: Clear explanations, proper formatting, code highlighting

Code Examples

  • 50+ Working Code Snippets covering:
    • Quick start examples
    • Data source handling (CSV, SQLite, Python)
    • Validation and error handling
    • Batch processing
    • Multi-version support
    • Integration patterns

Professional Appearance

  • Matches industry standards (comparable to pydata.org)
  • Modern color scheme and typography
  • Professional footer and branding
  • Responsive design
  • High accessibility standards

📖 Documentation Structure

docs/
├── index.rst (Enhanced landing page)
├── installation.rst (NEW - Installation guide)
├── usage.rst (NEW - Usage guide)
├── configuration.rst (NEW - Configuration reference)
├── examples.rst (NEW - Real-world examples)
├── faq.rst (NEW - Frequently asked questions)
├── glossary.rst (NEW - ISO 20022 terminology)
└── modules.rst (API reference)

🔄 Theme Dependencies Updated

  • Removed: sphinx-rtd-theme
  • Added:
    • pydata-sphinx-theme (^0.15.0) - Professional theme
    • sphinx-design (^0.6.0) - Grid and card components
    • myst-parser (^2.0.0) - Markdown support

🚀 How to Access Documentation

Documentation is now hosted with professional appearance:


📊 Documentation Metrics

Metric Value Status
Total Documentation Pages 9
Code Examples 50+
FAQ Questions 50+
Glossary Terms 100+
Installation Methods Documented 5
Real-World Examples 8

🎯 What's Documented

Getting Started

  • Installation via pip, Poetry, Conda
  • Quick start in 3 steps
  • System requirements
  • Verification

Core Features

  • CSV file processing with field mappings
  • SQLite database integration
  • Python data structure support
  • Data validation (types, formats, business rules)
  • XML schema validation

Advanced Topics

  • Batch processing with chunking
  • Error handling patterns
  • Logging and debugging
  • Performance tuning
  • Security configuration
  • Multi-version support (pain.001.001.03 - v11)

Reference

  • Complete field mapping table
  • Version-specific configuration
  • Environment variable settings
  • Troubleshooting guide
  • ISO 20022 terminology glossary

🔧 Implementation Details

Configuration Updates (conf.py)

# PyData theme with professional configuration
html_theme = "pydata_sphinx_theme"
html_theme_options = {
    "navbar_start": ["navbar-logo"],
    "navbar_center": ["navbar-nav"],
    "navbar_end": ["navbar-icon-links"],
    "icon_links": [
        {"name": "GitHub", "url": "...", "icon": "fab fa-github-square"},
        {"name": "PyPI", "url": "...", "icon": "fas fa-box"},
    ],
    "use_edit_page_button": True,
    "show_nav_level": 2,
}

Documentation Workflow Updates

  • Updated .github/workflows/docs.yml to use latest PyData dependencies
  • Automated documentation builds and deployment on every commit
  • XSD schema validation included in CI/CD

📋 Backward Compatibility

Fully Compatible

  • All Pain001 v0.0.37 functionality preserved
  • No API changes
  • No breaking changes
  • Documentation is enhancement-only

🙏 Benefits

For End Users

  • Professional, intuitive documentation interface
  • Easy navigation with table of contents
  • Search functionality
  • Dark/light mode support
  • Mobile-responsive design

For Contributors

  • Markdown and reStructuredText support
  • Easy to extend and maintain
  • Professional appearance attracts community
  • Modern tooling (sphinx-design, myst-parser)

For Teams

  • Enterprise-grade documentation standards
  • Comprehensive guides for onboarding
  • Complete troubleshooting resources
  • Professional branding and appearance

🔍 Quality Assurance

All documentation:

  • ✅ Tested with multiple Python versions (3.9+)
  • ✅ Verified with working code examples
  • ✅ Spell-checked and reviewed
  • ✅ Cross-referenced for consistency
  • ✅ Optimized for search engines
  • ✅ Validated against Sphinx standards

🎓 Next Steps

  1. Explore the Documentation: Visit https://docs.pain001.com/
  2. Follow the Installation Guide: Get started in minutes
  3. Review the Examples: Learn from real-world use cases
  4. Consult the FAQ: Find answers to common questions
  5. Reference the Glossary: Understand ISO 20022 terminology

📊 Existing Features (Preserved from v0.0.37)

Feature Status
CI/CD Pipeline ✅ Fixed in v0.0.37
Code Quality ✅ 10.00/10 lint score
Type Checking ✅ mypy no errors
Test Coverage ✅ 98.57% (341 tests)
Security ✅ XXE protection, SQL injection prevention
ISO 20022 Support ✅ v03 - v11

🤝 Thank You

This release represents a significant investment in making Pain001 more accessible and professional. Thank you for using Pain001!

For questions or feedback, please: