chore(release): v1.19.3 - parser robustness improvements
Compare
Sorry, something went wrong.
No results found
Eliminate all 16 critical unwraps in parser that could panic on malformed user input.
Replace with proper error handling for production-ready parser reliability.
## Changes
### Parser Fixes (16 critical unwraps eliminated)
src/parser/grl_no_regex.rs (9 fixes):
- Fix date parsing: .and_hms_opt().unwrap() → proper Result propagation
- Fix string find: contains() + find().unwrap() → if let Some()
- Fix iterator unwraps: Add descriptive .expect() with invariants
- Fix char access: Handle empty strings gracefully
- Fix operator validation: Check for empty operator strings
src/parser/grl.rs (7 fixes):
- Apply same fixes to regex-based parser
- Ensure consistency between parser implementations
### Version & Documentation
- Cargo.toml: version 1.19.2 → 1.19.3
- README.md: Add v1.19.3 release notes
- src/lib.rs: Update version documentation
- Create comprehensive release documentation
## Testing
✅ All 436 unit tests passing
✅ All 29 examples passing (100% success rate)
✅ Zero clippy warnings
✅ Zero breaking changes
✅ Zero functional regressions
## Impact
Before v1.19.3:
- 16 locations that could panic on bad input
- Generic panic messages
- Parser crash = application crash
After v1.19.3:
- 0 locations that panic on bad input
- Descriptive ParseError messages
- Graceful error handling
## Documentation
- EXAMPLE_TEST_REPORT_v1.19.3.md - Example test results
- VERSION_1.19.3_RELEASE_NOTES.md - Release documentation
- PARSER_UNWRAP_FIXES.md - Technical implementation details
Addresses HIGH PRIORITY Issue #9 from technical review