10da69785SJohann Duscher# Changelog 20da69785SJohann Duscher 30da69785SJohann DuscherAll notable changes to the Delete Page Guard plugin will be documented in this file. 40da69785SJohann Duscher 50da69785SJohann DuscherThe format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), 60da69785SJohann Duscherand this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). 70da69785SJohann Duscher 80da69785SJohann Duscher## [1.0.0] - 2025-01-02 90da69785SJohann Duscher 100da69785SJohann Duscher### Added 110da69785SJohann Duscher- Initial release of Delete Page Guard plugin 120da69785SJohann Duscher- Protection of pages from deletion via empty save operations 130da69785SJohann Duscher- PCRE regular expression pattern matching 140da69785SJohann Duscher- Support for matching against page ID or file path 150da69785SJohann Duscher- Administrator bypass functionality 160da69785SJohann Duscher- Configurable exempt user groups 170da69785SJohann Duscher- Whitespace-only content handling (trim mode) 180da69785SJohann Duscher- Configuration via DokuWiki Configuration Manager 190da69785SJohann Duscher- English language support 20*1a97af9eSJohann Duscher- **Pattern validation system** with real-time error detection 21*1a97af9eSJohann Duscher- **Admin interface** for testing and validating regex patterns 22*1a97af9eSJohann Duscher- **Comprehensive error messaging** for administrators 230da69785SJohann Duscher 240da69785SJohann Duscher### Security 250da69785SJohann Duscher- Regex pattern validation to prevent malformed expressions 260da69785SJohann Duscher- Basic ReDoS (Regular Expression Denial of Service) protection 270da69785SJohann Duscher- Input sanitization and validation 280da69785SJohann Duscher- Execution timeout protection for regex matching 29*1a97af9eSJohann Duscher- Pattern complexity limits to prevent performance issues 300da69785SJohann Duscher 310da69785SJohann Duscher### Technical 320da69785SJohann Duscher- Integration with DokuWiki's `COMMON_WIKIPAGE_SAVE` event 330da69785SJohann Duscher- Proper event handling with `preventDefault()` and `stopPropagation()` 340da69785SJohann Duscher- GPL v2 licensing with proper headers 350da69785SJohann Duscher- Standard DokuWiki plugin structure 360da69785SJohann Duscher- Comprehensive documentation and examples 370da69785SJohann Duscher 380da69785SJohann Duscher[1.0.0]: https://github.com/jonnydee/deletepageguard/releases/tag/v1.0.0