xref: /plugin/deletepageguard/CHANGELOG.md (revision 1a97af9eab9d5c777e1efac4ced808b8ed81e4af)
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