Jagoda Estera Ślązak
e89a526aab
feat(no_std): portable-atomic integration for targets with no atomic types ( #2076 )
...
Improves compatibility with no-std targets that don't support atomic
types.
We support three different scenarios depending on the target:
1. Terminal applications and other std targets (e.g. espidf):
- `std` enabled, `portable-atomic` disabled
2. Embedded targets with atomic types, bare metal x86, etc.:
- `std` disabled `portable-atomic` disabled
3. Embedded targets without atomic types (e.g. single-core MCUs):
- `std` disabled, `portable-atomic` enabled
Turning on `portable-atomic` together with `std` will fall back to `std`
atomic.
2025-09-04 20:14:25 +02:00
Jagoda Estera Ślązak
5ae224b244
chore: prepare for beta release ( #2022 )
2025-07-29 09:45:40 +02:00
github-actions[bot]
11c5862728
chore: release ( #1866 )
...
## 🤖 New release
* `ratatui-core`: 0.1.0-alpha.5 -> 0.1.0-alpha.6
* `ratatui-crossterm`: 0.1.0-alpha.4 -> 0.1.0-alpha.5
* `ratatui-widgets`: 0.3.0-alpha.4 -> 0.3.0-alpha.5
* `ratatui-macros`: 0.7.0-alpha.3 -> 0.7.0-alpha.4
* `ratatui-termwiz`: 0.1.0-alpha.4 -> 0.1.0-alpha.5
* `ratatui-termion`: 0.1.0-alpha.4 -> 0.1.0-alpha.5
* `ratatui`: 0.30.0-alpha.4 -> 0.30.0-alpha.5
<details><summary><i><b>Changelog</b></i></summary><p>
## `ratatui-core`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)* Make StatefulWidget and Ref work with unsized State by
@thscharler in [#1505 ](https://github.com/ratatui/ratatui/pull/1505 )
-
[7b87509](7b875091e1
)
*(uncategorized)* Typo by @marcoieni in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
### Refactor
-
[f132fa1](f132fa1715
)
*(table)* Small readability improvements by @joshka in
[#1510 ](https://github.com/ratatui/ratatui/pull/1510 )
-
[904b0aa](904b0aa723
)
*(uncategorized)* Move symbols to modules by @joshka in
[#1594 ](https://github.com/ratatui/ratatui/pull/1594 )
-
[7c8573f](7c8573f575
)
*(uncategorized)* Rearrange selection_spacing code by @raylu in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
-
[217c57c](217c57cd60
)
*(uncategorized)* Modularize backends by @orhun in
[#1508 ](https://github.com/ratatui/ratatui/pull/1508 )
-
[e461b72](e461b724a6
)
*(uncategorized)* Move {Stateful,}Widget{,Ref} types into individual
files by @joshka in
[#1479 ](https://github.com/ratatui/ratatui/pull/1479 )
### Documentation
-
[d291042](d291042e69
)
*(block)* Revise the block example by @orhun in
[#1520 ](https://github.com/ratatui/ratatui/pull/1520 )
-
[fcde9cb](fcde9cb9c3
)
*(changelog)* Fix typo by @orhun in
[#1463 ](https://github.com/ratatui/ratatui/pull/1463 )
-
[3ae6bf1](3ae6bf1d6f
)
*(contributing)* Use cargo-xtask for instructions by @orhun in
[#1509 ](https://github.com/ratatui/ratatui/pull/1509 )
-
[04e1b32](04e1b32cd2
)
*(layout)* Rename cassowary-rs references to cassowary by @miroim in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
-
[088aac1](088aac136d
)
*(readme)* Tweak links and badges by @joshka in
[#1598 ](https://github.com/ratatui/ratatui/pull/1598 )
-
[6e43672](6e436725e4
)
*(readme)* Reimagine README.md by @orhun in
[#1569 ](https://github.com/ratatui/ratatui/pull/1569 )
-
[8f28247](8f282473b2
)
*(readme)* Correct examples links by @HoKim98 in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
-
[9f90f74](9f90f7495f
)
*(readme)* Fix broken link by @nilsmartel in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
-
[260af68](260af68a34
)
*(readme)* Include iocraft as an alternative by @kdheepak in
[#1483 ](https://github.com/ratatui/ratatui/pull/1483 )
-
[dafb716](dafb716f9d
)
*(widgets)* Add example for grouped barchart by @orhun in
[#1566 ](https://github.com/ratatui/ratatui/pull/1566 )
-
[ed5dd73](ed5dd73084
)
*(widgets)* Add example for tabs by @orhun in
[#1559 ](https://github.com/ratatui/ratatui/pull/1559 )
-
[fab5321](fab532171d
)
*(widgets)* Add example for scrollbar by @orhun in
[#1545 ](https://github.com/ratatui/ratatui/pull/1545 )
-
[898aef6](898aef6e2f
)
*(widgets)* Add example for list by @orhun in
[#1542 ](https://github.com/ratatui/ratatui/pull/1542 )
-
[452366a](452366aa9e
)
*(widgets)* Add example for sparkline by @orhun in
[#1556 ](https://github.com/ratatui/ratatui/pull/1556 )
-
[6ddde0e](6ddde0e8a8
)
*(widgets)* Add example for table by @orhun in
[#1557 ](https://github.com/ratatui/ratatui/pull/1557 )
-
[93ad6b8](93ad6b828c
)
*(widgets)* Update values in chart example by @orhun in
[#1558 ](https://github.com/ratatui/ratatui/pull/1558 )
-
[15f442a](15f442a71e
)
*(widgets)* Add example for paragraph by @orhun in
[#1544 ](https://github.com/ratatui/ratatui/pull/1544 )
-
[17bba14](17bba14540
)
*(widgets)* Move the logo example to widgets by @orhun in
[#1543 ](https://github.com/ratatui/ratatui/pull/1543 )
-
[f2451e7](f2451e7f1e
)
*(widgets)* Add example for gauge by @orhun in
[#1539 ](https://github.com/ratatui/ratatui/pull/1539 )
-
[4f0a8b2](4f0a8b21af
)
*(widgets)* Add example for canvas by @orhun in
[#1533 ](https://github.com/ratatui/ratatui/pull/1533 )
-
[91147c4](91147c4d75
)
*(widgets)* Add example for chart by @orhun in
[#1536 ](https://github.com/ratatui/ratatui/pull/1536 )
-
[6dd25a3](6dd25a3111
)
*(widgets)* Add example for calendar by @orhun in
[#1532 ](https://github.com/ratatui/ratatui/pull/1532 )
-
[99ac005](99ac005b06
)
*(widgets)* Add simple barchart example by @joshka in
[#1511 ](https://github.com/ratatui/ratatui/pull/1511 )
-
[da05957](da05957fa0
)
*(uncategorized)* Add widget-ref-container example by @joshka in
[#1603 ](https://github.com/ratatui/ratatui/pull/1603 )
-
[1798512](1798512e94
)
*(uncategorized)* Fix wording in user_input example by @dawedawe in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
-
[03066d8](03066d81bf
)
*(uncategorized)* Fix punctuation in canvas.rs documentation by
@dawedawe in [#1583 ](https://github.com/ratatui/ratatui/pull/1583 )
-
[e411d9e](e411d9ec3e
)
*(uncategorized)* Add input form example by @joshka in
[#1551 ](https://github.com/ratatui/ratatui/pull/1551 )
-
[ed071f3](ed071f3723
)
*(uncategorized)* Add mouse-drawing example by @joshka in
[#1546 ](https://github.com/ratatui/ratatui/pull/1546 )
-
[46902f5](46902f5587
)
*(uncategorized)* Improve docs for workspace crates by @orhun in
[#1490 ](https://github.com/ratatui/ratatui/pull/1490 )
-
[a6b5792](a6b579223f
)
*(uncategorized)* Fix example link in readme by @thomas-tacquet in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
### Miscellaneous Tasks
-
[abe2f27](abe2f27328
)
*(backend)* Change From<T> impls to new backend specific IntoBackend and
FromBackend traits by @joshka in
[#1464 ](https://github.com/ratatui/ratatui/pull/1464 ) [**breaking**]
-
[0a47ebd](0a47ebd94b
)
*(bencher)* Update bencher CLI usage by @epompeii in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
-
[a0979d6](a0979d6871
)
*(build)* Remove cargo lint by @joshka in
[#1549 ](https://github.com/ratatui/ratatui/pull/1549 )
-
[eaa4038](eaa403856e
)
*(ci)* Install pre-built binaries for cargo-rdme by @orhun in
[#1477 ](https://github.com/ratatui/ratatui/pull/1477 )
-
[e5e2316](e5e2316451
)
*(ci)* Add check for keeping README.md up-to-date by @orhun in
[#1473 ](https://github.com/ratatui/ratatui/pull/1473 )
-
[2ef3583](2ef3583eff
)
*(ci)* Replace cargo-make with a custom cargo-xtask by @joshka in
[#1461 ](https://github.com/ratatui/ratatui/pull/1461 )
-
[98df774](98df774d7f
)
*(core)* Move core types to ratatui-core by @joshka in
[#1460 ](https://github.com/ratatui/ratatui/pull/1460 )
-
[35eba76](35eba76b4d
)
*(example)* Move demo2 to top level folder by @joshka in
[#1524 ](https://github.com/ratatui/ratatui/pull/1524 )
-
[5f57d35](5f57d35234
)
*(examples)* Add colors explorer demo app by @orhun in
[#1580 ](https://github.com/ratatui/ratatui/pull/1580 )
-
[5c021bf](5c021bf344
)
*(examples)* Add chart demo app by @orhun in
[#1579 ](https://github.com/ratatui/ratatui/pull/1579 )
-
[9721300](9721300a47
)
*(examples)* Add canvas demo app by @orhun in
[#1578 ](https://github.com/ratatui/ratatui/pull/1578 )
-
[a6a1368](a6a1368250
)
*(examples)* Add calendar explorer demo app by @orhun in
[#1571 ](https://github.com/ratatui/ratatui/pull/1571 )
-
[819e92c](819e92cd44
)
*(examples)* Add weather demo app by @orhun in
[#1567 ](https://github.com/ratatui/ratatui/pull/1567 )
-
[b5f7e44](b5f7e44183
)
*(examples)* Move async example to apps by @joshka in
[#1503 ](https://github.com/ratatui/ratatui/pull/1503 )
-
[17316ec](17316ec5d0
)
*(github)* Enable sponsorship button by @orhun in
[#1478 ](https://github.com/ratatui/ratatui/pull/1478 )
-
[d3f01eb](d3f01ebf6e
)
*(lint)* Ensure lint config is correct by @joshka in
[#1528 ](https://github.com/ratatui/ratatui/pull/1528 )
-
[2b7ec5c](2b7ec5cb7f
)
*(widgets)* Enable calendar widget as default by @orhun in
[#1521 ](https://github.com/ratatui/ratatui/pull/1521 )
-
[d201b8e](d201b8e5dd
)
*(xtask)* Check lints for only library targets by @orhun in
[#1531 ](https://github.com/ratatui/ratatui/pull/1531 )
-
[6f21319](6f213191ef
)
*(uncategorized)* Rename examples with clashing names by @joshka in
[#1597 ](https://github.com/ratatui/ratatui/pull/1597 )
-
[11cbb2b](11cbb2ba87
)
*(uncategorized)* Use cargo xtask for bacon clippy command by @joshka in
[#1592 ](https://github.com/ratatui/ratatui/pull/1592 )
-
[b544e39](b544e394c9
)
*(uncategorized)* Use clap instead of argh for demo example by @joshka
in [#1591 ](https://github.com/ratatui/ratatui/pull/1591 )
-
[9a54198](9a541981b8
)
*(uncategorized)* Make source files non-executable by @orhun in
[#1577 ](https://github.com/ratatui/ratatui/pull/1577 )
-
[357ae7e](357ae7e251
)
*(uncategorized)* Move terminal types to ratatui-core by @joshka in
[#1530 ](https://github.com/ratatui/ratatui/pull/1530 ) [**breaking**]
-
[21e62d8](21e62d84c2
)
*(uncategorized)* Move the demo example to main folder by @joshka in
[#1523 ](https://github.com/ratatui/ratatui/pull/1523 )
-
[fbf6050](fbf6050c86
)
*(uncategorized)* Prepare alpha modularization release by @joshka in
[#1525 ](https://github.com/ratatui/ratatui/pull/1525 )
-
[e4e95bc](e4e95bcecf
)
*(uncategorized)* Remove --color always flags from bacon.toml by @joshka
in [#1502 ](https://github.com/ratatui/ratatui/pull/1502 )
-
[a41c97b](a41c97b413
)
*(uncategorized)* Move unstable widget refs to ratatui by @joshka in
[#1491 ](https://github.com/ratatui/ratatui/pull/1491 ) [**breaking**]
-
[e7085e3](e7085e3a3e
)
*(uncategorized)* Move widgets into ratatui-widgets crate by @joshka in
[#1474 ](https://github.com/ratatui/ratatui/pull/1474 )
-
[f1d0a18](f1d0a18375
)
*(uncategorized)* Move ratatui crate into workspace folder by @joshka in
[#1459 ](https://github.com/ratatui/ratatui/pull/1459 )
-
[55fb2d2](55fb2d2e56
)
*(uncategorized)* Update repo links to ratatui instead of ratatui-org by
@joshka in [#1458 ](https://github.com/ratatui/ratatui/pull/1458 )
### Continuous Integration
-
[4a871f9](4a871f993e
)
*(uncategorized)* Refactor xtask / toml formatting by @joshka in
[#1602 ](https://github.com/ratatui/ratatui/pull/1602 )
### New Contributors
* @dawedawe made their first contribution in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
* @Its-Just-Nans made their first contribution in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
* @MarSik made their first contribution in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
* @raylu made their first contribution in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
* @renesat made their first contribution in
[#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
* @HoKim98 made their first contribution in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
* @nilsmartel made their first contribution in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
* @marcoieni made their first contribution in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
* @epompeii made their first contribution in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
* @thomas-tacquet made their first contribution in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
* @miroim made their first contribution in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
**Full Changelog**:
https://github.com/ratatui/ratatui/compare/v0.29.0...0.30.0-alpha.1
</blockquote>
## `ratatui-crossterm`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)* Make StatefulWidget and Ref work with unsized State by
@thscharler in [#1505 ](https://github.com/ratatui/ratatui/pull/1505 )
-
[7b87509](7b875091e1
)
*(uncategorized)* Typo by @marcoieni in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
### Refactor
-
[f132fa1](f132fa1715
)
*(table)* Small readability improvements by @joshka in
[#1510 ](https://github.com/ratatui/ratatui/pull/1510 )
-
[904b0aa](904b0aa723
)
*(uncategorized)* Move symbols to modules by @joshka in
[#1594 ](https://github.com/ratatui/ratatui/pull/1594 )
-
[7c8573f](7c8573f575
)
*(uncategorized)* Rearrange selection_spacing code by @raylu in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
-
[217c57c](217c57cd60
)
*(uncategorized)* Modularize backends by @orhun in
[#1508 ](https://github.com/ratatui/ratatui/pull/1508 )
-
[e461b72](e461b724a6
)
*(uncategorized)* Move {Stateful,}Widget{,Ref} types into individual
files by @joshka in
[#1479 ](https://github.com/ratatui/ratatui/pull/1479 )
### Documentation
-
[d291042](d291042e69
)
*(block)* Revise the block example by @orhun in
[#1520 ](https://github.com/ratatui/ratatui/pull/1520 )
-
[fcde9cb](fcde9cb9c3
)
*(changelog)* Fix typo by @orhun in
[#1463 ](https://github.com/ratatui/ratatui/pull/1463 )
-
[3ae6bf1](3ae6bf1d6f
)
*(contributing)* Use cargo-xtask for instructions by @orhun in
[#1509 ](https://github.com/ratatui/ratatui/pull/1509 )
-
[04e1b32](04e1b32cd2
)
*(layout)* Rename cassowary-rs references to cassowary by @miroim in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
-
[088aac1](088aac136d
)
*(readme)* Tweak links and badges by @joshka in
[#1598 ](https://github.com/ratatui/ratatui/pull/1598 )
-
[6e43672](6e436725e4
)
*(readme)* Reimagine README.md by @orhun in
[#1569 ](https://github.com/ratatui/ratatui/pull/1569 )
-
[8f28247](8f282473b2
)
*(readme)* Correct examples links by @HoKim98 in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
-
[9f90f74](9f90f7495f
)
*(readme)* Fix broken link by @nilsmartel in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
-
[260af68](260af68a34
)
*(readme)* Include iocraft as an alternative by @kdheepak in
[#1483 ](https://github.com/ratatui/ratatui/pull/1483 )
-
[dafb716](dafb716f9d
)
*(widgets)* Add example for grouped barchart by @orhun in
[#1566 ](https://github.com/ratatui/ratatui/pull/1566 )
-
[ed5dd73](ed5dd73084
)
*(widgets)* Add example for tabs by @orhun in
[#1559 ](https://github.com/ratatui/ratatui/pull/1559 )
-
[fab5321](fab532171d
)
*(widgets)* Add example for scrollbar by @orhun in
[#1545 ](https://github.com/ratatui/ratatui/pull/1545 )
-
[898aef6](898aef6e2f
)
*(widgets)* Add example for list by @orhun in
[#1542 ](https://github.com/ratatui/ratatui/pull/1542 )
-
[452366a](452366aa9e
)
*(widgets)* Add example for sparkline by @orhun in
[#1556 ](https://github.com/ratatui/ratatui/pull/1556 )
-
[6ddde0e](6ddde0e8a8
)
*(widgets)* Add example for table by @orhun in
[#1557 ](https://github.com/ratatui/ratatui/pull/1557 )
-
[93ad6b8](93ad6b828c
)
*(widgets)* Update values in chart example by @orhun in
[#1558 ](https://github.com/ratatui/ratatui/pull/1558 )
-
[15f442a](15f442a71e
)
*(widgets)* Add example for paragraph by @orhun in
[#1544 ](https://github.com/ratatui/ratatui/pull/1544 )
-
[17bba14](17bba14540
)
*(widgets)* Move the logo example to widgets by @orhun in
[#1543 ](https://github.com/ratatui/ratatui/pull/1543 )
-
[f2451e7](f2451e7f1e
)
*(widgets)* Add example for gauge by @orhun in
[#1539 ](https://github.com/ratatui/ratatui/pull/1539 )
-
[4f0a8b2](4f0a8b21af
)
*(widgets)* Add example for canvas by @orhun in
[#1533 ](https://github.com/ratatui/ratatui/pull/1533 )
-
[91147c4](91147c4d75
)
*(widgets)* Add example for chart by @orhun in
[#1536 ](https://github.com/ratatui/ratatui/pull/1536 )
-
[6dd25a3](6dd25a3111
)
*(widgets)* Add example for calendar by @orhun in
[#1532 ](https://github.com/ratatui/ratatui/pull/1532 )
-
[99ac005](99ac005b06
)
*(widgets)* Add simple barchart example by @joshka in
[#1511 ](https://github.com/ratatui/ratatui/pull/1511 )
-
[da05957](da05957fa0
)
*(uncategorized)* Add widget-ref-container example by @joshka in
[#1603 ](https://github.com/ratatui/ratatui/pull/1603 )
-
[1798512](1798512e94
)
*(uncategorized)* Fix wording in user_input example by @dawedawe in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
-
[03066d8](03066d81bf
)
*(uncategorized)* Fix punctuation in canvas.rs documentation by
@dawedawe in [#1583 ](https://github.com/ratatui/ratatui/pull/1583 )
-
[e411d9e](e411d9ec3e
)
*(uncategorized)* Add input form example by @joshka in
[#1551 ](https://github.com/ratatui/ratatui/pull/1551 )
-
[ed071f3](ed071f3723
)
*(uncategorized)* Add mouse-drawing example by @joshka in
[#1546 ](https://github.com/ratatui/ratatui/pull/1546 )
-
[46902f5](46902f5587
)
*(uncategorized)* Improve docs for workspace crates by @orhun in
[#1490 ](https://github.com/ratatui/ratatui/pull/1490 )
-
[a6b5792](a6b579223f
)
*(uncategorized)* Fix example link in readme by @thomas-tacquet in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
### Miscellaneous Tasks
-
[abe2f27](abe2f27328
)
*(backend)* Change From<T> impls to new backend specific IntoBackend and
FromBackend traits by @joshka in
[#1464 ](https://github.com/ratatui/ratatui/pull/1464 ) [**breaking**]
-
[0a47ebd](0a47ebd94b
)
*(bencher)* Update bencher CLI usage by @epompeii in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
-
[a0979d6](a0979d6871
)
*(build)* Remove cargo lint by @joshka in
[#1549 ](https://github.com/ratatui/ratatui/pull/1549 )
-
[eaa4038](eaa403856e
)
*(ci)* Install pre-built binaries for cargo-rdme by @orhun in
[#1477 ](https://github.com/ratatui/ratatui/pull/1477 )
-
[e5e2316](e5e2316451
)
*(ci)* Add check for keeping README.md up-to-date by @orhun in
[#1473 ](https://github.com/ratatui/ratatui/pull/1473 )
-
[2ef3583](2ef3583eff
)
*(ci)* Replace cargo-make with a custom cargo-xtask by @joshka in
[#1461 ](https://github.com/ratatui/ratatui/pull/1461 )
-
[98df774](98df774d7f
)
*(core)* Move core types to ratatui-core by @joshka in
[#1460 ](https://github.com/ratatui/ratatui/pull/1460 )
-
[35eba76](35eba76b4d
)
*(example)* Move demo2 to top level folder by @joshka in
[#1524 ](https://github.com/ratatui/ratatui/pull/1524 )
-
[5f57d35](5f57d35234
)
*(examples)* Add colors explorer demo app by @orhun in
[#1580 ](https://github.com/ratatui/ratatui/pull/1580 )
-
[5c021bf](5c021bf344
)
*(examples)* Add chart demo app by @orhun in
[#1579 ](https://github.com/ratatui/ratatui/pull/1579 )
-
[9721300](9721300a47
)
*(examples)* Add canvas demo app by @orhun in
[#1578 ](https://github.com/ratatui/ratatui/pull/1578 )
-
[a6a1368](a6a1368250
)
*(examples)* Add calendar explorer demo app by @orhun in
[#1571 ](https://github.com/ratatui/ratatui/pull/1571 )
-
[819e92c](819e92cd44
)
*(examples)* Add weather demo app by @orhun in
[#1567 ](https://github.com/ratatui/ratatui/pull/1567 )
-
[b5f7e44](b5f7e44183
)
*(examples)* Move async example to apps by @joshka in
[#1503 ](https://github.com/ratatui/ratatui/pull/1503 )
-
[17316ec](17316ec5d0
)
*(github)* Enable sponsorship button by @orhun in
[#1478 ](https://github.com/ratatui/ratatui/pull/1478 )
-
[d3f01eb](d3f01ebf6e
)
*(lint)* Ensure lint config is correct by @joshka in
[#1528 ](https://github.com/ratatui/ratatui/pull/1528 )
-
[2b7ec5c](2b7ec5cb7f
)
*(widgets)* Enable calendar widget as default by @orhun in
[#1521 ](https://github.com/ratatui/ratatui/pull/1521 )
-
[d201b8e](d201b8e5dd
)
*(xtask)* Check lints for only library targets by @orhun in
[#1531 ](https://github.com/ratatui/ratatui/pull/1531 )
-
[6f21319](6f213191ef
)
*(uncategorized)* Rename examples with clashing names by @joshka in
[#1597 ](https://github.com/ratatui/ratatui/pull/1597 )
-
[11cbb2b](11cbb2ba87
)
*(uncategorized)* Use cargo xtask for bacon clippy command by @joshka in
[#1592 ](https://github.com/ratatui/ratatui/pull/1592 )
-
[b544e39](b544e394c9
)
*(uncategorized)* Use clap instead of argh for demo example by @joshka
in [#1591 ](https://github.com/ratatui/ratatui/pull/1591 )
-
[9a54198](9a541981b8
)
*(uncategorized)* Make source files non-executable by @orhun in
[#1577 ](https://github.com/ratatui/ratatui/pull/1577 )
-
[357ae7e](357ae7e251
)
*(uncategorized)* Move terminal types to ratatui-core by @joshka in
[#1530 ](https://github.com/ratatui/ratatui/pull/1530 ) [**breaking**]
-
[21e62d8](21e62d84c2
)
*(uncategorized)* Move the demo example to main folder by @joshka in
[#1523 ](https://github.com/ratatui/ratatui/pull/1523 )
-
[fbf6050](fbf6050c86
)
*(uncategorized)* Prepare alpha modularization release by @joshka in
[#1525 ](https://github.com/ratatui/ratatui/pull/1525 )
-
[e4e95bc](e4e95bcecf
)
*(uncategorized)* Remove --color always flags from bacon.toml by @joshka
in [#1502 ](https://github.com/ratatui/ratatui/pull/1502 )
-
[a41c97b](a41c97b413
)
*(uncategorized)* Move unstable widget refs to ratatui by @joshka in
[#1491 ](https://github.com/ratatui/ratatui/pull/1491 ) [**breaking**]
-
[e7085e3](e7085e3a3e
)
*(uncategorized)* Move widgets into ratatui-widgets crate by @joshka in
[#1474 ](https://github.com/ratatui/ratatui/pull/1474 )
-
[f1d0a18](f1d0a18375
)
*(uncategorized)* Move ratatui crate into workspace folder by @joshka in
[#1459 ](https://github.com/ratatui/ratatui/pull/1459 )
-
[55fb2d2](55fb2d2e56
)
*(uncategorized)* Update repo links to ratatui instead of ratatui-org by
@joshka in [#1458 ](https://github.com/ratatui/ratatui/pull/1458 )
### Continuous Integration
-
[4a871f9](4a871f993e
)
*(uncategorized)* Refactor xtask / toml formatting by @joshka in
[#1602 ](https://github.com/ratatui/ratatui/pull/1602 )
### New Contributors
* @dawedawe made their first contribution in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
* @Its-Just-Nans made their first contribution in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
* @MarSik made their first contribution in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
* @raylu made their first contribution in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
* @renesat made their first contribution in
[#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
* @HoKim98 made their first contribution in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
* @nilsmartel made their first contribution in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
* @marcoieni made their first contribution in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
* @epompeii made their first contribution in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
* @thomas-tacquet made their first contribution in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
* @miroim made their first contribution in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
**Full Changelog**:
https://github.com/ratatui/ratatui/compare/v0.29.0...0.30.0-alpha.1
</blockquote>
## `ratatui-widgets`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)* Make StatefulWidget and Ref work with unsized State by
@thscharler in [#1505 ](https://github.com/ratatui/ratatui/pull/1505 )
-
[7b87509](7b875091e1
)
*(uncategorized)* Typo by @marcoieni in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
### Refactor
-
[f132fa1](f132fa1715
)
*(table)* Small readability improvements by @joshka in
[#1510 ](https://github.com/ratatui/ratatui/pull/1510 )
-
[904b0aa](904b0aa723
)
*(uncategorized)* Move symbols to modules by @joshka in
[#1594 ](https://github.com/ratatui/ratatui/pull/1594 )
-
[7c8573f](7c8573f575
)
*(uncategorized)* Rearrange selection_spacing code by @raylu in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
-
[217c57c](217c57cd60
)
*(uncategorized)* Modularize backends by @orhun in
[#1508 ](https://github.com/ratatui/ratatui/pull/1508 )
-
[e461b72](e461b724a6
)
*(uncategorized)* Move {Stateful,}Widget{,Ref} types into individual
files by @joshka in
[#1479 ](https://github.com/ratatui/ratatui/pull/1479 )
### Documentation
-
[d291042](d291042e69
)
*(block)* Revise the block example by @orhun in
[#1520 ](https://github.com/ratatui/ratatui/pull/1520 )
-
[fcde9cb](fcde9cb9c3
)
*(changelog)* Fix typo by @orhun in
[#1463 ](https://github.com/ratatui/ratatui/pull/1463 )
-
[3ae6bf1](3ae6bf1d6f
)
*(contributing)* Use cargo-xtask for instructions by @orhun in
[#1509 ](https://github.com/ratatui/ratatui/pull/1509 )
-
[04e1b32](04e1b32cd2
)
*(layout)* Rename cassowary-rs references to cassowary by @miroim in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
-
[088aac1](088aac136d
)
*(readme)* Tweak links and badges by @joshka in
[#1598 ](https://github.com/ratatui/ratatui/pull/1598 )
-
[6e43672](6e436725e4
)
*(readme)* Reimagine README.md by @orhun in
[#1569 ](https://github.com/ratatui/ratatui/pull/1569 )
-
[8f28247](8f282473b2
)
*(readme)* Correct examples links by @HoKim98 in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
-
[9f90f74](9f90f7495f
)
*(readme)* Fix broken link by @nilsmartel in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
-
[260af68](260af68a34
)
*(readme)* Include iocraft as an alternative by @kdheepak in
[#1483 ](https://github.com/ratatui/ratatui/pull/1483 )
-
[dafb716](dafb716f9d
)
*(widgets)* Add example for grouped barchart by @orhun in
[#1566 ](https://github.com/ratatui/ratatui/pull/1566 )
-
[ed5dd73](ed5dd73084
)
*(widgets)* Add example for tabs by @orhun in
[#1559 ](https://github.com/ratatui/ratatui/pull/1559 )
-
[fab5321](fab532171d
)
*(widgets)* Add example for scrollbar by @orhun in
[#1545 ](https://github.com/ratatui/ratatui/pull/1545 )
-
[898aef6](898aef6e2f
)
*(widgets)* Add example for list by @orhun in
[#1542 ](https://github.com/ratatui/ratatui/pull/1542 )
-
[452366a](452366aa9e
)
*(widgets)* Add example for sparkline by @orhun in
[#1556 ](https://github.com/ratatui/ratatui/pull/1556 )
-
[6ddde0e](6ddde0e8a8
)
*(widgets)* Add example for table by @orhun in
[#1557 ](https://github.com/ratatui/ratatui/pull/1557 )
-
[93ad6b8](93ad6b828c
)
*(widgets)* Update values in chart example by @orhun in
[#1558 ](https://github.com/ratatui/ratatui/pull/1558 )
-
[15f442a](15f442a71e
)
*(widgets)* Add example for paragraph by @orhun in
[#1544 ](https://github.com/ratatui/ratatui/pull/1544 )
-
[17bba14](17bba14540
)
*(widgets)* Move the logo example to widgets by @orhun in
[#1543 ](https://github.com/ratatui/ratatui/pull/1543 )
-
[f2451e7](f2451e7f1e
)
*(widgets)* Add example for gauge by @orhun in
[#1539 ](https://github.com/ratatui/ratatui/pull/1539 )
-
[4f0a8b2](4f0a8b21af
)
*(widgets)* Add example for canvas by @orhun in
[#1533 ](https://github.com/ratatui/ratatui/pull/1533 )
-
[91147c4](91147c4d75
)
*(widgets)* Add example for chart by @orhun in
[#1536 ](https://github.com/ratatui/ratatui/pull/1536 )
-
[6dd25a3](6dd25a3111
)
*(widgets)* Add example for calendar by @orhun in
[#1532 ](https://github.com/ratatui/ratatui/pull/1532 )
-
[99ac005](99ac005b06
)
*(widgets)* Add simple barchart example by @joshka in
[#1511 ](https://github.com/ratatui/ratatui/pull/1511 )
-
[da05957](da05957fa0
)
*(uncategorized)* Add widget-ref-container example by @joshka in
[#1603 ](https://github.com/ratatui/ratatui/pull/1603 )
-
[1798512](1798512e94
)
*(uncategorized)* Fix wording in user_input example by @dawedawe in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
-
[03066d8](03066d81bf
)
*(uncategorized)* Fix punctuation in canvas.rs documentation by
@dawedawe in [#1583 ](https://github.com/ratatui/ratatui/pull/1583 )
-
[e411d9e](e411d9ec3e
)
*(uncategorized)* Add input form example by @joshka in
[#1551 ](https://github.com/ratatui/ratatui/pull/1551 )
-
[ed071f3](ed071f3723
)
*(uncategorized)* Add mouse-drawing example by @joshka in
[#1546 ](https://github.com/ratatui/ratatui/pull/1546 )
-
[46902f5](46902f5587
)
*(uncategorized)* Improve docs for workspace crates by @orhun in
[#1490 ](https://github.com/ratatui/ratatui/pull/1490 )
-
[a6b5792](a6b579223f
)
*(uncategorized)* Fix example link in readme by @thomas-tacquet in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
### Miscellaneous Tasks
-
[abe2f27](abe2f27328
)
*(backend)* Change From<T> impls to new backend specific IntoBackend and
FromBackend traits by @joshka in
[#1464 ](https://github.com/ratatui/ratatui/pull/1464 ) [**breaking**]
-
[0a47ebd](0a47ebd94b
)
*(bencher)* Update bencher CLI usage by @epompeii in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
-
[a0979d6](a0979d6871
)
*(build)* Remove cargo lint by @joshka in
[#1549 ](https://github.com/ratatui/ratatui/pull/1549 )
-
[eaa4038](eaa403856e
)
*(ci)* Install pre-built binaries for cargo-rdme by @orhun in
[#1477 ](https://github.com/ratatui/ratatui/pull/1477 )
-
[e5e2316](e5e2316451
)
*(ci)* Add check for keeping README.md up-to-date by @orhun in
[#1473 ](https://github.com/ratatui/ratatui/pull/1473 )
-
[2ef3583](2ef3583eff
)
*(ci)* Replace cargo-make with a custom cargo-xtask by @joshka in
[#1461 ](https://github.com/ratatui/ratatui/pull/1461 )
-
[98df774](98df774d7f
)
*(core)* Move core types to ratatui-core by @joshka in
[#1460 ](https://github.com/ratatui/ratatui/pull/1460 )
-
[35eba76](35eba76b4d
)
*(example)* Move demo2 to top level folder by @joshka in
[#1524 ](https://github.com/ratatui/ratatui/pull/1524 )
-
[5f57d35](5f57d35234
)
*(examples)* Add colors explorer demo app by @orhun in
[#1580 ](https://github.com/ratatui/ratatui/pull/1580 )
-
[5c021bf](5c021bf344
)
*(examples)* Add chart demo app by @orhun in
[#1579 ](https://github.com/ratatui/ratatui/pull/1579 )
-
[9721300](9721300a47
)
*(examples)* Add canvas demo app by @orhun in
[#1578 ](https://github.com/ratatui/ratatui/pull/1578 )
-
[a6a1368](a6a1368250
)
*(examples)* Add calendar explorer demo app by @orhun in
[#1571 ](https://github.com/ratatui/ratatui/pull/1571 )
-
[819e92c](819e92cd44
)
*(examples)* Add weather demo app by @orhun in
[#1567 ](https://github.com/ratatui/ratatui/pull/1567 )
-
[b5f7e44](b5f7e44183
)
*(examples)* Move async example to apps by @joshka in
[#1503 ](https://github.com/ratatui/ratatui/pull/1503 )
-
[17316ec](17316ec5d0
)
*(github)* Enable sponsorship button by @orhun in
[#1478 ](https://github.com/ratatui/ratatui/pull/1478 )
-
[d3f01eb](d3f01ebf6e
)
*(lint)* Ensure lint config is correct by @joshka in
[#1528 ](https://github.com/ratatui/ratatui/pull/1528 )
-
[2b7ec5c](2b7ec5cb7f
)
*(widgets)* Enable calendar widget as default by @orhun in
[#1521 ](https://github.com/ratatui/ratatui/pull/1521 )
-
[d201b8e](d201b8e5dd
)
*(xtask)* Check lints for only library targets by @orhun in
[#1531 ](https://github.com/ratatui/ratatui/pull/1531 )
-
[6f21319](6f213191ef
)
*(uncategorized)* Rename examples with clashing names by @joshka in
[#1597 ](https://github.com/ratatui/ratatui/pull/1597 )
-
[11cbb2b](11cbb2ba87
)
*(uncategorized)* Use cargo xtask for bacon clippy command by @joshka in
[#1592 ](https://github.com/ratatui/ratatui/pull/1592 )
-
[b544e39](b544e394c9
)
*(uncategorized)* Use clap instead of argh for demo example by @joshka
in [#1591 ](https://github.com/ratatui/ratatui/pull/1591 )
-
[9a54198](9a541981b8
)
*(uncategorized)* Make source files non-executable by @orhun in
[#1577 ](https://github.com/ratatui/ratatui/pull/1577 )
-
[357ae7e](357ae7e251
)
*(uncategorized)* Move terminal types to ratatui-core by @joshka in
[#1530 ](https://github.com/ratatui/ratatui/pull/1530 ) [**breaking**]
-
[21e62d8](21e62d84c2
)
*(uncategorized)* Move the demo example to main folder by @joshka in
[#1523 ](https://github.com/ratatui/ratatui/pull/1523 )
-
[fbf6050](fbf6050c86
)
*(uncategorized)* Prepare alpha modularization release by @joshka in
[#1525 ](https://github.com/ratatui/ratatui/pull/1525 )
-
[e4e95bc](e4e95bcecf
)
*(uncategorized)* Remove --color always flags from bacon.toml by @joshka
in [#1502 ](https://github.com/ratatui/ratatui/pull/1502 )
-
[a41c97b](a41c97b413
)
*(uncategorized)* Move unstable widget refs to ratatui by @joshka in
[#1491 ](https://github.com/ratatui/ratatui/pull/1491 ) [**breaking**]
-
[e7085e3](e7085e3a3e
)
*(uncategorized)* Move widgets into ratatui-widgets crate by @joshka in
[#1474 ](https://github.com/ratatui/ratatui/pull/1474 )
-
[f1d0a18](f1d0a18375
)
*(uncategorized)* Move ratatui crate into workspace folder by @joshka in
[#1459 ](https://github.com/ratatui/ratatui/pull/1459 )
-
[55fb2d2](55fb2d2e56
)
*(uncategorized)* Update repo links to ratatui instead of ratatui-org by
@joshka in [#1458 ](https://github.com/ratatui/ratatui/pull/1458 )
### Continuous Integration
-
[4a871f9](4a871f993e
)
*(uncategorized)* Refactor xtask / toml formatting by @joshka in
[#1602 ](https://github.com/ratatui/ratatui/pull/1602 )
### New Contributors
* @dawedawe made their first contribution in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
* @Its-Just-Nans made their first contribution in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
* @MarSik made their first contribution in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
* @raylu made their first contribution in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
* @renesat made their first contribution in
[#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
* @HoKim98 made their first contribution in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
* @nilsmartel made their first contribution in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
* @marcoieni made their first contribution in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
* @epompeii made their first contribution in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
* @thomas-tacquet made their first contribution in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
* @miroim made their first contribution in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
**Full Changelog**:
https://github.com/ratatui/ratatui/compare/v0.29.0...0.30.0-alpha.1
</blockquote>
## `ratatui-macros`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-06-30 04:53:20 -07:00
Jagoda Estera Ślązak
1399d95ae0
feat(no_std): make palette and serde features depends on std ( #1919 )
2025-06-23 23:00:40 -07:00
github-actions[bot]
7407c36849
chore: release ( #1854 )
...
## 🤖 New release
* `ratatui-core`: 0.1.0-alpha.4 -> 0.1.0-alpha.5
* `ratatui-crossterm`: 0.1.0-alpha.3 -> 0.1.0-alpha.4
* `ratatui-widgets`: 0.3.0-alpha.3 -> 0.3.0-alpha.4
* `ratatui-macros`: 0.7.0-alpha.2 -> 0.7.0-alpha.3
* `ratatui-termwiz`: 0.1.0-alpha.3 -> 0.1.0-alpha.4
* `ratatui-termion`: 0.1.0-alpha.3 -> 0.1.0-alpha.4
* `ratatui`: 0.30.0-alpha.3 -> 0.30.0-alpha.4
<details><summary><i><b>Changelog</b></i></summary><p>
## `ratatui-core`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)* Make StatefulWidget and Ref work with unsized State by
@thscharler in [#1505 ](https://github.com/ratatui/ratatui/pull/1505 )
-
[7b87509](7b875091e1
)
*(uncategorized)* Typo by @marcoieni in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
### Refactor
-
[f132fa1](f132fa1715
)
*(table)* Small readability improvements by @joshka in
[#1510 ](https://github.com/ratatui/ratatui/pull/1510 )
-
[904b0aa](904b0aa723
)
*(uncategorized)* Move symbols to modules by @joshka in
[#1594 ](https://github.com/ratatui/ratatui/pull/1594 )
-
[7c8573f](7c8573f575
)
*(uncategorized)* Rearrange selection_spacing code by @raylu in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
-
[217c57c](217c57cd60
)
*(uncategorized)* Modularize backends by @orhun in
[#1508 ](https://github.com/ratatui/ratatui/pull/1508 )
-
[e461b72](e461b724a6
)
*(uncategorized)* Move {Stateful,}Widget{,Ref} types into individual
files by @joshka in
[#1479 ](https://github.com/ratatui/ratatui/pull/1479 )
### Documentation
-
[d291042](d291042e69
)
*(block)* Revise the block example by @orhun in
[#1520 ](https://github.com/ratatui/ratatui/pull/1520 )
-
[fcde9cb](fcde9cb9c3
)
*(changelog)* Fix typo by @orhun in
[#1463 ](https://github.com/ratatui/ratatui/pull/1463 )
-
[3ae6bf1](3ae6bf1d6f
)
*(contributing)* Use cargo-xtask for instructions by @orhun in
[#1509 ](https://github.com/ratatui/ratatui/pull/1509 )
-
[04e1b32](04e1b32cd2
)
*(layout)* Rename cassowary-rs references to cassowary by @miroim in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
-
[088aac1](088aac136d
)
*(readme)* Tweak links and badges by @joshka in
[#1598 ](https://github.com/ratatui/ratatui/pull/1598 )
-
[6e43672](6e436725e4
)
*(readme)* Reimagine README.md by @orhun in
[#1569 ](https://github.com/ratatui/ratatui/pull/1569 )
-
[8f28247](8f282473b2
)
*(readme)* Correct examples links by @HoKim98 in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
-
[9f90f74](9f90f7495f
)
*(readme)* Fix broken link by @nilsmartel in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
-
[260af68](260af68a34
)
*(readme)* Include iocraft as an alternative by @kdheepak in
[#1483 ](https://github.com/ratatui/ratatui/pull/1483 )
-
[dafb716](dafb716f9d
)
*(widgets)* Add example for grouped barchart by @orhun in
[#1566 ](https://github.com/ratatui/ratatui/pull/1566 )
-
[ed5dd73](ed5dd73084
)
*(widgets)* Add example for tabs by @orhun in
[#1559 ](https://github.com/ratatui/ratatui/pull/1559 )
-
[fab5321](fab532171d
)
*(widgets)* Add example for scrollbar by @orhun in
[#1545 ](https://github.com/ratatui/ratatui/pull/1545 )
-
[898aef6](898aef6e2f
)
*(widgets)* Add example for list by @orhun in
[#1542 ](https://github.com/ratatui/ratatui/pull/1542 )
-
[452366a](452366aa9e
)
*(widgets)* Add example for sparkline by @orhun in
[#1556 ](https://github.com/ratatui/ratatui/pull/1556 )
-
[6ddde0e](6ddde0e8a8
)
*(widgets)* Add example for table by @orhun in
[#1557 ](https://github.com/ratatui/ratatui/pull/1557 )
-
[93ad6b8](93ad6b828c
)
*(widgets)* Update values in chart example by @orhun in
[#1558 ](https://github.com/ratatui/ratatui/pull/1558 )
-
[15f442a](15f442a71e
)
*(widgets)* Add example for paragraph by @orhun in
[#1544 ](https://github.com/ratatui/ratatui/pull/1544 )
-
[17bba14](17bba14540
)
*(widgets)* Move the logo example to widgets by @orhun in
[#1543 ](https://github.com/ratatui/ratatui/pull/1543 )
-
[f2451e7](f2451e7f1e
)
*(widgets)* Add example for gauge by @orhun in
[#1539 ](https://github.com/ratatui/ratatui/pull/1539 )
-
[4f0a8b2](4f0a8b21af
)
*(widgets)* Add example for canvas by @orhun in
[#1533 ](https://github.com/ratatui/ratatui/pull/1533 )
-
[91147c4](91147c4d75
)
*(widgets)* Add example for chart by @orhun in
[#1536 ](https://github.com/ratatui/ratatui/pull/1536 )
-
[6dd25a3](6dd25a3111
)
*(widgets)* Add example for calendar by @orhun in
[#1532 ](https://github.com/ratatui/ratatui/pull/1532 )
-
[99ac005](99ac005b06
)
*(widgets)* Add simple barchart example by @joshka in
[#1511 ](https://github.com/ratatui/ratatui/pull/1511 )
-
[da05957](da05957fa0
)
*(uncategorized)* Add widget-ref-container example by @joshka in
[#1603 ](https://github.com/ratatui/ratatui/pull/1603 )
-
[1798512](1798512e94
)
*(uncategorized)* Fix wording in user_input example by @dawedawe in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
-
[03066d8](03066d81bf
)
*(uncategorized)* Fix punctuation in canvas.rs documentation by
@dawedawe in [#1583 ](https://github.com/ratatui/ratatui/pull/1583 )
-
[e411d9e](e411d9ec3e
)
*(uncategorized)* Add input form example by @joshka in
[#1551 ](https://github.com/ratatui/ratatui/pull/1551 )
-
[ed071f3](ed071f3723
)
*(uncategorized)* Add mouse-drawing example by @joshka in
[#1546 ](https://github.com/ratatui/ratatui/pull/1546 )
-
[46902f5](46902f5587
)
*(uncategorized)* Improve docs for workspace crates by @orhun in
[#1490 ](https://github.com/ratatui/ratatui/pull/1490 )
-
[a6b5792](a6b579223f
)
*(uncategorized)* Fix example link in readme by @thomas-tacquet in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
### Miscellaneous Tasks
-
[abe2f27](abe2f27328
)
*(backend)* Change From<T> impls to new backend specific IntoBackend and
FromBackend traits by @joshka in
[#1464 ](https://github.com/ratatui/ratatui/pull/1464 ) [**breaking**]
-
[0a47ebd](0a47ebd94b
)
*(bencher)* Update bencher CLI usage by @epompeii in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
-
[a0979d6](a0979d6871
)
*(build)* Remove cargo lint by @joshka in
[#1549 ](https://github.com/ratatui/ratatui/pull/1549 )
-
[eaa4038](eaa403856e
)
*(ci)* Install pre-built binaries for cargo-rdme by @orhun in
[#1477 ](https://github.com/ratatui/ratatui/pull/1477 )
-
[e5e2316](e5e2316451
)
*(ci)* Add check for keeping README.md up-to-date by @orhun in
[#1473 ](https://github.com/ratatui/ratatui/pull/1473 )
-
[2ef3583](2ef3583eff
)
*(ci)* Replace cargo-make with a custom cargo-xtask by @joshka in
[#1461 ](https://github.com/ratatui/ratatui/pull/1461 )
-
[98df774](98df774d7f
)
*(core)* Move core types to ratatui-core by @joshka in
[#1460 ](https://github.com/ratatui/ratatui/pull/1460 )
-
[35eba76](35eba76b4d
)
*(example)* Move demo2 to top level folder by @joshka in
[#1524 ](https://github.com/ratatui/ratatui/pull/1524 )
-
[5f57d35](5f57d35234
)
*(examples)* Add colors explorer demo app by @orhun in
[#1580 ](https://github.com/ratatui/ratatui/pull/1580 )
-
[5c021bf](5c021bf344
)
*(examples)* Add chart demo app by @orhun in
[#1579 ](https://github.com/ratatui/ratatui/pull/1579 )
-
[9721300](9721300a47
)
*(examples)* Add canvas demo app by @orhun in
[#1578 ](https://github.com/ratatui/ratatui/pull/1578 )
-
[a6a1368](a6a1368250
)
*(examples)* Add calendar explorer demo app by @orhun in
[#1571 ](https://github.com/ratatui/ratatui/pull/1571 )
-
[819e92c](819e92cd44
)
*(examples)* Add weather demo app by @orhun in
[#1567 ](https://github.com/ratatui/ratatui/pull/1567 )
-
[b5f7e44](b5f7e44183
)
*(examples)* Move async example to apps by @joshka in
[#1503 ](https://github.com/ratatui/ratatui/pull/1503 )
-
[17316ec](17316ec5d0
)
*(github)* Enable sponsorship button by @orhun in
[#1478 ](https://github.com/ratatui/ratatui/pull/1478 )
-
[d3f01eb](d3f01ebf6e
)
*(lint)* Ensure lint config is correct by @joshka in
[#1528 ](https://github.com/ratatui/ratatui/pull/1528 )
-
[2b7ec5c](2b7ec5cb7f
)
*(widgets)* Enable calendar widget as default by @orhun in
[#1521 ](https://github.com/ratatui/ratatui/pull/1521 )
-
[d201b8e](d201b8e5dd
)
*(xtask)* Check lints for only library targets by @orhun in
[#1531 ](https://github.com/ratatui/ratatui/pull/1531 )
-
[6f21319](6f213191ef
)
*(uncategorized)* Rename examples with clashing names by @joshka in
[#1597 ](https://github.com/ratatui/ratatui/pull/1597 )
-
[11cbb2b](11cbb2ba87
)
*(uncategorized)* Use cargo xtask for bacon clippy command by @joshka in
[#1592 ](https://github.com/ratatui/ratatui/pull/1592 )
-
[b544e39](b544e394c9
)
*(uncategorized)* Use clap instead of argh for demo example by @joshka
in [#1591 ](https://github.com/ratatui/ratatui/pull/1591 )
-
[9a54198](9a541981b8
)
*(uncategorized)* Make source files non-executable by @orhun in
[#1577 ](https://github.com/ratatui/ratatui/pull/1577 )
-
[357ae7e](357ae7e251
)
*(uncategorized)* Move terminal types to ratatui-core by @joshka in
[#1530 ](https://github.com/ratatui/ratatui/pull/1530 ) [**breaking**]
-
[21e62d8](21e62d84c2
)
*(uncategorized)* Move the demo example to main folder by @joshka in
[#1523 ](https://github.com/ratatui/ratatui/pull/1523 )
-
[fbf6050](fbf6050c86
)
*(uncategorized)* Prepare alpha modularization release by @joshka in
[#1525 ](https://github.com/ratatui/ratatui/pull/1525 )
-
[e4e95bc](e4e95bcecf
)
*(uncategorized)* Remove --color always flags from bacon.toml by @joshka
in [#1502 ](https://github.com/ratatui/ratatui/pull/1502 )
-
[a41c97b](a41c97b413
)
*(uncategorized)* Move unstable widget refs to ratatui by @joshka in
[#1491 ](https://github.com/ratatui/ratatui/pull/1491 ) [**breaking**]
-
[e7085e3](e7085e3a3e
)
*(uncategorized)* Move widgets into ratatui-widgets crate by @joshka in
[#1474 ](https://github.com/ratatui/ratatui/pull/1474 )
-
[f1d0a18](f1d0a18375
)
*(uncategorized)* Move ratatui crate into workspace folder by @joshka in
[#1459 ](https://github.com/ratatui/ratatui/pull/1459 )
-
[55fb2d2](55fb2d2e56
)
*(uncategorized)* Update repo links to ratatui instead of ratatui-org by
@joshka in [#1458 ](https://github.com/ratatui/ratatui/pull/1458 )
### Continuous Integration
-
[4a871f9](4a871f993e
)
*(uncategorized)* Refactor xtask / toml formatting by @joshka in
[#1602 ](https://github.com/ratatui/ratatui/pull/1602 )
### New Contributors
* @dawedawe made their first contribution in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
* @Its-Just-Nans made their first contribution in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
* @MarSik made their first contribution in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
* @raylu made their first contribution in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
* @renesat made their first contribution in
[#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
* @HoKim98 made their first contribution in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
* @nilsmartel made their first contribution in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
* @marcoieni made their first contribution in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
* @epompeii made their first contribution in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
* @thomas-tacquet made their first contribution in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
* @miroim made their first contribution in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
**Full Changelog**:
https://github.com/ratatui/ratatui/compare/v0.29.0...0.30.0-alpha.1
</blockquote>
## `ratatui-crossterm`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)* Make StatefulWidget and Ref work with unsized State by
@thscharler in [#1505 ](https://github.com/ratatui/ratatui/pull/1505 )
-
[7b87509](7b875091e1
)
*(uncategorized)* Typo by @marcoieni in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
### Refactor
-
[f132fa1](f132fa1715
)
*(table)* Small readability improvements by @joshka in
[#1510 ](https://github.com/ratatui/ratatui/pull/1510 )
-
[904b0aa](904b0aa723
)
*(uncategorized)* Move symbols to modules by @joshka in
[#1594 ](https://github.com/ratatui/ratatui/pull/1594 )
-
[7c8573f](7c8573f575
)
*(uncategorized)* Rearrange selection_spacing code by @raylu in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
-
[217c57c](217c57cd60
)
*(uncategorized)* Modularize backends by @orhun in
[#1508 ](https://github.com/ratatui/ratatui/pull/1508 )
-
[e461b72](e461b724a6
)
*(uncategorized)* Move {Stateful,}Widget{,Ref} types into individual
files by @joshka in
[#1479 ](https://github.com/ratatui/ratatui/pull/1479 )
### Documentation
-
[d291042](d291042e69
)
*(block)* Revise the block example by @orhun in
[#1520 ](https://github.com/ratatui/ratatui/pull/1520 )
-
[fcde9cb](fcde9cb9c3
)
*(changelog)* Fix typo by @orhun in
[#1463 ](https://github.com/ratatui/ratatui/pull/1463 )
-
[3ae6bf1](3ae6bf1d6f
)
*(contributing)* Use cargo-xtask for instructions by @orhun in
[#1509 ](https://github.com/ratatui/ratatui/pull/1509 )
-
[04e1b32](04e1b32cd2
)
*(layout)* Rename cassowary-rs references to cassowary by @miroim in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
-
[088aac1](088aac136d
)
*(readme)* Tweak links and badges by @joshka in
[#1598 ](https://github.com/ratatui/ratatui/pull/1598 )
-
[6e43672](6e436725e4
)
*(readme)* Reimagine README.md by @orhun in
[#1569 ](https://github.com/ratatui/ratatui/pull/1569 )
-
[8f28247](8f282473b2
)
*(readme)* Correct examples links by @HoKim98 in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
-
[9f90f74](9f90f7495f
)
*(readme)* Fix broken link by @nilsmartel in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
-
[260af68](260af68a34
)
*(readme)* Include iocraft as an alternative by @kdheepak in
[#1483 ](https://github.com/ratatui/ratatui/pull/1483 )
-
[dafb716](dafb716f9d
)
*(widgets)* Add example for grouped barchart by @orhun in
[#1566 ](https://github.com/ratatui/ratatui/pull/1566 )
-
[ed5dd73](ed5dd73084
)
*(widgets)* Add example for tabs by @orhun in
[#1559 ](https://github.com/ratatui/ratatui/pull/1559 )
-
[fab5321](fab532171d
)
*(widgets)* Add example for scrollbar by @orhun in
[#1545 ](https://github.com/ratatui/ratatui/pull/1545 )
-
[898aef6](898aef6e2f
)
*(widgets)* Add example for list by @orhun in
[#1542 ](https://github.com/ratatui/ratatui/pull/1542 )
-
[452366a](452366aa9e
)
*(widgets)* Add example for sparkline by @orhun in
[#1556 ](https://github.com/ratatui/ratatui/pull/1556 )
-
[6ddde0e](6ddde0e8a8
)
*(widgets)* Add example for table by @orhun in
[#1557 ](https://github.com/ratatui/ratatui/pull/1557 )
-
[93ad6b8](93ad6b828c
)
*(widgets)* Update values in chart example by @orhun in
[#1558 ](https://github.com/ratatui/ratatui/pull/1558 )
-
[15f442a](15f442a71e
)
*(widgets)* Add example for paragraph by @orhun in
[#1544 ](https://github.com/ratatui/ratatui/pull/1544 )
-
[17bba14](17bba14540
)
*(widgets)* Move the logo example to widgets by @orhun in
[#1543 ](https://github.com/ratatui/ratatui/pull/1543 )
-
[f2451e7](f2451e7f1e
)
*(widgets)* Add example for gauge by @orhun in
[#1539 ](https://github.com/ratatui/ratatui/pull/1539 )
-
[4f0a8b2](4f0a8b21af
)
*(widgets)* Add example for canvas by @orhun in
[#1533 ](https://github.com/ratatui/ratatui/pull/1533 )
-
[91147c4](91147c4d75
)
*(widgets)* Add example for chart by @orhun in
[#1536 ](https://github.com/ratatui/ratatui/pull/1536 )
-
[6dd25a3](6dd25a3111
)
*(widgets)* Add example for calendar by @orhun in
[#1532 ](https://github.com/ratatui/ratatui/pull/1532 )
-
[99ac005](99ac005b06
)
*(widgets)* Add simple barchart example by @joshka in
[#1511 ](https://github.com/ratatui/ratatui/pull/1511 )
-
[da05957](da05957fa0
)
*(uncategorized)* Add widget-ref-container example by @joshka in
[#1603 ](https://github.com/ratatui/ratatui/pull/1603 )
-
[1798512](1798512e94
)
*(uncategorized)* Fix wording in user_input example by @dawedawe in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
-
[03066d8](03066d81bf
)
*(uncategorized)* Fix punctuation in canvas.rs documentation by
@dawedawe in [#1583 ](https://github.com/ratatui/ratatui/pull/1583 )
-
[e411d9e](e411d9ec3e
)
*(uncategorized)* Add input form example by @joshka in
[#1551 ](https://github.com/ratatui/ratatui/pull/1551 )
-
[ed071f3](ed071f3723
)
*(uncategorized)* Add mouse-drawing example by @joshka in
[#1546 ](https://github.com/ratatui/ratatui/pull/1546 )
-
[46902f5](46902f5587
)
*(uncategorized)* Improve docs for workspace crates by @orhun in
[#1490 ](https://github.com/ratatui/ratatui/pull/1490 )
-
[a6b5792](a6b579223f
)
*(uncategorized)* Fix example link in readme by @thomas-tacquet in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
### Miscellaneous Tasks
-
[abe2f27](abe2f27328
)
*(backend)* Change From<T> impls to new backend specific IntoBackend and
FromBackend traits by @joshka in
[#1464 ](https://github.com/ratatui/ratatui/pull/1464 ) [**breaking**]
-
[0a47ebd](0a47ebd94b
)
*(bencher)* Update bencher CLI usage by @epompeii in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
-
[a0979d6](a0979d6871
)
*(build)* Remove cargo lint by @joshka in
[#1549 ](https://github.com/ratatui/ratatui/pull/1549 )
-
[eaa4038](eaa403856e
)
*(ci)* Install pre-built binaries for cargo-rdme by @orhun in
[#1477 ](https://github.com/ratatui/ratatui/pull/1477 )
-
[e5e2316](e5e2316451
)
*(ci)* Add check for keeping README.md up-to-date by @orhun in
[#1473 ](https://github.com/ratatui/ratatui/pull/1473 )
-
[2ef3583](2ef3583eff
)
*(ci)* Replace cargo-make with a custom cargo-xtask by @joshka in
[#1461 ](https://github.com/ratatui/ratatui/pull/1461 )
-
[98df774](98df774d7f
)
*(core)* Move core types to ratatui-core by @joshka in
[#1460 ](https://github.com/ratatui/ratatui/pull/1460 )
-
[35eba76](35eba76b4d
)
*(example)* Move demo2 to top level folder by @joshka in
[#1524 ](https://github.com/ratatui/ratatui/pull/1524 )
-
[5f57d35](5f57d35234
)
*(examples)* Add colors explorer demo app by @orhun in
[#1580 ](https://github.com/ratatui/ratatui/pull/1580 )
-
[5c021bf](5c021bf344
)
*(examples)* Add chart demo app by @orhun in
[#1579 ](https://github.com/ratatui/ratatui/pull/1579 )
-
[9721300](9721300a47
)
*(examples)* Add canvas demo app by @orhun in
[#1578 ](https://github.com/ratatui/ratatui/pull/1578 )
-
[a6a1368](a6a1368250
)
*(examples)* Add calendar explorer demo app by @orhun in
[#1571 ](https://github.com/ratatui/ratatui/pull/1571 )
-
[819e92c](819e92cd44
)
*(examples)* Add weather demo app by @orhun in
[#1567 ](https://github.com/ratatui/ratatui/pull/1567 )
-
[b5f7e44](b5f7e44183
)
*(examples)* Move async example to apps by @joshka in
[#1503 ](https://github.com/ratatui/ratatui/pull/1503 )
-
[17316ec](17316ec5d0
)
*(github)* Enable sponsorship button by @orhun in
[#1478 ](https://github.com/ratatui/ratatui/pull/1478 )
-
[d3f01eb](d3f01ebf6e
)
*(lint)* Ensure lint config is correct by @joshka in
[#1528 ](https://github.com/ratatui/ratatui/pull/1528 )
-
[2b7ec5c](2b7ec5cb7f
)
*(widgets)* Enable calendar widget as default by @orhun in
[#1521 ](https://github.com/ratatui/ratatui/pull/1521 )
-
[d201b8e](d201b8e5dd
)
*(xtask)* Check lints for only library targets by @orhun in
[#1531 ](https://github.com/ratatui/ratatui/pull/1531 )
-
[6f21319](6f213191ef
)
*(uncategorized)* Rename examples with clashing names by @joshka in
[#1597 ](https://github.com/ratatui/ratatui/pull/1597 )
-
[11cbb2b](11cbb2ba87
)
*(uncategorized)* Use cargo xtask for bacon clippy command by @joshka in
[#1592 ](https://github.com/ratatui/ratatui/pull/1592 )
-
[b544e39](b544e394c9
)
*(uncategorized)* Use clap instead of argh for demo example by @joshka
in [#1591 ](https://github.com/ratatui/ratatui/pull/1591 )
-
[9a54198](9a541981b8
)
*(uncategorized)* Make source files non-executable by @orhun in
[#1577 ](https://github.com/ratatui/ratatui/pull/1577 )
-
[357ae7e](357ae7e251
)
*(uncategorized)* Move terminal types to ratatui-core by @joshka in
[#1530 ](https://github.com/ratatui/ratatui/pull/1530 ) [**breaking**]
-
[21e62d8](21e62d84c2
)
*(uncategorized)* Move the demo example to main folder by @joshka in
[#1523 ](https://github.com/ratatui/ratatui/pull/1523 )
-
[fbf6050](fbf6050c86
)
*(uncategorized)* Prepare alpha modularization release by @joshka in
[#1525 ](https://github.com/ratatui/ratatui/pull/1525 )
-
[e4e95bc](e4e95bcecf
)
*(uncategorized)* Remove --color always flags from bacon.toml by @joshka
in [#1502 ](https://github.com/ratatui/ratatui/pull/1502 )
-
[a41c97b](a41c97b413
)
*(uncategorized)* Move unstable widget refs to ratatui by @joshka in
[#1491 ](https://github.com/ratatui/ratatui/pull/1491 ) [**breaking**]
-
[e7085e3](e7085e3a3e
)
*(uncategorized)* Move widgets into ratatui-widgets crate by @joshka in
[#1474 ](https://github.com/ratatui/ratatui/pull/1474 )
-
[f1d0a18](f1d0a18375
)
*(uncategorized)* Move ratatui crate into workspace folder by @joshka in
[#1459 ](https://github.com/ratatui/ratatui/pull/1459 )
-
[55fb2d2](55fb2d2e56
)
*(uncategorized)* Update repo links to ratatui instead of ratatui-org by
@joshka in [#1458 ](https://github.com/ratatui/ratatui/pull/1458 )
### Continuous Integration
-
[4a871f9](4a871f993e
)
*(uncategorized)* Refactor xtask / toml formatting by @joshka in
[#1602 ](https://github.com/ratatui/ratatui/pull/1602 )
### New Contributors
* @dawedawe made their first contribution in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
* @Its-Just-Nans made their first contribution in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
* @MarSik made their first contribution in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
* @raylu made their first contribution in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
* @renesat made their first contribution in
[#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
* @HoKim98 made their first contribution in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
* @nilsmartel made their first contribution in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
* @marcoieni made their first contribution in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
* @epompeii made their first contribution in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
* @thomas-tacquet made their first contribution in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
* @miroim made their first contribution in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
**Full Changelog**:
https://github.com/ratatui/ratatui/compare/v0.29.0...0.30.0-alpha.1
</blockquote>
## `ratatui-widgets`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)* Make StatefulWidget and Ref work with unsized State by
@thscharler in [#1505 ](https://github.com/ratatui/ratatui/pull/1505 )
-
[7b87509](7b875091e1
)
*(uncategorized)* Typo by @marcoieni in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
### Refactor
-
[f132fa1](f132fa1715
)
*(table)* Small readability improvements by @joshka in
[#1510 ](https://github.com/ratatui/ratatui/pull/1510 )
-
[904b0aa](904b0aa723
)
*(uncategorized)* Move symbols to modules by @joshka in
[#1594 ](https://github.com/ratatui/ratatui/pull/1594 )
-
[7c8573f](7c8573f575
)
*(uncategorized)* Rearrange selection_spacing code by @raylu in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
-
[217c57c](217c57cd60
)
*(uncategorized)* Modularize backends by @orhun in
[#1508 ](https://github.com/ratatui/ratatui/pull/1508 )
-
[e461b72](e461b724a6
)
*(uncategorized)* Move {Stateful,}Widget{,Ref} types into individual
files by @joshka in
[#1479 ](https://github.com/ratatui/ratatui/pull/1479 )
### Documentation
-
[d291042](d291042e69
)
*(block)* Revise the block example by @orhun in
[#1520 ](https://github.com/ratatui/ratatui/pull/1520 )
-
[fcde9cb](fcde9cb9c3
)
*(changelog)* Fix typo by @orhun in
[#1463 ](https://github.com/ratatui/ratatui/pull/1463 )
-
[3ae6bf1](3ae6bf1d6f
)
*(contributing)* Use cargo-xtask for instructions by @orhun in
[#1509 ](https://github.com/ratatui/ratatui/pull/1509 )
-
[04e1b32](04e1b32cd2
)
*(layout)* Rename cassowary-rs references to cassowary by @miroim in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
-
[088aac1](088aac136d
)
*(readme)* Tweak links and badges by @joshka in
[#1598 ](https://github.com/ratatui/ratatui/pull/1598 )
-
[6e43672](6e436725e4
)
*(readme)* Reimagine README.md by @orhun in
[#1569 ](https://github.com/ratatui/ratatui/pull/1569 )
-
[8f28247](8f282473b2
)
*(readme)* Correct examples links by @HoKim98 in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
-
[9f90f74](9f90f7495f
)
*(readme)* Fix broken link by @nilsmartel in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
-
[260af68](260af68a34
)
*(readme)* Include iocraft as an alternative by @kdheepak in
[#1483 ](https://github.com/ratatui/ratatui/pull/1483 )
-
[dafb716](dafb716f9d
)
*(widgets)* Add example for grouped barchart by @orhun in
[#1566 ](https://github.com/ratatui/ratatui/pull/1566 )
-
[ed5dd73](ed5dd73084
)
*(widgets)* Add example for tabs by @orhun in
[#1559 ](https://github.com/ratatui/ratatui/pull/1559 )
-
[fab5321](fab532171d
)
*(widgets)* Add example for scrollbar by @orhun in
[#1545 ](https://github.com/ratatui/ratatui/pull/1545 )
-
[898aef6](898aef6e2f
)
*(widgets)* Add example for list by @orhun in
[#1542 ](https://github.com/ratatui/ratatui/pull/1542 )
-
[452366a](452366aa9e
)
*(widgets)* Add example for sparkline by @orhun in
[#1556 ](https://github.com/ratatui/ratatui/pull/1556 )
-
[6ddde0e](6ddde0e8a8
)
*(widgets)* Add example for table by @orhun in
[#1557 ](https://github.com/ratatui/ratatui/pull/1557 )
-
[93ad6b8](93ad6b828c
)
*(widgets)* Update values in chart example by @orhun in
[#1558 ](https://github.com/ratatui/ratatui/pull/1558 )
-
[15f442a](15f442a71e
)
*(widgets)* Add example for paragraph by @orhun in
[#1544 ](https://github.com/ratatui/ratatui/pull/1544 )
-
[17bba14](17bba14540
)
*(widgets)* Move the logo example to widgets by @orhun in
[#1543 ](https://github.com/ratatui/ratatui/pull/1543 )
-
[f2451e7](f2451e7f1e
)
*(widgets)* Add example for gauge by @orhun in
[#1539 ](https://github.com/ratatui/ratatui/pull/1539 )
-
[4f0a8b2](4f0a8b21af
)
*(widgets)* Add example for canvas by @orhun in
[#1533 ](https://github.com/ratatui/ratatui/pull/1533 )
-
[91147c4](91147c4d75
)
*(widgets)* Add example for chart by @orhun in
[#1536 ](https://github.com/ratatui/ratatui/pull/1536 )
-
[6dd25a3](6dd25a3111
)
*(widgets)* Add example for calendar by @orhun in
[#1532 ](https://github.com/ratatui/ratatui/pull/1532 )
-
[99ac005](99ac005b06
)
*(widgets)* Add simple barchart example by @joshka in
[#1511 ](https://github.com/ratatui/ratatui/pull/1511 )
-
[da05957](da05957fa0
)
*(uncategorized)* Add widget-ref-container example by @joshka in
[#1603 ](https://github.com/ratatui/ratatui/pull/1603 )
-
[1798512](1798512e94
)
*(uncategorized)* Fix wording in user_input example by @dawedawe in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
-
[03066d8](03066d81bf
)
*(uncategorized)* Fix punctuation in canvas.rs documentation by
@dawedawe in [#1583 ](https://github.com/ratatui/ratatui/pull/1583 )
-
[e411d9e](e411d9ec3e
)
*(uncategorized)* Add input form example by @joshka in
[#1551 ](https://github.com/ratatui/ratatui/pull/1551 )
-
[ed071f3](ed071f3723
)
*(uncategorized)* Add mouse-drawing example by @joshka in
[#1546 ](https://github.com/ratatui/ratatui/pull/1546 )
-
[46902f5](46902f5587
)
*(uncategorized)* Improve docs for workspace crates by @orhun in
[#1490 ](https://github.com/ratatui/ratatui/pull/1490 )
-
[a6b5792](a6b579223f
)
*(uncategorized)* Fix example link in readme by @thomas-tacquet in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
### Miscellaneous Tasks
-
[abe2f27](abe2f27328
)
*(backend)* Change From<T> impls to new backend specific IntoBackend and
FromBackend traits by @joshka in
[#1464 ](https://github.com/ratatui/ratatui/pull/1464 ) [**breaking**]
-
[0a47ebd](0a47ebd94b
)
*(bencher)* Update bencher CLI usage by @epompeii in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
-
[a0979d6](a0979d6871
)
*(build)* Remove cargo lint by @joshka in
[#1549 ](https://github.com/ratatui/ratatui/pull/1549 )
-
[eaa4038](eaa403856e
)
*(ci)* Install pre-built binaries for cargo-rdme by @orhun in
[#1477 ](https://github.com/ratatui/ratatui/pull/1477 )
-
[e5e2316](e5e2316451
)
*(ci)* Add check for keeping README.md up-to-date by @orhun in
[#1473 ](https://github.com/ratatui/ratatui/pull/1473 )
-
[2ef3583](2ef3583eff
)
*(ci)* Replace cargo-make with a custom cargo-xtask by @joshka in
[#1461 ](https://github.com/ratatui/ratatui/pull/1461 )
-
[98df774](98df774d7f
)
*(core)* Move core types to ratatui-core by @joshka in
[#1460 ](https://github.com/ratatui/ratatui/pull/1460 )
-
[35eba76](35eba76b4d
)
*(example)* Move demo2 to top level folder by @joshka in
[#1524 ](https://github.com/ratatui/ratatui/pull/1524 )
-
[5f57d35](5f57d35234
)
*(examples)* Add colors explorer demo app by @orhun in
[#1580 ](https://github.com/ratatui/ratatui/pull/1580 )
-
[5c021bf](5c021bf344
)
*(examples)* Add chart demo app by @orhun in
[#1579 ](https://github.com/ratatui/ratatui/pull/1579 )
-
[9721300](9721300a47
)
*(examples)* Add canvas demo app by @orhun in
[#1578 ](https://github.com/ratatui/ratatui/pull/1578 )
-
[a6a1368](a6a1368250
)
*(examples)* Add calendar explorer demo app by @orhun in
[#1571 ](https://github.com/ratatui/ratatui/pull/1571 )
-
[819e92c](819e92cd44
)
*(examples)* Add weather demo app by @orhun in
[#1567 ](https://github.com/ratatui/ratatui/pull/1567 )
-
[b5f7e44](b5f7e44183
)
*(examples)* Move async example to apps by @joshka in
[#1503 ](https://github.com/ratatui/ratatui/pull/1503 )
-
[17316ec](17316ec5d0
)
*(github)* Enable sponsorship button by @orhun in
[#1478 ](https://github.com/ratatui/ratatui/pull/1478 )
-
[d3f01eb](d3f01ebf6e
)
*(lint)* Ensure lint config is correct by @joshka in
[#1528 ](https://github.com/ratatui/ratatui/pull/1528 )
-
[2b7ec5c](2b7ec5cb7f
)
*(widgets)* Enable calendar widget as default by @orhun in
[#1521 ](https://github.com/ratatui/ratatui/pull/1521 )
-
[d201b8e](d201b8e5dd
)
*(xtask)* Check lints for only library targets by @orhun in
[#1531 ](https://github.com/ratatui/ratatui/pull/1531 )
-
[6f21319](6f213191ef
)
*(uncategorized)* Rename examples with clashing names by @joshka in
[#1597 ](https://github.com/ratatui/ratatui/pull/1597 )
-
[11cbb2b](11cbb2ba87
)
*(uncategorized)* Use cargo xtask for bacon clippy command by @joshka in
[#1592 ](https://github.com/ratatui/ratatui/pull/1592 )
-
[b544e39](b544e394c9
)
*(uncategorized)* Use clap instead of argh for demo example by @joshka
in [#1591 ](https://github.com/ratatui/ratatui/pull/1591 )
-
[9a54198](9a541981b8
)
*(uncategorized)* Make source files non-executable by @orhun in
[#1577 ](https://github.com/ratatui/ratatui/pull/1577 )
-
[357ae7e](357ae7e251
)
*(uncategorized)* Move terminal types to ratatui-core by @joshka in
[#1530 ](https://github.com/ratatui/ratatui/pull/1530 ) [**breaking**]
-
[21e62d8](21e62d84c2
)
*(uncategorized)* Move the demo example to main folder by @joshka in
[#1523 ](https://github.com/ratatui/ratatui/pull/1523 )
-
[fbf6050](fbf6050c86
)
*(uncategorized)* Prepare alpha modularization release by @joshka in
[#1525 ](https://github.com/ratatui/ratatui/pull/1525 )
-
[e4e95bc](e4e95bcecf
)
*(uncategorized)* Remove --color always flags from bacon.toml by @joshka
in [#1502 ](https://github.com/ratatui/ratatui/pull/1502 )
-
[a41c97b](a41c97b413
)
*(uncategorized)* Move unstable widget refs to ratatui by @joshka in
[#1491 ](https://github.com/ratatui/ratatui/pull/1491 ) [**breaking**]
-
[e7085e3](e7085e3a3e
)
*(uncategorized)* Move widgets into ratatui-widgets crate by @joshka in
[#1474 ](https://github.com/ratatui/ratatui/pull/1474 )
-
[f1d0a18](f1d0a18375
)
*(uncategorized)* Move ratatui crate into workspace folder by @joshka in
[#1459 ](https://github.com/ratatui/ratatui/pull/1459 )
-
[55fb2d2](55fb2d2e56
)
*(uncategorized)* Update repo links to ratatui instead of ratatui-org by
@joshka in [#1458 ](https://github.com/ratatui/ratatui/pull/1458 )
### Continuous Integration
-
[4a871f9](4a871f993e
)
*(uncategorized)* Refactor xtask / toml formatting by @joshka in
[#1602 ](https://github.com/ratatui/ratatui/pull/1602 )
### New Contributors
* @dawedawe made their first contribution in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
* @Its-Just-Nans made their first contribution in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
* @MarSik made their first contribution in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
* @raylu made their first contribution in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
* @renesat made their first contribution in
[#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
* @HoKim98 made their first contribution in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
* @nilsmartel made their first contribution in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
* @marcoieni made their first contribution in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
* @epompeii made their first contribution in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
* @thomas-tacquet made their first contribution in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
* @miroim made their first contribution in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
**Full Changelog**:
https://github.com/ratatui/ratatui/compare/v0.29.0...0.30.0-alpha.1
</blockquote>
## `ratatui-macros`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-19 01:20:49 -07:00
Josh McKinney
a07f5bec20
chore: move dependency management to workspace ( #1858 )
...
Move all dependency management to the workspace level. This makes it
easier to manage dependencies across multiple crates in the workspace.
This also changes the versions of each dependency to track based on the
semver compatible version of the dependency (e.g. 0.1 instead of 0.1.0
or 2.9 instead of 2.9.0 to avoid having to regularly update the toml
files and to communicate that Ratatui will still generally work with
versions of the dependencies that are not the fully latest version. The
exact version of the dependencies is still tracked in the Cargo.lock
file.
Several dependencies that are fairly stable are changed to track a less
specific version (e.g. serde 1 instead of 1.0.x).
The following dependencies are updated to their latest versions:
- bitflags (2.3 -> 2.9)
- strum (0.26 -> 0.27)
- strum_macros (0.26 -> 0.27)
- all other semver compatible updates
2025-05-15 09:55:34 -07:00
github-actions[bot]
dcb0e5dffc
chore: release ( #1701 )
...
## 🤖 New release
* `ratatui-core`: 0.1.0-alpha.3 -> 0.1.0-alpha.4
* `ratatui-crossterm`: 0.1.0-alpha.2 -> 0.1.0-alpha.3
* `ratatui-widgets`: 0.3.0-alpha.2 -> 0.3.0-alpha.3
* `ratatui-macros`: 0.7.0-alpha.1 -> 0.7.0-alpha.2
* `ratatui-termwiz`: 0.1.0-alpha.2 -> 0.1.0-alpha.3
* `ratatui-termion`: 0.1.0-alpha.2 -> 0.1.0-alpha.3
* `ratatui`: 0.30.0-alpha.2 -> 0.30.0-alpha.3
<details><summary><i><b>Changelog</b></i></summary><p>
## `ratatui-core`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)* Make StatefulWidget and Ref work with unsized State by
@thscharler in [#1505 ](https://github.com/ratatui/ratatui/pull/1505 )
-
[7b87509](7b875091e1
)
*(uncategorized)* Typo by @marcoieni in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
### Refactor
-
[f132fa1](f132fa1715
)
*(table)* Small readability improvements by @joshka in
[#1510 ](https://github.com/ratatui/ratatui/pull/1510 )
-
[904b0aa](904b0aa723
)
*(uncategorized)* Move symbols to modules by @joshka in
[#1594 ](https://github.com/ratatui/ratatui/pull/1594 )
-
[7c8573f](7c8573f575
)
*(uncategorized)* Rearrange selection_spacing code by @raylu in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
-
[217c57c](217c57cd60
)
*(uncategorized)* Modularize backends by @orhun in
[#1508 ](https://github.com/ratatui/ratatui/pull/1508 )
-
[e461b72](e461b724a6
)
*(uncategorized)* Move {Stateful,}Widget{,Ref} types into individual
files by @joshka in
[#1479 ](https://github.com/ratatui/ratatui/pull/1479 )
### Documentation
-
[d291042](d291042e69
)
*(block)* Revise the block example by @orhun in
[#1520 ](https://github.com/ratatui/ratatui/pull/1520 )
-
[fcde9cb](fcde9cb9c3
)
*(changelog)* Fix typo by @orhun in
[#1463 ](https://github.com/ratatui/ratatui/pull/1463 )
-
[3ae6bf1](3ae6bf1d6f
)
*(contributing)* Use cargo-xtask for instructions by @orhun in
[#1509 ](https://github.com/ratatui/ratatui/pull/1509 )
-
[04e1b32](04e1b32cd2
)
*(layout)* Rename cassowary-rs references to cassowary by @miroim in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
-
[088aac1](088aac136d
)
*(readme)* Tweak links and badges by @joshka in
[#1598 ](https://github.com/ratatui/ratatui/pull/1598 )
-
[6e43672](6e436725e4
)
*(readme)* Reimagine README.md by @orhun in
[#1569 ](https://github.com/ratatui/ratatui/pull/1569 )
-
[8f28247](8f282473b2
)
*(readme)* Correct examples links by @HoKim98 in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
-
[9f90f74](9f90f7495f
)
*(readme)* Fix broken link by @nilsmartel in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
-
[260af68](260af68a34
)
*(readme)* Include iocraft as an alternative by @kdheepak in
[#1483 ](https://github.com/ratatui/ratatui/pull/1483 )
-
[dafb716](dafb716f9d
)
*(widgets)* Add example for grouped barchart by @orhun in
[#1566 ](https://github.com/ratatui/ratatui/pull/1566 )
-
[ed5dd73](ed5dd73084
)
*(widgets)* Add example for tabs by @orhun in
[#1559 ](https://github.com/ratatui/ratatui/pull/1559 )
-
[fab5321](fab532171d
)
*(widgets)* Add example for scrollbar by @orhun in
[#1545 ](https://github.com/ratatui/ratatui/pull/1545 )
-
[898aef6](898aef6e2f
)
*(widgets)* Add example for list by @orhun in
[#1542 ](https://github.com/ratatui/ratatui/pull/1542 )
-
[452366a](452366aa9e
)
*(widgets)* Add example for sparkline by @orhun in
[#1556 ](https://github.com/ratatui/ratatui/pull/1556 )
-
[6ddde0e](6ddde0e8a8
)
*(widgets)* Add example for table by @orhun in
[#1557 ](https://github.com/ratatui/ratatui/pull/1557 )
-
[93ad6b8](93ad6b828c
)
*(widgets)* Update values in chart example by @orhun in
[#1558 ](https://github.com/ratatui/ratatui/pull/1558 )
-
[15f442a](15f442a71e
)
*(widgets)* Add example for paragraph by @orhun in
[#1544 ](https://github.com/ratatui/ratatui/pull/1544 )
-
[17bba14](17bba14540
)
*(widgets)* Move the logo example to widgets by @orhun in
[#1543 ](https://github.com/ratatui/ratatui/pull/1543 )
-
[f2451e7](f2451e7f1e
)
*(widgets)* Add example for gauge by @orhun in
[#1539 ](https://github.com/ratatui/ratatui/pull/1539 )
-
[4f0a8b2](4f0a8b21af
)
*(widgets)* Add example for canvas by @orhun in
[#1533 ](https://github.com/ratatui/ratatui/pull/1533 )
-
[91147c4](91147c4d75
)
*(widgets)* Add example for chart by @orhun in
[#1536 ](https://github.com/ratatui/ratatui/pull/1536 )
-
[6dd25a3](6dd25a3111
)
*(widgets)* Add example for calendar by @orhun in
[#1532 ](https://github.com/ratatui/ratatui/pull/1532 )
-
[99ac005](99ac005b06
)
*(widgets)* Add simple barchart example by @joshka in
[#1511 ](https://github.com/ratatui/ratatui/pull/1511 )
-
[da05957](da05957fa0
)
*(uncategorized)* Add widget-ref-container example by @joshka in
[#1603 ](https://github.com/ratatui/ratatui/pull/1603 )
-
[1798512](1798512e94
)
*(uncategorized)* Fix wording in user_input example by @dawedawe in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
-
[03066d8](03066d81bf
)
*(uncategorized)* Fix punctuation in canvas.rs documentation by
@dawedawe in [#1583 ](https://github.com/ratatui/ratatui/pull/1583 )
-
[e411d9e](e411d9ec3e
)
*(uncategorized)* Add input form example by @joshka in
[#1551 ](https://github.com/ratatui/ratatui/pull/1551 )
-
[ed071f3](ed071f3723
)
*(uncategorized)* Add mouse-drawing example by @joshka in
[#1546 ](https://github.com/ratatui/ratatui/pull/1546 )
-
[46902f5](46902f5587
)
*(uncategorized)* Improve docs for workspace crates by @orhun in
[#1490 ](https://github.com/ratatui/ratatui/pull/1490 )
-
[a6b5792](a6b579223f
)
*(uncategorized)* Fix example link in readme by @thomas-tacquet in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
### Miscellaneous Tasks
-
[abe2f27](abe2f27328
)
*(backend)* Change From<T> impls to new backend specific IntoBackend and
FromBackend traits by @joshka in
[#1464 ](https://github.com/ratatui/ratatui/pull/1464 ) [**breaking**]
-
[0a47ebd](0a47ebd94b
)
*(bencher)* Update bencher CLI usage by @epompeii in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
-
[a0979d6](a0979d6871
)
*(build)* Remove cargo lint by @joshka in
[#1549 ](https://github.com/ratatui/ratatui/pull/1549 )
-
[eaa4038](eaa403856e
)
*(ci)* Install pre-built binaries for cargo-rdme by @orhun in
[#1477 ](https://github.com/ratatui/ratatui/pull/1477 )
-
[e5e2316](e5e2316451
)
*(ci)* Add check for keeping README.md up-to-date by @orhun in
[#1473 ](https://github.com/ratatui/ratatui/pull/1473 )
-
[2ef3583](2ef3583eff
)
*(ci)* Replace cargo-make with a custom cargo-xtask by @joshka in
[#1461 ](https://github.com/ratatui/ratatui/pull/1461 )
-
[98df774](98df774d7f
)
*(core)* Move core types to ratatui-core by @joshka in
[#1460 ](https://github.com/ratatui/ratatui/pull/1460 )
-
[35eba76](35eba76b4d
)
*(example)* Move demo2 to top level folder by @joshka in
[#1524 ](https://github.com/ratatui/ratatui/pull/1524 )
-
[5f57d35](5f57d35234
)
*(examples)* Add colors explorer demo app by @orhun in
[#1580 ](https://github.com/ratatui/ratatui/pull/1580 )
-
[5c021bf](5c021bf344
)
*(examples)* Add chart demo app by @orhun in
[#1579 ](https://github.com/ratatui/ratatui/pull/1579 )
-
[9721300](9721300a47
)
*(examples)* Add canvas demo app by @orhun in
[#1578 ](https://github.com/ratatui/ratatui/pull/1578 )
-
[a6a1368](a6a1368250
)
*(examples)* Add calendar explorer demo app by @orhun in
[#1571 ](https://github.com/ratatui/ratatui/pull/1571 )
-
[819e92c](819e92cd44
)
*(examples)* Add weather demo app by @orhun in
[#1567 ](https://github.com/ratatui/ratatui/pull/1567 )
-
[b5f7e44](b5f7e44183
)
*(examples)* Move async example to apps by @joshka in
[#1503 ](https://github.com/ratatui/ratatui/pull/1503 )
-
[17316ec](17316ec5d0
)
*(github)* Enable sponsorship button by @orhun in
[#1478 ](https://github.com/ratatui/ratatui/pull/1478 )
-
[d3f01eb](d3f01ebf6e
)
*(lint)* Ensure lint config is correct by @joshka in
[#1528 ](https://github.com/ratatui/ratatui/pull/1528 )
-
[2b7ec5c](2b7ec5cb7f
)
*(widgets)* Enable calendar widget as default by @orhun in
[#1521 ](https://github.com/ratatui/ratatui/pull/1521 )
-
[d201b8e](d201b8e5dd
)
*(xtask)* Check lints for only library targets by @orhun in
[#1531 ](https://github.com/ratatui/ratatui/pull/1531 )
-
[6f21319](6f213191ef
)
*(uncategorized)* Rename examples with clashing names by @joshka in
[#1597 ](https://github.com/ratatui/ratatui/pull/1597 )
-
[11cbb2b](11cbb2ba87
)
*(uncategorized)* Use cargo xtask for bacon clippy command by @joshka in
[#1592 ](https://github.com/ratatui/ratatui/pull/1592 )
-
[b544e39](b544e394c9
)
*(uncategorized)* Use clap instead of argh for demo example by @joshka
in [#1591 ](https://github.com/ratatui/ratatui/pull/1591 )
-
[9a54198](9a541981b8
)
*(uncategorized)* Make source files non-executable by @orhun in
[#1577 ](https://github.com/ratatui/ratatui/pull/1577 )
-
[357ae7e](357ae7e251
)
*(uncategorized)* Move terminal types to ratatui-core by @joshka in
[#1530 ](https://github.com/ratatui/ratatui/pull/1530 ) [**breaking**]
-
[21e62d8](21e62d84c2
)
*(uncategorized)* Move the demo example to main folder by @joshka in
[#1523 ](https://github.com/ratatui/ratatui/pull/1523 )
-
[fbf6050](fbf6050c86
)
*(uncategorized)* Prepare alpha modularization release by @joshka in
[#1525 ](https://github.com/ratatui/ratatui/pull/1525 )
-
[e4e95bc](e4e95bcecf
)
*(uncategorized)* Remove --color always flags from bacon.toml by @joshka
in [#1502 ](https://github.com/ratatui/ratatui/pull/1502 )
-
[a41c97b](a41c97b413
)
*(uncategorized)* Move unstable widget refs to ratatui by @joshka in
[#1491 ](https://github.com/ratatui/ratatui/pull/1491 ) [**breaking**]
-
[e7085e3](e7085e3a3e
)
*(uncategorized)* Move widgets into ratatui-widgets crate by @joshka in
[#1474 ](https://github.com/ratatui/ratatui/pull/1474 )
-
[f1d0a18](f1d0a18375
)
*(uncategorized)* Move ratatui crate into workspace folder by @joshka in
[#1459 ](https://github.com/ratatui/ratatui/pull/1459 )
-
[55fb2d2](55fb2d2e56
)
*(uncategorized)* Update repo links to ratatui instead of ratatui-org by
@joshka in [#1458 ](https://github.com/ratatui/ratatui/pull/1458 )
### Continuous Integration
-
[4a871f9](4a871f993e
)
*(uncategorized)* Refactor xtask / toml formatting by @joshka in
[#1602 ](https://github.com/ratatui/ratatui/pull/1602 )
### New Contributors
* @dawedawe made their first contribution in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
* @Its-Just-Nans made their first contribution in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
* @MarSik made their first contribution in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
* @raylu made their first contribution in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
* @renesat made their first contribution in
[#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
* @HoKim98 made their first contribution in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
* @nilsmartel made their first contribution in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
* @marcoieni made their first contribution in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
* @epompeii made their first contribution in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
* @thomas-tacquet made their first contribution in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
* @miroim made their first contribution in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
**Full Changelog**:
https://github.com/ratatui/ratatui/compare/v0.29.0...0.30.0-alpha.1
</blockquote>
## `ratatui-crossterm`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)* Make StatefulWidget and Ref work with unsized State by
@thscharler in [#1505 ](https://github.com/ratatui/ratatui/pull/1505 )
-
[7b87509](7b875091e1
)
*(uncategorized)* Typo by @marcoieni in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
### Refactor
-
[f132fa1](f132fa1715
)
*(table)* Small readability improvements by @joshka in
[#1510 ](https://github.com/ratatui/ratatui/pull/1510 )
-
[904b0aa](904b0aa723
)
*(uncategorized)* Move symbols to modules by @joshka in
[#1594 ](https://github.com/ratatui/ratatui/pull/1594 )
-
[7c8573f](7c8573f575
)
*(uncategorized)* Rearrange selection_spacing code by @raylu in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
-
[217c57c](217c57cd60
)
*(uncategorized)* Modularize backends by @orhun in
[#1508 ](https://github.com/ratatui/ratatui/pull/1508 )
-
[e461b72](e461b724a6
)
*(uncategorized)* Move {Stateful,}Widget{,Ref} types into individual
files by @joshka in
[#1479 ](https://github.com/ratatui/ratatui/pull/1479 )
### Documentation
-
[d291042](d291042e69
)
*(block)* Revise the block example by @orhun in
[#1520 ](https://github.com/ratatui/ratatui/pull/1520 )
-
[fcde9cb](fcde9cb9c3
)
*(changelog)* Fix typo by @orhun in
[#1463 ](https://github.com/ratatui/ratatui/pull/1463 )
-
[3ae6bf1](3ae6bf1d6f
)
*(contributing)* Use cargo-xtask for instructions by @orhun in
[#1509 ](https://github.com/ratatui/ratatui/pull/1509 )
-
[04e1b32](04e1b32cd2
)
*(layout)* Rename cassowary-rs references to cassowary by @miroim in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
-
[088aac1](088aac136d
)
*(readme)* Tweak links and badges by @joshka in
[#1598 ](https://github.com/ratatui/ratatui/pull/1598 )
-
[6e43672](6e436725e4
)
*(readme)* Reimagine README.md by @orhun in
[#1569 ](https://github.com/ratatui/ratatui/pull/1569 )
-
[8f28247](8f282473b2
)
*(readme)* Correct examples links by @HoKim98 in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
-
[9f90f74](9f90f7495f
)
*(readme)* Fix broken link by @nilsmartel in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
-
[260af68](260af68a34
)
*(readme)* Include iocraft as an alternative by @kdheepak in
[#1483 ](https://github.com/ratatui/ratatui/pull/1483 )
-
[dafb716](dafb716f9d
)
*(widgets)* Add example for grouped barchart by @orhun in
[#1566 ](https://github.com/ratatui/ratatui/pull/1566 )
-
[ed5dd73](ed5dd73084
)
*(widgets)* Add example for tabs by @orhun in
[#1559 ](https://github.com/ratatui/ratatui/pull/1559 )
-
[fab5321](fab532171d
)
*(widgets)* Add example for scrollbar by @orhun in
[#1545 ](https://github.com/ratatui/ratatui/pull/1545 )
-
[898aef6](898aef6e2f
)
*(widgets)* Add example for list by @orhun in
[#1542 ](https://github.com/ratatui/ratatui/pull/1542 )
-
[452366a](452366aa9e
)
*(widgets)* Add example for sparkline by @orhun in
[#1556 ](https://github.com/ratatui/ratatui/pull/1556 )
-
[6ddde0e](6ddde0e8a8
)
*(widgets)* Add example for table by @orhun in
[#1557 ](https://github.com/ratatui/ratatui/pull/1557 )
-
[93ad6b8](93ad6b828c
)
*(widgets)* Update values in chart example by @orhun in
[#1558 ](https://github.com/ratatui/ratatui/pull/1558 )
-
[15f442a](15f442a71e
)
*(widgets)* Add example for paragraph by @orhun in
[#1544 ](https://github.com/ratatui/ratatui/pull/1544 )
-
[17bba14](17bba14540
)
*(widgets)* Move the logo example to widgets by @orhun in
[#1543 ](https://github.com/ratatui/ratatui/pull/1543 )
-
[f2451e7](f2451e7f1e
)
*(widgets)* Add example for gauge by @orhun in
[#1539 ](https://github.com/ratatui/ratatui/pull/1539 )
-
[4f0a8b2](4f0a8b21af
)
*(widgets)* Add example for canvas by @orhun in
[#1533 ](https://github.com/ratatui/ratatui/pull/1533 )
-
[91147c4](91147c4d75
)
*(widgets)* Add example for chart by @orhun in
[#1536 ](https://github.com/ratatui/ratatui/pull/1536 )
-
[6dd25a3](6dd25a3111
)
*(widgets)* Add example for calendar by @orhun in
[#1532 ](https://github.com/ratatui/ratatui/pull/1532 )
-
[99ac005](99ac005b06
)
*(widgets)* Add simple barchart example by @joshka in
[#1511 ](https://github.com/ratatui/ratatui/pull/1511 )
-
[da05957](da05957fa0
)
*(uncategorized)* Add widget-ref-container example by @joshka in
[#1603 ](https://github.com/ratatui/ratatui/pull/1603 )
-
[1798512](1798512e94
)
*(uncategorized)* Fix wording in user_input example by @dawedawe in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
-
[03066d8](03066d81bf
)
*(uncategorized)* Fix punctuation in canvas.rs documentation by
@dawedawe in [#1583 ](https://github.com/ratatui/ratatui/pull/1583 )
-
[e411d9e](e411d9ec3e
)
*(uncategorized)* Add input form example by @joshka in
[#1551 ](https://github.com/ratatui/ratatui/pull/1551 )
-
[ed071f3](ed071f3723
)
*(uncategorized)* Add mouse-drawing example by @joshka in
[#1546 ](https://github.com/ratatui/ratatui/pull/1546 )
-
[46902f5](46902f5587
)
*(uncategorized)* Improve docs for workspace crates by @orhun in
[#1490 ](https://github.com/ratatui/ratatui/pull/1490 )
-
[a6b5792](a6b579223f
)
*(uncategorized)* Fix example link in readme by @thomas-tacquet in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
### Miscellaneous Tasks
-
[abe2f27](abe2f27328
)
*(backend)* Change From<T> impls to new backend specific IntoBackend and
FromBackend traits by @joshka in
[#1464 ](https://github.com/ratatui/ratatui/pull/1464 ) [**breaking**]
-
[0a47ebd](0a47ebd94b
)
*(bencher)* Update bencher CLI usage by @epompeii in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
-
[a0979d6](a0979d6871
)
*(build)* Remove cargo lint by @joshka in
[#1549 ](https://github.com/ratatui/ratatui/pull/1549 )
-
[eaa4038](eaa403856e
)
*(ci)* Install pre-built binaries for cargo-rdme by @orhun in
[#1477 ](https://github.com/ratatui/ratatui/pull/1477 )
-
[e5e2316](e5e2316451
)
*(ci)* Add check for keeping README.md up-to-date by @orhun in
[#1473 ](https://github.com/ratatui/ratatui/pull/1473 )
-
[2ef3583](2ef3583eff
)
*(ci)* Replace cargo-make with a custom cargo-xtask by @joshka in
[#1461 ](https://github.com/ratatui/ratatui/pull/1461 )
-
[98df774](98df774d7f
)
*(core)* Move core types to ratatui-core by @joshka in
[#1460 ](https://github.com/ratatui/ratatui/pull/1460 )
-
[35eba76](35eba76b4d
)
*(example)* Move demo2 to top level folder by @joshka in
[#1524 ](https://github.com/ratatui/ratatui/pull/1524 )
-
[5f57d35](5f57d35234
)
*(examples)* Add colors explorer demo app by @orhun in
[#1580 ](https://github.com/ratatui/ratatui/pull/1580 )
-
[5c021bf](5c021bf344
)
*(examples)* Add chart demo app by @orhun in
[#1579 ](https://github.com/ratatui/ratatui/pull/1579 )
-
[9721300](9721300a47
)
*(examples)* Add canvas demo app by @orhun in
[#1578 ](https://github.com/ratatui/ratatui/pull/1578 )
-
[a6a1368](a6a1368250
)
*(examples)* Add calendar explorer demo app by @orhun in
[#1571 ](https://github.com/ratatui/ratatui/pull/1571 )
-
[819e92c](819e92cd44
)
*(examples)* Add weather demo app by @orhun in
[#1567 ](https://github.com/ratatui/ratatui/pull/1567 )
-
[b5f7e44](b5f7e44183
)
*(examples)* Move async example to apps by @joshka in
[#1503 ](https://github.com/ratatui/ratatui/pull/1503 )
-
[17316ec](17316ec5d0
)
*(github)* Enable sponsorship button by @orhun in
[#1478 ](https://github.com/ratatui/ratatui/pull/1478 )
-
[d3f01eb](d3f01ebf6e
)
*(lint)* Ensure lint config is correct by @joshka in
[#1528 ](https://github.com/ratatui/ratatui/pull/1528 )
-
[2b7ec5c](2b7ec5cb7f
)
*(widgets)* Enable calendar widget as default by @orhun in
[#1521 ](https://github.com/ratatui/ratatui/pull/1521 )
-
[d201b8e](d201b8e5dd
)
*(xtask)* Check lints for only library targets by @orhun in
[#1531 ](https://github.com/ratatui/ratatui/pull/1531 )
-
[6f21319](6f213191ef
)
*(uncategorized)* Rename examples with clashing names by @joshka in
[#1597 ](https://github.com/ratatui/ratatui/pull/1597 )
-
[11cbb2b](11cbb2ba87
)
*(uncategorized)* Use cargo xtask for bacon clippy command by @joshka in
[#1592 ](https://github.com/ratatui/ratatui/pull/1592 )
-
[b544e39](b544e394c9
)
*(uncategorized)* Use clap instead of argh for demo example by @joshka
in [#1591 ](https://github.com/ratatui/ratatui/pull/1591 )
-
[9a54198](9a541981b8
)
*(uncategorized)* Make source files non-executable by @orhun in
[#1577 ](https://github.com/ratatui/ratatui/pull/1577 )
-
[357ae7e](357ae7e251
)
*(uncategorized)* Move terminal types to ratatui-core by @joshka in
[#1530 ](https://github.com/ratatui/ratatui/pull/1530 ) [**breaking**]
-
[21e62d8](21e62d84c2
)
*(uncategorized)* Move the demo example to main folder by @joshka in
[#1523 ](https://github.com/ratatui/ratatui/pull/1523 )
-
[fbf6050](fbf6050c86
)
*(uncategorized)* Prepare alpha modularization release by @joshka in
[#1525 ](https://github.com/ratatui/ratatui/pull/1525 )
-
[e4e95bc](e4e95bcecf
)
*(uncategorized)* Remove --color always flags from bacon.toml by @joshka
in [#1502 ](https://github.com/ratatui/ratatui/pull/1502 )
-
[a41c97b](a41c97b413
)
*(uncategorized)* Move unstable widget refs to ratatui by @joshka in
[#1491 ](https://github.com/ratatui/ratatui/pull/1491 ) [**breaking**]
-
[e7085e3](e7085e3a3e
)
*(uncategorized)* Move widgets into ratatui-widgets crate by @joshka in
[#1474 ](https://github.com/ratatui/ratatui/pull/1474 )
-
[f1d0a18](f1d0a18375
)
*(uncategorized)* Move ratatui crate into workspace folder by @joshka in
[#1459 ](https://github.com/ratatui/ratatui/pull/1459 )
-
[55fb2d2](55fb2d2e56
)
*(uncategorized)* Update repo links to ratatui instead of ratatui-org by
@joshka in [#1458 ](https://github.com/ratatui/ratatui/pull/1458 )
### Continuous Integration
-
[4a871f9](4a871f993e
)
*(uncategorized)* Refactor xtask / toml formatting by @joshka in
[#1602 ](https://github.com/ratatui/ratatui/pull/1602 )
### New Contributors
* @dawedawe made their first contribution in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
* @Its-Just-Nans made their first contribution in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
* @MarSik made their first contribution in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
* @raylu made their first contribution in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
* @renesat made their first contribution in
[#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
* @HoKim98 made their first contribution in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
* @nilsmartel made their first contribution in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
* @marcoieni made their first contribution in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
* @epompeii made their first contribution in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
* @thomas-tacquet made their first contribution in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
* @miroim made their first contribution in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
**Full Changelog**:
https://github.com/ratatui/ratatui/compare/v0.29.0...0.30.0-alpha.1
</blockquote>
## `ratatui-widgets`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)* Make StatefulWidget and Ref work with unsized State by
@thscharler in [#1505 ](https://github.com/ratatui/ratatui/pull/1505 )
-
[7b87509](7b875091e1
)
*(uncategorized)* Typo by @marcoieni in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
### Refactor
-
[f132fa1](f132fa1715
)
*(table)* Small readability improvements by @joshka in
[#1510 ](https://github.com/ratatui/ratatui/pull/1510 )
-
[904b0aa](904b0aa723
)
*(uncategorized)* Move symbols to modules by @joshka in
[#1594 ](https://github.com/ratatui/ratatui/pull/1594 )
-
[7c8573f](7c8573f575
)
*(uncategorized)* Rearrange selection_spacing code by @raylu in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
-
[217c57c](217c57cd60
)
*(uncategorized)* Modularize backends by @orhun in
[#1508 ](https://github.com/ratatui/ratatui/pull/1508 )
-
[e461b72](e461b724a6
)
*(uncategorized)* Move {Stateful,}Widget{,Ref} types into individual
files by @joshka in
[#1479 ](https://github.com/ratatui/ratatui/pull/1479 )
### Documentation
-
[d291042](d291042e69
)
*(block)* Revise the block example by @orhun in
[#1520 ](https://github.com/ratatui/ratatui/pull/1520 )
-
[fcde9cb](fcde9cb9c3
)
*(changelog)* Fix typo by @orhun in
[#1463 ](https://github.com/ratatui/ratatui/pull/1463 )
-
[3ae6bf1](3ae6bf1d6f
)
*(contributing)* Use cargo-xtask for instructions by @orhun in
[#1509 ](https://github.com/ratatui/ratatui/pull/1509 )
-
[04e1b32](04e1b32cd2
)
*(layout)* Rename cassowary-rs references to cassowary by @miroim in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
-
[088aac1](088aac136d
)
*(readme)* Tweak links and badges by @joshka in
[#1598 ](https://github.com/ratatui/ratatui/pull/1598 )
-
[6e43672](6e436725e4
)
*(readme)* Reimagine README.md by @orhun in
[#1569 ](https://github.com/ratatui/ratatui/pull/1569 )
-
[8f28247](8f282473b2
)
*(readme)* Correct examples links by @HoKim98 in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
-
[9f90f74](9f90f7495f
)
*(readme)* Fix broken link by @nilsmartel in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
-
[260af68](260af68a34
)
*(readme)* Include iocraft as an alternative by @kdheepak in
[#1483 ](https://github.com/ratatui/ratatui/pull/1483 )
-
[dafb716](dafb716f9d
)
*(widgets)* Add example for grouped barchart by @orhun in
[#1566 ](https://github.com/ratatui/ratatui/pull/1566 )
-
[ed5dd73](ed5dd73084
)
*(widgets)* Add example for tabs by @orhun in
[#1559 ](https://github.com/ratatui/ratatui/pull/1559 )
-
[fab5321](fab532171d
)
*(widgets)* Add example for scrollbar by @orhun in
[#1545 ](https://github.com/ratatui/ratatui/pull/1545 )
-
[898aef6](898aef6e2f
)
*(widgets)* Add example for list by @orhun in
[#1542 ](https://github.com/ratatui/ratatui/pull/1542 )
-
[452366a](452366aa9e
)
*(widgets)* Add example for sparkline by @orhun in
[#1556 ](https://github.com/ratatui/ratatui/pull/1556 )
-
[6ddde0e](6ddde0e8a8
)
*(widgets)* Add example for table by @orhun in
[#1557 ](https://github.com/ratatui/ratatui/pull/1557 )
-
[93ad6b8](93ad6b828c
)
*(widgets)* Update values in chart example by @orhun in
[#1558 ](https://github.com/ratatui/ratatui/pull/1558 )
-
[15f442a](15f442a71e
)
*(widgets)* Add example for paragraph by @orhun in
[#1544 ](https://github.com/ratatui/ratatui/pull/1544 )
-
[17bba14](17bba14540
)
*(widgets)* Move the logo example to widgets by @orhun in
[#1543 ](https://github.com/ratatui/ratatui/pull/1543 )
-
[f2451e7](f2451e7f1e
)
*(widgets)* Add example for gauge by @orhun in
[#1539 ](https://github.com/ratatui/ratatui/pull/1539 )
-
[4f0a8b2](4f0a8b21af
)
*(widgets)* Add example for canvas by @orhun in
[#1533 ](https://github.com/ratatui/ratatui/pull/1533 )
-
[91147c4](91147c4d75
)
*(widgets)* Add example for chart by @orhun in
[#1536 ](https://github.com/ratatui/ratatui/pull/1536 )
-
[6dd25a3](6dd25a3111
)
*(widgets)* Add example for calendar by @orhun in
[#1532 ](https://github.com/ratatui/ratatui/pull/1532 )
-
[99ac005](99ac005b06
)
*(widgets)* Add simple barchart example by @joshka in
[#1511 ](https://github.com/ratatui/ratatui/pull/1511 )
-
[da05957](da05957fa0
)
*(uncategorized)* Add widget-ref-container example by @joshka in
[#1603 ](https://github.com/ratatui/ratatui/pull/1603 )
-
[1798512](1798512e94
)
*(uncategorized)* Fix wording in user_input example by @dawedawe in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
-
[03066d8](03066d81bf
)
*(uncategorized)* Fix punctuation in canvas.rs documentation by
@dawedawe in [#1583 ](https://github.com/ratatui/ratatui/pull/1583 )
-
[e411d9e](e411d9ec3e
)
*(uncategorized)* Add input form example by @joshka in
[#1551 ](https://github.com/ratatui/ratatui/pull/1551 )
-
[ed071f3](ed071f3723
)
*(uncategorized)* Add mouse-drawing example by @joshka in
[#1546 ](https://github.com/ratatui/ratatui/pull/1546 )
-
[46902f5](46902f5587
)
*(uncategorized)* Improve docs for workspace crates by @orhun in
[#1490 ](https://github.com/ratatui/ratatui/pull/1490 )
-
[a6b5792](a6b579223f
)
*(uncategorized)* Fix example link in readme by @thomas-tacquet in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
### Miscellaneous Tasks
-
[abe2f27](abe2f27328
)
*(backend)* Change From<T> impls to new backend specific IntoBackend and
FromBackend traits by @joshka in
[#1464 ](https://github.com/ratatui/ratatui/pull/1464 ) [**breaking**]
-
[0a47ebd](0a47ebd94b
)
*(bencher)* Update bencher CLI usage by @epompeii in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
-
[a0979d6](a0979d6871
)
*(build)* Remove cargo lint by @joshka in
[#1549 ](https://github.com/ratatui/ratatui/pull/1549 )
-
[eaa4038](eaa403856e
)
*(ci)* Install pre-built binaries for cargo-rdme by @orhun in
[#1477 ](https://github.com/ratatui/ratatui/pull/1477 )
-
[e5e2316](e5e2316451
)
*(ci)* Add check for keeping README.md up-to-date by @orhun in
[#1473 ](https://github.com/ratatui/ratatui/pull/1473 )
-
[2ef3583](2ef3583eff
)
*(ci)* Replace cargo-make with a custom cargo-xtask by @joshka in
[#1461 ](https://github.com/ratatui/ratatui/pull/1461 )
-
[98df774](98df774d7f
)
*(core)* Move core types to ratatui-core by @joshka in
[#1460 ](https://github.com/ratatui/ratatui/pull/1460 )
-
[35eba76](35eba76b4d
)
*(example)* Move demo2 to top level folder by @joshka in
[#1524 ](https://github.com/ratatui/ratatui/pull/1524 )
-
[5f57d35](5f57d35234
)
*(examples)* Add colors explorer demo app by @orhun in
[#1580 ](https://github.com/ratatui/ratatui/pull/1580 )
-
[5c021bf](5c021bf344
)
*(examples)* Add chart demo app by @orhun in
[#1579 ](https://github.com/ratatui/ratatui/pull/1579 )
-
[9721300](9721300a47
)
*(examples)* Add canvas demo app by @orhun in
[#1578 ](https://github.com/ratatui/ratatui/pull/1578 )
-
[a6a1368](a6a1368250
)
*(examples)* Add calendar explorer demo app by @orhun in
[#1571 ](https://github.com/ratatui/ratatui/pull/1571 )
-
[819e92c](819e92cd44
)
*(examples)* Add weather demo app by @orhun in
[#1567 ](https://github.com/ratatui/ratatui/pull/1567 )
-
[b5f7e44](b5f7e44183
)
*(examples)* Move async example to apps by @joshka in
[#1503 ](https://github.com/ratatui/ratatui/pull/1503 )
-
[17316ec](17316ec5d0
)
*(github)* Enable sponsorship button by @orhun in
[#1478 ](https://github.com/ratatui/ratatui/pull/1478 )
-
[d3f01eb](d3f01ebf6e
)
*(lint)* Ensure lint config is correct by @joshka in
[#1528 ](https://github.com/ratatui/ratatui/pull/1528 )
-
[2b7ec5c](2b7ec5cb7f
)
*(widgets)* Enable calendar widget as default by @orhun in
[#1521 ](https://github.com/ratatui/ratatui/pull/1521 )
-
[d201b8e](d201b8e5dd
)
*(xtask)* Check lints for only library targets by @orhun in
[#1531 ](https://github.com/ratatui/ratatui/pull/1531 )
-
[6f21319](6f213191ef
)
*(uncategorized)* Rename examples with clashing names by @joshka in
[#1597 ](https://github.com/ratatui/ratatui/pull/1597 )
-
[11cbb2b](11cbb2ba87
)
*(uncategorized)* Use cargo xtask for bacon clippy command by @joshka in
[#1592 ](https://github.com/ratatui/ratatui/pull/1592 )
-
[b544e39](b544e394c9
)
*(uncategorized)* Use clap instead of argh for demo example by @joshka
in [#1591 ](https://github.com/ratatui/ratatui/pull/1591 )
-
[9a54198](9a541981b8
)
*(uncategorized)* Make source files non-executable by @orhun in
[#1577 ](https://github.com/ratatui/ratatui/pull/1577 )
-
[357ae7e](357ae7e251
)
*(uncategorized)* Move terminal types to ratatui-core by @joshka in
[#1530 ](https://github.com/ratatui/ratatui/pull/1530 ) [**breaking**]
-
[21e62d8](21e62d84c2
)
*(uncategorized)* Move the demo example to main folder by @joshka in
[#1523 ](https://github.com/ratatui/ratatui/pull/1523 )
-
[fbf6050](fbf6050c86
)
*(uncategorized)* Prepare alpha modularization release by @joshka in
[#1525 ](https://github.com/ratatui/ratatui/pull/1525 )
-
[e4e95bc](e4e95bcecf
)
*(uncategorized)* Remove --color always flags from bacon.toml by @joshka
in [#1502 ](https://github.com/ratatui/ratatui/pull/1502 )
-
[a41c97b](a41c97b413
)
*(uncategorized)* Move unstable widget refs to ratatui by @joshka in
[#1491 ](https://github.com/ratatui/ratatui/pull/1491 ) [**breaking**]
-
[e7085e3](e7085e3a3e
)
*(uncategorized)* Move widgets into ratatui-widgets crate by @joshka in
[#1474 ](https://github.com/ratatui/ratatui/pull/1474 )
-
[f1d0a18](f1d0a18375
)
*(uncategorized)* Move ratatui crate into workspace folder by @joshka in
[#1459 ](https://github.com/ratatui/ratatui/pull/1459 )
-
[55fb2d2](55fb2d2e56
)
*(uncategorized)* Update repo links to ratatui instead of ratatui-org by
@joshka in [#1458 ](https://github.com/ratatui/ratatui/pull/1458 )
### Continuous Integration
-
[4a871f9](4a871f993e
)
*(uncategorized)* Refactor xtask / toml formatting by @joshka in
[#1602 ](https://github.com/ratatui/ratatui/pull/1602 )
### New Contributors
* @dawedawe made their first contribution in
[#1611 ](https://github.com/ratatui/ratatui/pull/1611 )
* @Its-Just-Nans made their first contribution in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
* @MarSik made their first contribution in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
* @raylu made their first contribution in
[#1540 ](https://github.com/ratatui/ratatui/pull/1540 )
* @renesat made their first contribution in
[#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
* @HoKim98 made their first contribution in
[#1484 ](https://github.com/ratatui/ratatui/pull/1484 )
* @nilsmartel made their first contribution in
[#1485 ](https://github.com/ratatui/ratatui/pull/1485 )
* @marcoieni made their first contribution in
[#1480 ](https://github.com/ratatui/ratatui/pull/1480 )
* @epompeii made their first contribution in
[#1470 ](https://github.com/ratatui/ratatui/pull/1470 )
* @thomas-tacquet made their first contribution in
[#1462 ](https://github.com/ratatui/ratatui/pull/1462 )
* @miroim made their first contribution in
[#1448 ](https://github.com/ratatui/ratatui/pull/1448 )
**Full Changelog**:
https://github.com/ratatui/ratatui/compare/v0.29.0...0.30.0-alpha.1
</blockquote>
## `ratatui-macros`
<blockquote>
##
[0.30.0-alpha.1](https://github.com/ratatui/ratatui/releases/tag/0.30.0-alpha.1 )
- 2025-01-14
0.30.0-alpha.1 is a pre-release of the upcoming 0.30.0 release. It is
intended for testing and
feedback. Please report any issues you encounter. The primary change is
that we've split the crate
into multiple crates. The main crate is now `ratatui-core` and the
widgets are in `ratatui-widgets`.
This allows for widget crates to depend on a stable core crate, and for
the core crate to be used
without widgets.
### Features
-
[56d5e05](56d5e05762
)
*(bar)* Update label and text_value to accept Into<> by @Emivvvvv in
[#1471 ](https://github.com/ratatui/ratatui/pull/1471 ) [**breaking**]
-
[b76ad3b](b76ad3b02e
)
*(bar)* Impl Styled for Bar by @Emivvvvv in
[#1476 ](https://github.com/ratatui/ratatui/pull/1476 )
-
[369b18e](369b18eef2
)
*(barchart)* Reduce barchart creation verbosity by @Emivvvvv in
[#1453 ](https://github.com/ratatui/ratatui/pull/1453 )
-
[9275d34](9275d3421c
)
*(layout)* Add Offset::new() constructor by @joshka in
[#1547 ](https://github.com/ratatui/ratatui/pull/1547 )
-
[ff729b7](ff729b7607
)
*(scrollbar)* Support retrieving the current position of state by @orhun
in [#1552 ](https://github.com/ratatui/ratatui/pull/1552 )
-
[ce4856a](ce4856a65f
)
*(widgets)* Add the missing constructor to canvas types by @orhun in
[#1538 ](https://github.com/ratatui/ratatui/pull/1538 )
-
[50ba965](50ba96518f
)
*(uncategorized)* Add a new RatatuiMascot widget by @Its-Just-Nans in
[#1584 ](https://github.com/ratatui/ratatui/pull/1584 )
-
[1d28c89](1d28c89fe5
)
*(uncategorized)* Add conversions for anstyle by @joshka in
[#1581 ](https://github.com/ratatui/ratatui/pull/1581 )
### Bug Fixes
-
[860e48b](860e48b0f0
)
*(buffer)* Buffer::get_pos() now correctly handles index > u16::MAX by
@joshka in [#1447 ](https://github.com/ratatui/ratatui/pull/1447 )
-
[ec30390](ec30390446
)
*(canvas)* Round coordinates to nearest grid cell by @joshka in
[#1507 ](https://github.com/ratatui/ratatui/pull/1507 )
-
[afd1ce1](afd1ce179b
)
*(canvas)* Lines that start outside the visible grid are now drawn by
@renesat in [#1501 ](https://github.com/ratatui/ratatui/pull/1501 )
-
[18e70d3](18e70d3d51
)
*(crossterm)* Terminal should keep Bold when removing Dim by @MarSik in
[#1541 ](https://github.com/ratatui/ratatui/pull/1541 )
-
[a692a6e](a692a6e371
)
*(lint)* Apply rust 1.84 clippy suggestions by @joshka in
[#1612 ](https://github.com/ratatui/ratatui/pull/1612 )
-
[3b13240](3b13240728
)
*(scrollbar)* Check for area.is_empty() before rendering by @farmeroy in
[#1529 ](https://github.com/ratatui/ratatui/pull/1529 )
-
[f57b696](f57b696fdc
)
*(span)* Dont render control characters by @EdJoPaTo in
[#1312 ](https://github.com/ratatui/ratatui/pull/1312 )
-
[2ce958e](2ce958e38c
)
*(table)* Allow display of additional table row, if row height > 1 by
@Lunderberg in [#1452 ](https://github.com/ratatui/ratatui/pull/1452 )
-
[2892bdd](2892bddce6
)
*(uncategorized)* Rust 1.83 clippy lints by @joshka in
[#1527 ](https://github.com/ratatui/ratatui/pull/1527 )
-
[36e2d1b](36e2d1bda1
)
*(uncategorized)* Add feature(doc_cfg) when generating docs by @joshka
in [#1506 ](https://github.com/ratatui/ratatui/pull/1506 )
-
[4d7704f](4d7704fba5
)
*(uncategorized)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-13 12:48:15 -07:00
Jagoda Estera Ślązak
79d5165cae
fix(no_std): propagate std
feature flag to dependencies ( #1838 )
...
Disables `std` feature flags in dependencies and only enables them with
`ratatui` and `ratatui-core`'s `std` feature flag. This partially fixes the
issue of still depending on `std`, when `std` feature flag is disabled.
2025-05-13 10:48:45 -07:00
Jagoda Estera Ślązak
daeba85f14
build(deps): bump kasuari
and line-clipping
( #1844 )
2025-05-12 01:55:49 -07:00
Jagoda Estera Ślązak
ab48c06171
feat(no_std)!: option to disable layout cache for no_std
compatibility ( #1795 )
...
Resolves #1780
BREAKING CHANGE: Disabling `default-features` will now disable layout
cache, which can have a negative impact on performance.
`Layout::init_cache` and `Layout::DEFAULT_CACHE_SIZE` are now only
available if `layout-cache` feature is enabled.
2025-05-07 13:00:22 -07:00
Ben Beasley
fc4b996c59
build(deps): update compact_str requirement from 0.8.1 to 0.9.0 ( #1783 )
...
Looking at
https://github.com/ParkMyCar/compact_str/blob/v0.9.0/CHANGELOG.md#090 ,
there are a few API changes, but it doesn’t seem like anything there
should be a problem given that `cargo test` still passes in
`ratatui-core/`.
2025-04-13 10:51:21 +03:00
Josh McKinney
3d5b250e74
build(deps): use kasuari instead of cassowary ( #1758 )
...
[Kasuari](https://github.com/ratatui/kasuari ) is a maintained fork of Cassowary.
2025-04-04 00:03:39 -07:00
Jagoda Estera Ślązak
ebe10cd81f
feat(no_std): remove redundant std
usages in ratatui-core
( #1753 )
...
Resolves https://github.com/ratatui/ratatui/issues/1751
2025-04-03 20:02:54 -07:00
Josh McKinney
fe8577c070
chore: remove paste dependency ( #1713 )
...
The paste crate is no longer maintained. Replaces the usages of this in
the Stylize declarative macros with hard coded values. These macros are
internal implementation deatil to ratatui and so the changes should have
no impact on users.
Fixes: https://github.com/ratatui/ratatui/issues/1712
2025-03-09 08:56:06 -07:00
github-actions[bot]
c10d0f12e8
chore: release ( #1671 )
...
## 🤖 New release
* `ratatui-core`: 0.1.0-alpha.2 -> 0.1.0-alpha.3
* `ratatui-crossterm`: 0.1.0-alpha.1 -> 0.1.0-alpha.2
* `ratatui-widgets`: 0.3.0-alpha.1 -> 0.3.0-alpha.2
* `ratatui-macros`: 0.7.0-alpha.0 -> 0.7.0-alpha.1
* `ratatui-termwiz`: 0.1.0-alpha.1 -> 0.1.0-alpha.2
* `ratatui-termion`: 0.1.0-alpha.1 -> 0.1.0-alpha.2
* `ratatui`: 0.30.0-alpha.1 -> 0.30.0-alpha.2
2025-03-01 15:34:53 -08:00
Josh McKinney
e7831aedd4
chore: release 0.30.0-alpha.1 ( #1618 )
...
Versions:
```
ratatui = { path = "ratatui", version = "0.30.0-alpha.1" }
ratatui-core = { path = "ratatui-core", version = "0.1.0-alpha.2" }
ratatui-crossterm = { path = "ratatui-crossterm", version = "0.1.0-alpha.1" }
ratatui-termion = { path = "ratatui-termion", version = "0.1.0-alpha.1" }
ratatui-termwiz = { path = "ratatui-termwiz", version = "0.1.0-alpha.1" }
ratatui-widgets = { path = "ratatui-widgets", version = "0.3.0-alpha.1" }
```
2025-01-15 15:31:38 -08:00
Josh McKinney
1d28c89fe5
feat: add conversions for anstyle ( #1581 )
...
https://crates.io/crates/anstyle makes it possible to define colors in
an interoperable way. This makes it possible for applications to easily
load colors from a variety of formats.
This is gated by the anstyle feature flag which is disabled by default.
---------
Co-authored-by: Orhun Parmaksız <orhun@archlinux.org>
2024-12-24 12:03:14 -08:00
Josh McKinney
d3f01ebf6e
chore(lint): ensure lint config is correct ( #1528 )
...
- Move lints to workspace manifest
- Add lint config to backend crates
- Fix one small lint error
2024-11-30 11:13:50 +03:00
Josh McKinney
fbf6050c86
chore: prepare alpha modularization release ( #1525 )
...
This is the first modularization -alpha release. It captures the changes
necessary to manual publish. And ensures all the crates are properly
setup and to set a baseline for comparison in future release checks etc.
This does not update / check the git-cliff setup / changelog
Part of: #1388
2024-11-28 16:47:43 -08:00
Orhun Parmaksız
217c57cd60
refactor: modularize backends ( #1508 )
...
Backend code is now moved to `ratatui-crossterm`, `ratatui-termion` and
`ratatui-termwiz`. This should be backwards compatible with existing code.
Co-authored-by: Josh McKinney <joshka@users.noreply.github.com>
2024-11-23 15:23:40 -08:00
Josh McKinney
a41c97b413
chore: move unstable widget refs to ratatui ( #1491 )
...
These are less stable than the non-ref traits as we have not yet
committed to the exact API. This change moves them to ratatui from
ratatui-core.
To facilitate this:
- implementations of WidgetRef for all internal widgets are removed and
replaced with implementations of Widget for references to those
widgets.
- Widget is now implemented for Option<W> where W: Widget, allowing for
rendering of optional widgets.
- The blanket implementation of Widget for WidgetRef is reversed, to be
a blanket implementation of WidgetRef for all &W where W: Widget.
BREAKING CHANGE: implementations of WidgetRef no longer have a blanket
implementation of Widget, so Widgets should generally implement the
Widget trait on a reference to the widget rather than implementing
WidgetRef directly. This has the advantage of not requiring unstable
features to be enabled.
Part of: https://github.com/ratatui/ratatui/issues/1388
Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com>
2024-11-18 14:19:21 -08:00
Orhun Parmaksız
46902f5587
docs: improve docs for workspace crates ( #1490 )
...
Overall makes improvements in the documentation of the workspace crates and checking them.
2024-11-18 02:03:44 +03:00
dependabot[bot]
02c8c9373e
chore(deps): bump unicode-truncate from 1.1.0 to 2.0.0 ( #1481 )
...
Bumps [unicode-truncate](https://github.com/Aetf/unicode-truncate ) from
1.1.0 to 2.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/Aetf/unicode-truncate/releases ">unicode-truncate's
releases</a>.</em></p>
<blockquote>
<h2>v2.0.0</h2>
<h3>Fixed</h3>
<ul>
<li><em>(deps)</em> update rust crate unicode-width to 0.2</li>
</ul>
<h3>Other</h3>
<ul>
<li>make release-plz use github app token</li>
<li>[<strong>breaking</strong>] bump MSRV to 1.66</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/Aetf/unicode-truncate/blob/master/CHANGELOG.md ">unicode-truncate's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/Aetf/unicode-truncate/compare/v1.1.0...v2.0.0 ">2.0.0</a>
- 2024-11-10</h2>
<h3>Fixed</h3>
<ul>
<li><em>(deps)</em> update rust crate unicode-width to 0.2</li>
</ul>
<h3>Other</h3>
<ul>
<li>make release-plz use github app token</li>
<li>[<strong>breaking</strong>] bump MSRV to 1.66</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="95b4d26103
"><code>95b4d26</code></a>
chore: release v2.0.0</li>
<li><a
href="4c0b472226
"><code>4c0b472</code></a>
ci: make release-plz use github app token</li>
<li><a
href="2812162513
"><code>2812162</code></a>
build!: bump MSRV to 1.66</li>
<li><a
href="8984d1529a
"><code>8984d15</code></a>
fix(deps): update rust crate unicode-width to 0.2</li>
<li><a
href="abd6d916b9
"><code>abd6d91</code></a>
fix(deps): update rust crate unicode-segmentation to v1.12.0</li>
<li>See full diff in <a
href="https://github.com/Aetf/unicode-truncate/compare/v1.1.0...v2.0.0 ">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-12 03:42:47 -08:00
Orhun Parmaksız
e5e2316451
chore(ci): add check for keeping README.md up-to-date ( #1473 )
2024-11-07 09:45:14 +03:00
Josh McKinney
98df774d7f
chore(core): move core types to ratatui-core ( #1460 )
...
The buffer, layout, style, symbols, text, and the top level of widgets
modules are moved to ratatui-core. This is the first step in
modularizing the library so that the core types can be used in other
projects without the need for the backend / widgets types.
This helps reduce the need for updating other crates as often due to
semver changes outside of the core types.
---------
Co-authored-by: Orhun Parmaksız <orhun@archlinux.org>
Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com>
2024-11-06 09:10:49 +03:00