charmed_rust v0.2.0
A significant release with 91 commits since v0.1.2, focused on hardening, conformance, and robustness across the entire workspace.
Highlights
- Robustness & hardening: Fixed numerous panics, unwraps, and edge cases across lipgloss, glamour, bubbles, bubbletea, wish, huh, and demo_showcase. Improved ANSI escape handling, UTF-8/Unicode width parity with Go, and error recovery throughout.
- Conformance testing: Major expansion of the conformance test suite — all crates now have real conformance tests (glow, wish, bubbles, textarea, textinput). Skipped tests now fail the suite. Unknown fixtures must fail, not skip.
- wish SSH improvements: Added shell-aware exec command parser, typed max-session errors, hardened SSH e2e probes and credentials, Windows SSH e2e + CI support, and
listen_with_listenerfor race-free test server startup. - bubbles list pagination: Refactored to use fixed chrome line counting for Go parity; multiple pagination fixes and conformance alignment.
- glamour: Fixed proportional shrink max-width overshoot, saturated StyleCache zero capacity instead of panicking.
- demo_showcase: Added Services page, export command, fix use_color, handle OSC/DCS/APC escape sequences in strip_ansi, fix command palette ctrl navigation and pager resolution.
- Examples: Updated example run commands to use correct charmed-* packages; integrated real bubbles components (Spinner, TextInput) into bubbletea examples.
- Dependencies: Bumped GitHub Actions and Cargo dependencies.
Crates published
| Crate | Version |
|---|---|
| charmed-harmonica | 0.2.0 |
| charmed-lipgloss | 0.2.0 |
| charmed-bubbletea-macros | 0.2.0 |
| charmed-log | 0.2.0 |
| charmed-bubbletea | 0.2.0 |
| charmed-glamour | 0.2.0 |
| charmed-bubbles | 0.2.0 |
| charmed-huh | 0.2.0 |
| charmed-wish | 0.2.0 |
| charmed-glow | 0.2.0 |
| charmed-wasm | 0.2.0 |
| charmed-demo-showcase | 0.2.0 |
Full Changelog: v0.1.2...v0.2.0