v0.3.9 - iced 0.14.0 Migration & CI Improvements
Release Date: January 10, 2026
Executive Summary
Complete GUI framework upgrade from iced 0.13.1 to iced 0.14.0 with 82+ breaking API changes resolved, along with CI/CD improvements and tech debt remediation. This release modernizes the GUI framework while maintaining full backward compatibility with existing functionality.
Highlights
- iced 0.14.0: Major GUI framework upgrade with reactive rendering and time-travel debugging
- 82+ Breaking Changes Resolved: Complete API migration with zero compilation errors
- CI/CD Improvements: Fixed security-audit permissions, artifact naming, and codecov migration
- Tech Debt Remediation: Updated deprecated APIs and dependencies
- Zero Warnings: All clippy warnings resolved, production-ready code quality
Changed
GUI Framework Upgrade: iced 0.13.1 to 0.14.0
- Major Version Upgrade: Complete migration from iced 0.13.1 to iced 0.14.0 with 82+ breaking API changes resolved
- Key Features: Reactive rendering improvements, time-travel debugging, and enhanced API design
Breaking API Changes Fixed
| API Change | Before | After |
|---|---|---|
| Space Widget | Space::with_width/with_height |
Space::new().width/height() |
| Application | iced::application(title, update, view) |
iced::application(boot_fn, update, view).title() |
| Checkbox | checkbox(label, value) |
checkbox(value).label(label) |
| Scrollable IDs | scrollable::Id |
iced::widget::Id |
| Scrollable Ops | scrollable::snap_to |
operation::snap_to |
| Text Input | Status::Focused tuple |
Status::Focused { is_hovered } struct |
| Style Structs | No snap field | snap: bool required |
| Rule Widget | horizontal_rule(height) |
rule::horizontal(height) |
Fixed
CI/CD Improvements
- Security Audit Permissions: Added
checks: writepermission for proper security-audit workflow execution - Artifact Naming: Fixed matrix.os to runner.os for consistent artifact naming across platforms
- Codecov Migration: Updated from deprecated codecov/test-results-action@v1 to codecov/codecov-action@v5
Tech Debt Remediation
- Benchmark Deprecation: Fixed criterion::black_box to std::hint::black_box (7 occurrences)
- Tokio Update: Updated tokio from 1.48 to 1.49
- Clippy Fixes: Applied clippy recommendations (unused imports, derive Default)
- Benchmark Rewrites: Updated benchmarks for async StateManager API
Dependencies
| Dependency | Previous | New |
|---|---|---|
| iced | 0.13.1 | 0.14.0 |
| tokio | 1.48 | 1.49 |
Repository Cleanup
- Closed superseded PRs (#27, #32)
- Dropped obsolete stashes
- Pruned 20+ stale remote branches
- Added Claude Code memory bank patterns to .gitignore
Files Modified (19 GUI files)
Cargo.toml- Version bump to iced 0.14.0crates/rustirc-gui/src/app.rs- Application API and rule widgetcrates/rustirc-gui/src/dialogs.rs- Space, checkbox, and max_width APIscrates/rustirc-gui/src/material_demo.rs- Application boot functioncrates/rustirc-gui/src/widgets/*- Space widget updatescrates/rustirc-gui/src/components/atoms/*- Style struct updatescrates/rustirc-gui/src/components/molecules/*- Status pattern updatescrates/rustirc-gui/src/components/organisms/*- Responsive layout updates
Quality Assurance
- Build Status: Zero compilation errors
- Clippy: Zero warnings with -D warnings flag
- Tests: All 62 tests passing (unit tests)
- Compatibility: Full backward compatibility with existing GUI functionality
Upgrade Instructions
- Update your Cargo.toml to use RustIRC v0.3.9
- Run
cargo updateto fetch the new iced 0.14.0 dependency - Build and test:
cargo build && cargo test
No code changes required for existing users - all breaking changes are internal to the RustIRC implementation.
Full Changelog
See CHANGELOG.md for complete details.
Commits Since v0.3.8
289425crefactor: Apply tech debt remediation from stashed changes5401985fix(ci): Resolve all failing CI checks for main branch8853208feat(gui): Migrate from iced 0.13.1 to iced 0.14.0 (#65)5f10fa0fix(security): Consolidate remaining PRs with RUSTSEC-2026-0002 security fix (#64)8ccaa57Configure Copilot instructions per best practices (#63)8e06121Fix RUSTSEC-2026-0002: Patch lru soundness vulnerability in iced_glyphon (#61)d8a10b1chore(deps): bump open from 5.3.2 to 5.3.3 (#50)
Contributors
- RustIRC Contributors
- Claude Opus 4.5 (Co-Author)
Full Documentation: README.md
IRC Channel: #rustirc on Libera.Chat
Issues: GitHub Issues