Releases: smyrgeorge/readline4k
Releases · smyrgeorge/readline4k
0.4.0
[0.4.0] - 2025-09-07
Added
- Input validation with modular enhancements (commit 5444b95).
- Auto-add history and color mode support (commit 58b7ec3).
- Advanced highlighting and cursor visibility support (commit f9f42a2).
Breaking changes
- AbstractLineEditor fluent API was renamed to make intent explicit:
- withCompleter(...) -> installCompleter(...)
- withHighlighter(...) -> installHighlighter(...)
Changed
- Migrated Dokka plugin to V2 to improve documentation generation (commits fc36ace, 20035bd, 2b0a685).
- Refactored examples and enhanced documentation (commit 005d1b9).
Documentation
- Regenerated and published documentation for 0.4.0 (commit 9a7bff7).
Notes
- The project remains in an early stage; breaking changes may occur. Review README and API surfaces before upgrading.
Full Changelog: 0.3.0...0.4.0
0.3.0
Release Notes - Changes Summary
Version 0.3.0 (2025-08-25)
Overview
- This release focuses on modularizing the line editor, adding customizable highlighting and completion, improving tests and documentation, and small CI/build updates.
Highlights
- Introduced a customizable line editor with pluggable completion and highlighting.
- Expanded AbstractLineEditor and related bindings for modular completion/highlighting.
- Added configurable prompt, inline hints, and candidate highlighting support.
- Improved/expanded native test suite and filesystem-based completion tests.
- Documentation updates for 0.3.0.
Changes since 0.2.0
Features & Enhancements
- Introduce
CustomLineEditorwith completion and highlighting support. - Add support for customizable prompt, hint, and candidate highlighting.
- Update
AbstractLineEditorand bindings for modular completion and highlighting.
Refactoring
- Refactor
AbstractLineEditorand streamline editor implementations. - Refactor
CustomLineEditorfor improved modularity; introduce tools for completion and highlighting.
Tests
- Implement/expand test suite for native targets.
- Refactor
SimpleFileCompleterTestto usekotlinx-iofor file and directory operations.
Documentation
- Added documentation for version 0.3.0.
Build/CI
- Bump actions/setup-java from 4 to 5 (via Dependabot).
Merges
- Merge PR #2 from dependabot/github_actions/actions/setup-java-5.
- Merge branch 'feature/custom-editor'.
Contributors
- Yorgos Smyrnaios (@smyrgeorge)
- dependabot[bot]
Notes
- The project is still in early development; minor breaking changes may occur as APIs evolve.
Full Changelog: 0.2.0...0.3.0
0.2.0
Release Notes - Changes Summary
🏗️ Architecture Refactoring (Commit: 80d39bd)
-
Introduced modular LineEditor architecture with abstract base class
AbstractLineEditor -
Added two specialized editor implementations:
-
- Basic line editing functionality
SimpleLineEditor
- Basic line editing functionality
-
- Enhanced editor with file path completion and hints
FileCompleterLineEditor
- Enhanced editor with file path completion and hints
-
-
Breaking Change: The original
LineEditorclass has been removed and replaced with the new implementations -
Updated examples to use the new instead of the deprecated
LineEditorFileCompleterLineEditor
✨ Enhanced User Experience (Commit: f154337)
- Introduced customizable hint highlighting in Rust bindings
- Added visual hint styling with dimmed gray coloring (
\x1b[90m{}\x1b[0m) for better readability - Improved configuration validation with proper error handling and panic messages for invalid config values
- Enhanced file completion capabilities with dedicated
FilenameCompleterandHistoryHinterintegration
🔧 Technical Improvements
- Added memory management functions (, ) for proper resource cleanup
free_editor``free_file_completer_editor - Expanded native C API with new functions for file completer editor operations
- Added
clearHistory()method to both editor implementations - Improved error handling with better validation for configuration parameters
- Added rustyline-derive dependency for cleaner derive macro implementation
📝 API Changes
- New Classes:
-
- Base class for all editor implementations
AbstractLineEditor
- Base class for all editor implementations
-
- Replaces the old
LineEditorclassSimpleLineEditor
- Replaces the old
-
- New editor with file completion features
FileCompleterLineEditor
- New editor with file completion features
-
Full Changelog: 0.1.0...0.2.0
0.1.0
Full Changelog: https://github.com/smyrgeorge/readline4k/commits/0.1.0