xref: /plugin/deletepageguard/CHANGELOG.md (revision 9a383d51b90310842e2a3f0f9d693178d0875b32)
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
8*9a383d51SJohann Duscher## [1.0.0] - 2025-11-02
90da69785SJohann Duscher
100da69785SJohann Duscher### Added
11*9a383d51SJohann Duscher
120da69785SJohann Duscher- Initial release of Delete Page Guard plugin
130da69785SJohann Duscher- Protection of pages from deletion via empty save operations
140da69785SJohann Duscher- PCRE regular expression pattern matching
150da69785SJohann Duscher- Support for matching against page ID or file path
160da69785SJohann Duscher- Administrator bypass functionality
170da69785SJohann Duscher- Configurable exempt user groups
180da69785SJohann Duscher- Whitespace-only content handling (trim mode)
190da69785SJohann Duscher- Configuration via DokuWiki Configuration Manager
200da69785SJohann Duscher- English language support
211a97af9eSJohann Duscher- **Pattern validation system** with real-time error detection
221a97af9eSJohann Duscher- **Admin interface** for testing and validating regex patterns
231a97af9eSJohann Duscher- **Comprehensive error messaging** for administrators
240da69785SJohann Duscher
250da69785SJohann Duscher### Security
26*9a383d51SJohann Duscher
270da69785SJohann Duscher- Regex pattern validation to prevent malformed expressions
280da69785SJohann Duscher- Basic ReDoS (Regular Expression Denial of Service) protection
290da69785SJohann Duscher- Input sanitization and validation
300da69785SJohann Duscher- Execution timeout protection for regex matching
311a97af9eSJohann Duscher- Pattern complexity limits to prevent performance issues
320da69785SJohann Duscher
330da69785SJohann Duscher### Technical
34*9a383d51SJohann Duscher
350da69785SJohann Duscher- Integration with DokuWiki's `COMMON_WIKIPAGE_SAVE` event
360da69785SJohann Duscher- Proper event handling with `preventDefault()` and `stopPropagation()`
370da69785SJohann Duscher- GPL v2 licensing with proper headers
380da69785SJohann Duscher- Standard DokuWiki plugin structure
390da69785SJohann Duscher- Comprehensive documentation and examples
40*9a383d51SJohann Duscher- **Developer test suite** with comprehensive tests
41c176b8b3SJohann Duscher- **Enhanced ReDoS detection** for better security
42c176b8b3SJohann Duscher- **Cross-platform file path handling** (Windows/Unix)
430da69785SJohann Duscher
440da69785SJohann Duscher[1.0.0]: https://github.com/jonnydee/deletepageguard/releases/tag/v1.0.0