| 
1 | 1 | # Changelog  | 
2 | 2 | 
 
  | 
 | 3 | +## [0.2.3] - 2025-09-05  | 
 | 4 | + | 
 | 5 | +### ✨ Added  | 
 | 6 | + | 
 | 7 | +- **Enhanced Error Messages**: Added colored, user-friendly error reporting with contextual information  | 
 | 8 | +  - Pretty-printed syntax errors show original formula, successful lexemes (green), and failed lexemes (red)  | 
 | 9 | +  - Clear "Expected Token:" labels with clean token names  | 
 | 10 | +  - Contextual display of parsing progress with colored highlighting using `owo-colors`  | 
 | 11 | +- **Improved Parser Error Context**: Parse errors now include the exact position and context where parsing failed  | 
 | 12 | + | 
 | 13 | +### 🔧 Improved  | 
 | 14 | + | 
 | 15 | +- **Error Message Quality**: Cleaned up error messages to show "Function or ColumnName" instead of "Function token or ColumnName"  | 
 | 16 | +- **Code Style**: Eliminated clippy warnings throughout the codebase  | 
 | 17 | +  - Removed unnecessary `to_string()` calls in format strings  | 
 | 18 | +  - Converted instance methods to static methods where appropriate  | 
 | 19 | +  - Removed unnecessary return statements  | 
 | 20 | +  - Fixed redundant pattern matching in examples  | 
 | 21 | + | 
 | 22 | +### 🐛 Fixed  | 
 | 23 | + | 
 | 24 | +- **Error Display**: Fixed duplicate and malformed error message formatting  | 
 | 25 | +- **Documentation**: Removed duplicate doc comments and improved consistency  | 
 | 26 | + | 
 | 27 | +### 📚 Documentation  | 
 | 28 | + | 
 | 29 | +- **Error Handling**: Updated parser documentation to reflect new pretty error functionality  | 
 | 30 | +- **Examples**: Added comprehensive error testing examples demonstrating colored output  | 
 | 31 | + | 
 | 32 | +### 🧹 Code Quality  | 
 | 33 | + | 
 | 34 | +- **Dead Code**: Eliminated all dead code warnings in main library  | 
 | 35 | +- **Clippy Compliance**: Achieved zero clippy warnings for main library code  | 
 | 36 | +- **Performance**: Optimized error formatting to avoid unnecessary string allocations  | 
 | 37 | + | 
 | 38 | +### 🔄 Internal Changes  | 
 | 39 | + | 
 | 40 | +- **Error Processing**: Streamlined error handling pipeline to preserve original `ParseError::Unexpected` for better formatting  | 
 | 41 | +- **String Processing**: Improved error message generation to be more efficient and readable  | 
 | 42 | + | 
 | 43 | +#### Example Output Format:  | 
 | 44 | +```  | 
 | 45 | +Syntax error- Unexpected Token  | 
 | 46 | +Formula: y ~ x +  | 
 | 47 | +Show: y ~ x + <eoi>  | 
 | 48 | +Expected Token: Function or ColumnName  | 
 | 49 | +```  | 
 | 50 | + | 
 | 51 | +These changes maintain backward compatibility while significantly improving the developer experience when working with formula parsing errors.  | 
 | 52 | + | 
3 | 53 | ## [0.2.2] - 2025-09-05  | 
4 | 54 | 
 
  | 
5 | 55 | added `lex_formula` for users to inspect raw lexer output  | 
 | 
0 commit comments