inquirer_console v1.0.0
Release Notes
Release Date: March 31, 2024
We are excited to announce the official release of inquirer_console v1.0.0! This is our first stable version, marking the project as production-ready. inquirer_console is a Python implementation of Inquirer.js, providing a set of well-designed interactive command line interface components.
✨ New Features
-
Core Prompt Types Implementation:
Input- Basic text input promptConfirm- Confirmation prompt (yes/no)Select- List selection prompt (single choice)Checkbox- Checkbox prompt (multiple choices)Password- Password input prompt (with masking)Text- Multi-line text input prompt
-
Cross-platform Compatibility:
- Perfect support for Windows, macOS, and various Linux/Unix systems
- Intelligent detection of terminal environment and adjustment of input/output behavior
-
Interrupt Handling:
- Implementation of elegant Ctrl+C handling mechanism
- Clear interruption signaling via
ExitPromptErrorexception
-
Chainable API:
- Fluent API similar to Inquirer.js
- Support for defining a series of questions via dictionary lists
-
Complete Type Annotations:
- All public APIs come with comprehensive type hints
- Support for modern IDE code completion and type checking
🔧 Improvements
-
Zero-dependency Design:
- Pure Python standard library implementation
- No external dependencies required, simplifying installation and deployment
-
Customizability:
- All prompt components support custom validation
- Transform user input through filter functions
-
User Experience:
- Colored output and interactive cursor movement
- Intuitive navigation and selection mechanisms
- Support for default values and pre-selected options
🐛 Bug Fixes
- Fixed special key handling issues in Windows environments
- Fixed cursor position calculation errors in multi-line text input
- Fixed password input display issues in certain terminal environments
- Resolved Unicode character rendering differences across platforms
📚 Documentation
- Comprehensive README documentation (bilingual: English and Chinese)
- Complete usage examples and API documentation
- Detailed testing instructions
🧪 Testing
- Implemented comprehensive automated test coverage
- Support for pytest testing framework
- Target test coverage of over 90%
💖 Acknowledgements
Thanks to all developers, testers, and documentation writers who contributed to this release. Special thanks to the creators of the Inquirer.js project, whose work provided inspiration and reference for us. We also appreciate the support and feedback from the Python community, helping us create this excellent interactive command line tool library.
Installation
# Install from PyPI
pip install inquirer_console
# Install from GitHub
pip install git+https://github.com/Eusen/inquirer_console.gitFuture Plans
We plan to add more features and improvements in future versions:
- New prompt types (such as editor, autocomplete, etc.)
- More custom themes and styles
- Support for asynchronous operations
- Localization for more languages
Please continue to follow our project and submit your suggestions and feedback!