mirror of
https://github.com/ratatui/ratatui.git
synced 2025-09-28 13:31:14 +00:00
294 Commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
![]() |
a0a37008da
|
chore(deps): bump serde_json from 1.0.135 to 1.0.137 (#1625)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.135 to 1.0.137. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/json/releases">serde_json's releases</a>.</em></p> <blockquote> <h2>v1.0.137</h2> <ul> <li>Turn on "float_roundtrip" and "unbounded_depth" features for serde_json in play.rust-lang.org (<a href="https://redirect.github.com/serde-rs/json/issues/1231">#1231</a>)</li> </ul> <h2>v1.0.136</h2> <ul> <li>Optimize serde_json::value::Serializer::serialize_map by using Map::with_capacity (<a href="https://redirect.github.com/serde-rs/json/issues/1230">#1230</a>, thanks <a href="https://github.com/goffrie"><code>@goffrie</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
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" } ``` |
||
![]() |
4a871f993e
|
ci: refactor xtask / toml formatting (#1602)
- format toml files using taplo - add toml formatting check to CI - use xtask consistently from bacon - refactor xtask commands to take params instead of multiple commands |
||
![]() |
41d883da7a
|
chore(deps): bump serde_json from 1.0.134 to 1.0.135 (#1614)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.134 to 1.0.135. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/json/releases">serde_json's releases</a>.</em></p> <blockquote> <h2>v1.0.135</h2> <ul> <li>Add serde_json::Map::into_values method (<a href="https://redirect.github.com/serde-rs/json/issues/1226">#1226</a>, thanks <a href="https://github.com/tisonkun"><code>@tisonkun</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
0552223511
|
chore(deps): bump rstest from 0.23.0 to 0.24.0 (#1610)
Bumps [rstest](https://github.com/la10736/rstest) from 0.23.0 to 0.24.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/la10736/rstest/releases">rstest's releases</a>.</em></p> <blockquote> <h2>0.24.0</h2> <h2>What's Changed</h2> <ul> <li>refactor: use <code>core</code> instead of <code>std</code> by <a href="https://github.com/rnbguy"><code>@rnbguy</code></a> in <a href="https://redirect.github.com/la10736/rstest/pull/283">la10736/rstest#283</a></li> <li>Fix msrv and complete no_std support by <a href="https://github.com/la10736"><code>@la10736</code></a> in <a href="https://redirect.github.com/la10736/rstest/pull/285">la10736/rstest#285</a></li> <li>replace futures with futures-util by <a href="https://github.com/mati865"><code>@mati865</code></a> in <a href="https://redirect.github.com/la10736/rstest/pull/288">la10736/rstest#288</a></li> <li>Introduce Context by <a href="https://github.com/la10736"><code>@la10736</code></a> in <a href="https://redirect.github.com/la10736/rstest/pull/289">la10736/rstest#289</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/rnbguy"><code>@rnbguy</code></a> made their first contribution in <a href="https://redirect.github.com/la10736/rstest/pull/283">la10736/rstest#283</a></li> <li><a href="https://github.com/mati865"><code>@mati865</code></a> made their first contribution in <a href="https://redirect.github.com/la10736/rstest/pull/288">la10736/rstest#288</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/la10736/rstest/compare/v0.23.0...v0.24.0">https://github.com/la10736/rstest/compare/v0.23.0...v0.24.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/la10736/rstest/blob/master/CHANGELOG.md">rstest's changelog</a>.</em></p> <blockquote> <h2>[0.24.0] 2025/1/1</h2> <h3>Changed</h3> <ul> <li>MSRV to 1.70.0 (see <a href="https://redirect.github.com/la10736/rstest/issues/284">#284</a> thanks to <a href="https://github.com/rnbguy"><code>@rnbguy</code></a>)</li> </ul> <h3>Add</h3> <ul> <li><code>#![no_std]</code> support: now you can use <code>rstest</code> also in <code>no_std</code> lib (see <a href="https://redirect.github.com/la10736/rstest/issues/282">#282</a> thanks to <a href="https://github.com/rnbguy"><code>@rnbguy</code></a>)</li> <li><code>#[context]</code> to have test function name and other useful thighs on the tip of your fingers (see <a href="https://redirect.github.com/la10736/rstest/issues/177">#177</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
079d74ce14
|
chore(deps): bump bitflags from 2.6.0 to 2.7.0 (#1615)
Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.6.0 to 2.7.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/bitflags/bitflags/releases">bitflags's releases</a>.</em></p> <blockquote> <h2>2.7.0</h2> <h2>What's Changed</h2> <ul> <li>Fix <code>clippy::doc_lazy_continuation</code> lints by <a href="https://github.com/waywardmonkeys"><code>@waywardmonkeys</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/414">bitflags/bitflags#414</a></li> <li>Run clippy on extra features in CI. by <a href="https://github.com/waywardmonkeys"><code>@waywardmonkeys</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/415">bitflags/bitflags#415</a></li> <li>Fix CI: trybuild refresh, allow some clippy restrictions. by <a href="https://github.com/waywardmonkeys"><code>@waywardmonkeys</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/417">bitflags/bitflags#417</a></li> <li>Update zerocopy version in example by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/422">bitflags/bitflags#422</a></li> <li>Add method to check if unknown bits are set by <a href="https://github.com/wysiwys"><code>@wysiwys</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/426">bitflags/bitflags#426</a></li> <li>Update error messages by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/427">bitflags/bitflags#427</a></li> <li>Add <code>truncate(&mut self)</code> method to unset unknown bits by <a href="https://github.com/wysiwys"><code>@wysiwys</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/428">bitflags/bitflags#428</a></li> <li>Update error messages by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/429">bitflags/bitflags#429</a></li> <li>Prepare for 2.7.0 release by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/430">bitflags/bitflags#430</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/wysiwys"><code>@wysiwys</code></a> made their first contribution in <a href="https://redirect.github.com/bitflags/bitflags/pull/426">bitflags/bitflags#426</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bitflags/bitflags/compare/2.6.0...2.7.0">https://github.com/bitflags/bitflags/compare/2.6.0...2.7.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md">bitflags's changelog</a>.</em></p> <blockquote> <h1>2.7.0</h1> <h2>What's Changed</h2> <ul> <li>Fix <code>clippy::doc_lazy_continuation</code> lints by <a href="https://github.com/waywardmonkeys"><code>@waywardmonkeys</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/414">bitflags/bitflags#414</a></li> <li>Run clippy on extra features in CI. by <a href="https://github.com/waywardmonkeys"><code>@waywardmonkeys</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/415">bitflags/bitflags#415</a></li> <li>Fix CI: trybuild refresh, allow some clippy restrictions. by <a href="https://github.com/waywardmonkeys"><code>@waywardmonkeys</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/417">bitflags/bitflags#417</a></li> <li>Update zerocopy version in example by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/422">bitflags/bitflags#422</a></li> <li>Add method to check if unknown bits are set by <a href="https://github.com/wysiwys"><code>@wysiwys</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/426">bitflags/bitflags#426</a></li> <li>Update error messages by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/427">bitflags/bitflags#427</a></li> <li>Add <code>truncate(&mut self)</code> method to unset unknown bits by <a href="https://github.com/wysiwys"><code>@wysiwys</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/428">bitflags/bitflags#428</a></li> <li>Update error messages by <a href="https://github.com/KodrAus"><code>@KodrAus</code></a> in <a href="https://redirect.github.com/bitflags/bitflags/pull/429">bitflags/bitflags#429</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/wysiwys"><code>@wysiwys</code></a> made their first contribution in <a href="https://redirect.github.com/bitflags/bitflags/pull/426">bitflags/bitflags#426</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bitflags/bitflags/compare/2.6.0...2.7.0">https://github.com/bitflags/bitflags/compare/2.6.0...2.7.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
22ec4f7414
|
chore(deps): bump instability from 0.3.6 to 0.3.7 (#1616)
Bumps [instability](https://github.com/ratatui-org/instability) from 0.3.6 to 0.3.7. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ratatui-org/instability/releases">instability's releases</a>.</em></p> <blockquote> <h2>instability-example-v0.3.7</h2> <h3>Other</h3> <ul> <li>Add #[allow(unused_imports)] lint to unstable reexports (<a href="https://redirect.github.com/ratatui/instability/pull/21">#21</a>)</li> </ul> <h2>instability-v0.3.7</h2> <h3>Other</h3> <ul> <li>Add #[allow(unused_imports)] lint to unstable reexports (<a href="https://redirect.github.com/ratatui/instability/pull/21">#21</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/ratatui/instability/blob/main/CHANGELOG.md">instability's changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/ratatui/instability/compare/instability-v0.3.6...instability-v0.3.7">0.3.7</a> - 2025-01-10</h2> <h3>Other</h3> <ul> <li>Add #[allow(unused_imports)] lint to unstable reexports (<a href="https://redirect.github.com/ratatui/instability/pull/21">#21</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
2ccc40e116
|
chore(deps): bump instability from 0.3.5 to 0.3.6 (#1609)
Bumps [instability](https://github.com/ratatui-org/instability) from 0.3.5 to 0.3.6. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ratatui-org/instability/releases">instability's releases</a>.</em></p> <blockquote> <h2>instability-example-v0.3.6</h2> <h3>Added</h3> <ul> <li>Allow marking impl blocks unstable/stable (<a href="https://redirect.github.com/ratatui-org/instability/issues/15">#15</a>)</li> <li>add stable macro (<a href="https://redirect.github.com/ratatui-org/instability/issues/14">#14</a>)</li> <li>use doc(cfg)</li> <li>allow use statements to be marked unstable (<a href="https://redirect.github.com/ratatui-org/instability/issues/3">#3</a>)</li> </ul> <h3>Other</h3> <ul> <li>prepare instability-example for publish (<a href="https://redirect.github.com/ratatui-org/instability/issues/18">#18</a>)</li> <li>bump msrv to 1.63</li> <li>tweak doc wording and formatting (<a href="https://redirect.github.com/ratatui-org/instability/issues/4">#4</a>)</li> <li>fork and change name to instabilty</li> <li>Apply visibility restriction to struct fields (<a href="https://redirect.github.com/ratatui/instability/pull/10">#10</a>)</li> <li>Update to Rust edition 2021 (<a href="https://redirect.github.com/ratatui/instability/pull/9">#9</a>)</li> <li>Add issue tracking</li> <li>Initial version</li> </ul> <h2>instability-v0.3.6</h2> <h3>Other</h3> <ul> <li>Move pretty_assertions to dev-dependencies (<a href="https://redirect.github.com/ratatui/instability/pull/19">#19</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/ratatui/instability/blob/main/CHANGELOG.md">instability's changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/ratatui/instability/compare/instability-v0.3.5...instability-v0.3.6">0.3.6</a> - 2025-01-04</h2> <h3>Other</h3> <ul> <li>Move pretty_assertions to dev-dependencies (<a href="https://redirect.github.com/ratatui/instability/pull/19">#19</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
019e34e006
|
chore(deps): bump serde from 1.0.216 to 1.0.217 (#1600)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.216 to 1.0.217. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/serde/releases">serde's releases</a>.</em></p> <blockquote> <h2>v1.0.217</h2> <ul> <li>Support serializing externally tagged unit variant inside flattened field (<a href="https://redirect.github.com/serde-rs/serde/issues/2786">#2786</a>, thanks <a href="https://github.com/Mingun"><code>@Mingun</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
1d2882636e
|
chore(deps): bump serde_json from 1.0.133 to 1.0.134 (#1586)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.133 to 1.0.134. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/json/releases">serde_json's releases</a>.</em></p> <blockquote> <h2>v1.0.134</h2> <ul> <li>Add <code>RawValue</code> associated constants for literal <code>null</code>, <code>true</code>, <code>false</code> (<a href="https://redirect.github.com/serde-rs/json/issues/1221">#1221</a>, thanks <a href="https://github.com/bheylin"><code>@bheylin</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
3d0c96a838
|
chore(deps): bump instability from 0.3.3 to 0.3.5 (#1588)
Bumps [instability](https://github.com/ratatui-org/instability) from 0.3.3 to 0.3.5. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ratatui-org/instability/releases">instability's releases</a>.</em></p> <blockquote> <h2>instability-example-v0.3.5</h2> <h3>Added</h3> <ul> <li>Allow marking impl blocks unstable/stable (<a href="https://redirect.github.com/ratatui-org/instability/issues/15">#15</a>)</li> <li>add stable macro (<a href="https://redirect.github.com/ratatui-org/instability/issues/14">#14</a>)</li> <li>use doc(cfg)</li> <li>allow use statements to be marked unstable (<a href="https://redirect.github.com/ratatui-org/instability/issues/3">#3</a>)</li> </ul> <h3>Other</h3> <ul> <li>prepare instability-example for publish (<a href="https://redirect.github.com/ratatui-org/instability/issues/18">#18</a>)</li> <li>bump msrv to 1.63</li> <li>tweak doc wording and formatting (<a href="https://redirect.github.com/ratatui-org/instability/issues/4">#4</a>)</li> <li>fork and change name to instabilty</li> <li>Apply visibility restriction to struct fields (<a href="https://redirect.github.com/ratatui/instability/pull/10">#10</a>)</li> <li>Update to Rust edition 2021 (<a href="https://redirect.github.com/ratatui/instability/pull/9">#9</a>)</li> <li>Add issue tracking</li> <li>Initial version</li> </ul> <h2>instability-v0.3.5</h2> <h3>Other</h3> <ul> <li>prepare instability-example for publish (<a href="https://redirect.github.com/ratatui-org/instability/issues/18">#18</a>)</li> <li>clippy --fix</li> </ul> <h2>instability-example-v0.3.4</h2> <p>No release notes provided.</p> <h2>instability-v0.3.4</h2> <h3>Added</h3> <ul> <li>Allow marking impl blocks unstable/stable (<a href="https://redirect.github.com/ratatui/instability/pull/15">#15</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/ratatui/instability/blob/main/CHANGELOG.md">instability's changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/ratatui/instability/compare/instability-v0.3.4...instability-v0.3.5">0.3.5</a> - 2024-12-21</h2> <h3>Other</h3> <ul> <li>prepare instability-example for publish (<a href="https://redirect.github.com/ratatui-org/instability/issues/18">#18</a>)</li> <li>clippy --fix</li> </ul> <h2><a href="https://github.com/ratatui/instability/compare/instability-v0.3.3...instability-v0.3.4">0.3.4</a> - 2024-12-21</h2> <h3>Added</h3> <ul> <li>Allow marking impl blocks unstable/stable (<a href="https://redirect.github.com/ratatui/instability/pull/15">#15</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
694c788c24
|
chore(deps): bump serde from 1.0.215 to 1.0.216 (#1575)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.215 to 1.0.216. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/serde/releases">serde's releases</a>.</em></p> <blockquote> <h2>v1.0.216</h2> <ul> <li>Mark all generated impls with #[automatically_derived] to exclude from code coverage (<a href="https://redirect.github.com/serde-rs/serde/issues/2866">#2866</a>, <a href="https://redirect.github.com/serde-rs/serde/issues/2868">#2868</a>, thanks <a href="https://github.com/tdittr"><code>@tdittr</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
a0979d6871
|
chore(build): remove cargo lint (#1549)
Duplicate crate lint is too noisy and sensitive to upstream changes |
||
![]() |
21e62d84c2
|
chore: Move the demo example to main folder (#1523)
Add a top level examples folder for more app-ish examples Move the demo example into the top level folder. --------- Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com> |
||
![]() |
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 |
||
![]() |
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 |
||
![]() |
99ac005b06
|
docs(widgets): Add simple barchart example (#1511) | ||
![]() |
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> |
||
![]() |
9d5aba69e9
|
chore(deps): bump serde from 1.0.214 to 1.0.215 (#1495)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.214 to 1.0.215. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/serde/releases">serde's releases</a>.</em></p> <blockquote> <h2>v1.0.215</h2> <ul> <li>Produce warning when multiple fields or variants have the same deserialization name (<a href="https://redirect.github.com/serde-rs/serde/issues/2855">#2855</a>, <a href="https://redirect.github.com/serde-rs/serde/issues/2856">#2856</a>, <a href="https://redirect.github.com/serde-rs/serde/issues/2857">#2857</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
1bb41e7165
|
chore(deps): bump instability from 0.3.2 to 0.3.3 (#1497)
Bumps [instability](https://github.com/ratatui-org/instability) from 0.3.2 to 0.3.3. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ratatui-org/instability/releases">instability's releases</a>.</em></p> <blockquote> <h2>instability-v0.3.3</h2> <h3>Added</h3> <ul> <li>add stable macro (<a href="https://redirect.github.com/ratatui/instability/pull/14">#14</a>)</li> <li>use doc(cfg)</li> </ul> <h3>Fixed</h3> <ul> <li>tests (<a href="https://redirect.github.com/ratatui/instability/pull/13">#13</a>)</li> <li>change master to main in lib.rs</li> </ul> <h3>Other</h3> <ul> <li>bump msrv to 1.63</li> <li>use proc_macro2 and add tests</li> <li>use darling instead of manual parsing for better error messages on attributes</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/ratatui/instability/blob/main/CHANGELOG.md">instability's changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/ratatui/instability/compare/instability-v0.3.2...instability-v0.3.3">0.3.3</a> - 2024-11-12</h2> <h3>Added</h3> <ul> <li>add stable macro (<a href="https://redirect.github.com/ratatui/instability/pull/14">#14</a>)</li> <li>use doc(cfg)</li> </ul> <h3>Fixed</h3> <ul> <li>tests (<a href="https://redirect.github.com/ratatui/instability/pull/13">#13</a>)</li> <li>change master to main in lib.rs</li> </ul> <h3>Other</h3> <ul> <li>bump msrv to 1.63</li> <li>use proc_macro2 and add tests</li> <li>use darling instead of manual parsing for better error messages on attributes</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
46902f5587
|
docs: improve docs for workspace crates (#1490)
Overall makes improvements in the documentation of the workspace crates and checking them. |
||
![]() |
e7085e3a3e
|
chore: move widgets into ratatui-widgets crate (#1474)
All the widgets now live in their own ratatui-widgets crate, but are re-exported in the main ratatui crate. This makes it easier to use portions of the ratatui library and is part of the effort to modularize Part of: #1388 --------- Co-authored-by: Orhun Parmaksız <orhun@archlinux.org> Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com> |
||
![]() |
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> |
||
![]() |
2ef3583eff
|
chore(ci): replace cargo-make with a custom cargo-xtask (#1461)
This removes the need for cargo-make and replaces it with a custom xtask binary. See <https://github.com/matklad/cargo-xtask> for info. Rearranges the CI workflow to use the new xtask and simplify which workflows that run. --------- Co-authored-by: Orhun Parmaksız <orhun@archlinux.org> |
||
![]() |
f1d0a18375
|
chore: move ratatui crate into workspace folder (#1459)
This is the first step towards modularization. Handling the move as a separate step rather than combining it should make it easier to rebase other PRs when necessary. --------- Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com> |
||
![]() |
28732176e1
|
chore(release): prepare for 0.29.0 (#1444)
🧀
|
||
![]() |
cc7497532a
|
chore(deps)!: pin unicode-width to 0.2.0 (#1403)
We pin unicode-width to avoid breaking applications when there are breaking changes in the library. Discussion in #1271 Fixes: #1385 Co-authored-by: Josh McKinney <joshka@users.noreply.github.com> |
||
![]() |
d72968d86b
|
feat(scrolling-regions)!: use terminal scrolling regions to stop Terminal::insert_before from flickering (#1341)
The current implementation of Terminal::insert_before causes the viewport to flicker. This is described in #584 . This PR removes that flickering by using terminal scrolling regions (sometimes called "scroll regions"). A terminal can have its scrolling region set to something other than the whole screen. When a scroll ANSI sequence is sent to the terminal and it has a non-default scrolling region, the terminal will scroll just inside of that region. We use scrolling regions to implement insert_before. We create a region on the screen above the viewport, scroll that up to make room for the newly inserted lines, and then draw the new lines. We may need to repeat this process depending on how much space there is and how many lines we need to draw. When the viewport takes up the entire screen, we take a modified approach. We create a scrolling region of just the top line (could be more) of the viewport, then use that to draw the lines we want to output. When we're done, we scroll it up by one line, into the scrollback history, and then redraw the top line from the viewport. A final edge case is when the viewport hasn't yet reached the bottom of the screen. This case, we set up a different scrolling region, where the top is the top of the viewport, and the bottom is the viewport's bottom plus the number of lines we want to scroll by. We then scroll this region down to open up space above the viewport for drawing the inserted lines. Regardless of what we do, we need to reset the scrolling region. This PR takes the approach of always resetting the scrolling region after every operation. So the Backend gets new scroll_region_up and scroll_region_down methods instead of set_scrolling_region, scroll_up, scroll_down, and reset_scrolling_region methods. We chose that approach for two reasons. First, we don't want Ratatui to have to remember that state and then reset the scrolling region when tearing down. Second, the pre-Windows-10 console code doesn't support scrolling regio This PR: - Adds a new scrolling-regions feature. - Adds two new Backend methods: scroll_region_up and scroll_region_down. - Implements those Backend methods on all backends in the codebase. - The crossterm and termion implementations use raw ANSI escape sequences. I'm trying to merge changes into those two projects separately to support these functions. - Adds code to Terminal::insert_before to choose between insert_before_scrolling_regions and insert_before_no_scrolling_regions. The latter is the old implementation. - Adds lots of tests to the TestBackend to for the scrolling-region-related Backend methods. - Adds versions of terminal tests that show that insert_before doesn't clobber the viewport. This is a change in behavior from before. |
||
![]() |
2805dddf05
|
feat(logo): Add a Ratatui logo widget
This is a simple logo widget that can be used to render the Ratatui logo in the terminal. It is used in the `examples/ratatui-logo.rs` example, and may be used in your applications' help or about screens. ```rust use ratatui::{Frame, widgets::RatatuiLogo}; fn draw(frame: &mut Frame) { frame.render_widget(RatatuiLogo::tiny(), frame.area()); } ``` |
||
![]() |
baf047f556
|
chore(deps): update rstest requirement from 0.22.0 to 0.23.0 (#1394)
Updates the requirements on [rstest](https://github.com/la10736/rstest) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/la10736/rstest/releases">rstest's releases</a>.</em></p> <blockquote> <h2>0.23.0</h2> <h2>What's Changed</h2> <ul> <li>Upgrade to async-std v1.13 by <a href="https://github.com/jayvdb"><code>@jayvdb</code></a> in <a href="https://redirect.github.com/la10736/rstest/pull/274">la10736/rstest#274</a></li> <li>Allow environment variables in #[files] attributes by <a href="https://github.com/hansl"><code>@hansl</code></a> in <a href="https://redirect.github.com/la10736/rstest/pull/277">la10736/rstest#277</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/jayvdb"><code>@jayvdb</code></a> made their first contribution in <a href="https://redirect.github.com/la10736/rstest/pull/274">la10736/rstest#274</a></li> <li><a href="https://github.com/hansl"><code>@hansl</code></a> made their first contribution in <a href="https://redirect.github.com/la10736/rstest/pull/277">la10736/rstest#277</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/la10736/rstest/compare/v0.22.0...v0.23.0">https://github.com/la10736/rstest/compare/v0.22.0...v0.23.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/la10736/rstest/blob/master/CHANGELOG.md">rstest's changelog</a>.</em></p> <blockquote> <h2>[0.23.0] 2024/9/29</h2> <h3>Add</h3> <ul> <li>You can now use environment variables in <code>#[files]</code> with an optional default value (see <a href="https://redirect.github.com/la10736/rstest/pull/277">#277</a>).</li> <li>You can now set a base_dir for <code>#[files]</code> with the <code>$[base_dir = "..."]</code> attribute (see <a href="https://redirect.github.com/la10736/rstest/pull/277">#277</a>).</li> </ul> <h2>[0.22.0] 2024/8/4</h2> <h3>Changed</h3> <ul> <li>Now it's possible destructuring input values both for cases, values and fixtures. See <a href="https://redirect.github.com/la10736/rstest/issues/231">#231</a> for details</li> </ul> <h3>Add</h3> <ul> <li>Implemented <code>#[ignore]</code> attribute to ignore test parameters during fixtures resolution/injection. See <a href="https://redirect.github.com/la10736/rstest/issues/228">#228</a> for details</li> </ul> <h3>Fixed</h3> <ul> <li>Lot of typo in code</li> </ul> <h2>[0.21.0] 2024/6/1</h2> <h3>Changed</h3> <ul> <li>Add feature <code>crate-name</code> enabled by default to opt-in crate rename support. See <a href="https://redirect.github.com/la10736/rstest/issues/258">#258</a></li> </ul> <h2>[0.20.0] 2024/5/30</h2> <h3>Add</h3> <ul> <li>Implemented <code>#[by_ref]</code> attribute to take get a local lifetime for test arguments. See <a href="https://redirect.github.com/la10736/rstest/issues/241">#241</a> for more details. Thanks to <a href="https://github.com/narpfel"><code>@narpfel</code></a> for suggesting it and useful discussions.</li> <li>Support for import <code>rstest</code> with another name. See <a href="https://redirect.github.com/la10736/rstest/issues/221">#221</a></li> </ul> <h3>Fixed</h3> <ul> <li>Don't remove Lifetimes from test function if any. See <a href="https://redirect.github.com/la10736/rstest/issues/230">#230</a> <a href="https://redirect.github.com/la10736/rstest/issues/241">#241</a> for more details.</li> <li><a href="https://doc.rust-lang.org/std/path/struct.PathBuf.html"><code>PathBuf</code></a> does no longer need to be in scope when using <code>#[files]</code> (see <a href="https://redirect.github.com/la10736/rstest/pull/242">#242</a>)</li> <li><code>#[from(now:🉑:also::path::for::fixture)]</code> See <a href="https://redirect.github.com/la10736/rstest/issues/246">#246</a> for more details</li> </ul> <h2>[0.19.0] 2024/4/9</h2> <h3>Changed</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
6745a10508
|
chore(deps): update octocrab requirement from 0.40.0 to 0.41.0 (#1393)
Updates the requirements on [octocrab](https://github.com/XAMPPRocky/octocrab) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/XAMPPRocky/octocrab/releases">octocrab's releases</a>.</em></p> <blockquote> <h2>v0.41.0</h2> <h3>Added</h3> <ul> <li>Implement getting users and reopos by their respective IDs (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/690">#690</a>)</li> </ul> <h3>Fixed</h3> <ul> <li><em>(installation)</em> [<strong>breaking</strong>] Return Result instead of panicking in <code>Octocrab::installation</code> (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/687">#687</a>)</li> </ul> <h3>Other</h3> <ul> <li>Update tower-http requirement from 0.5.1 to 0.6.1 (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/701">#701</a>)</li> <li>add additional webhook model fields (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/696">#696</a>)</li> <li>Bump hyper-rustls version. (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/699">#699</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/XAMPPRocky/octocrab/blob/main/CHANGELOG.md">octocrab's changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/XAMPPRocky/octocrab/compare/v0.40.0...v0.41.0">0.41.0</a> - 2024-09-30</h2> <h3>Added</h3> <ul> <li>Implement getting users and reopos by their respective IDs (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/690">#690</a>)</li> </ul> <h3>Fixed</h3> <ul> <li><em>(installation)</em> [<strong>breaking</strong>] Return Result instead of panicking in <code>Octocrab::installation</code> (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/687">#687</a>)</li> </ul> <h3>Other</h3> <ul> <li>Update tower-http requirement from 0.5.1 to 0.6.1 (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/701">#701</a>)</li> <li>add additional webhook model fields (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/696">#696</a>)</li> <li>Bump hyper-rustls version. (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/699">#699</a>)</li> </ul> <h2><a href="https://github.com/XAMPPRocky/octocrab/compare/v0.39.0...v0.40.0">0.40.0</a> - 2024-09-22</h2> <h3>Added</h3> <ul> <li>Support <code>remove_assignees</code> on issue API (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/686">#686</a>)</li> <li>add missing fields in <code>CreateForkBuilder</code> (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/682">#682</a>)</li> <li>Add <code>Gist::public</code> field (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/678">#678</a>)</li> </ul> <h3>Fixed</h3> <ul> <li><em>(refs)</em> [<strong>breaking</strong>] remove <code>Reference::Commit</code> variant (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/697">#697</a>)</li> </ul> <h3>Other</h3> <ul> <li>Fix typo in cfg_attr statement (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/693">#693</a>)</li> <li>Handle empty author object in pr_commits (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/656">#656</a>)</li> <li>Add <code>DeviceCodes::poll_until_available</code> method (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/679">#679</a>)</li> <li>Uncomment pr_commits function (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/680">#680</a>)</li> <li>Only add base_path if req_pandq does not contain it (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/684">#684</a>)</li> <li>Update code scanning alert (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/673">#673</a>)</li> <li>Added <code>merged_by</code> and <code>closed_by</code> fields (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/674">#674</a>)</li> <li>Update and Fixes to the Code Scanning Models & Webhooks (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/675">#675</a>)</li> </ul> <h2><a href="https://github.com/XAMPPRocky/octocrab/compare/v0.38.0...v0.39.0">0.39.0</a> - 2024-07-30</h2> <h3>Added</h3> <ul> <li>support permission on list_collaborators (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/630">#630</a>)</li> <li>add check run pull requests and list parameters (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/494">#494</a>)</li> <li>implement hook deliveries (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/668">#668</a>)</li> <li>allow sending non String payload with execute (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/665">#665</a>)</li> <li>added /user/blocks functionality (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/657">#657</a>)</li> <li>add method to create repo webhook (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/640">#640</a>)</li> </ul> <h3>Fixed</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
784f67a912
|
chore(deps): update octocrab requirement from 0.39.0 to 0.40.0 (#1386)
Updates the requirements on [octocrab](https://github.com/XAMPPRocky/octocrab) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/XAMPPRocky/octocrab/releases">octocrab's releases</a>.</em></p> <blockquote> <h2>v0.40.0</h2> <h3>Added</h3> <ul> <li>Support <code>remove_assignees</code> on issue API (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/686">#686</a>)</li> <li>add missing fields in <code>CreateForkBuilder</code> (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/682">#682</a>)</li> <li>Add <code>Gist::public</code> field (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/678">#678</a>)</li> </ul> <h3>Fixed</h3> <ul> <li><em>(refs)</em> [<strong>breaking</strong>] remove <code>Reference::Commit</code> variant (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/697">#697</a>)</li> </ul> <h3>Other</h3> <ul> <li>Fix typo in cfg_attr statement (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/693">#693</a>)</li> <li>Handle empty author object in pr_commits (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/656">#656</a>)</li> <li>Add <code>DeviceCodes::poll_until_available</code> method (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/679">#679</a>)</li> <li>Uncomment pr_commits function (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/680">#680</a>)</li> <li>Only add base_path if req_pandq does not contain it (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/684">#684</a>)</li> <li>Update code scanning alert (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/673">#673</a>)</li> <li>Added <code>merged_by</code> and <code>closed_by</code> fields (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/674">#674</a>)</li> <li>Update and Fixes to the Code Scanning Models & Webhooks (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/675">#675</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/XAMPPRocky/octocrab/blob/main/CHANGELOG.md">octocrab's changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/XAMPPRocky/octocrab/compare/v0.39.0...v0.40.0">0.40.0</a> - 2024-09-22</h2> <h3>Added</h3> <ul> <li>Support <code>remove_assignees</code> on issue API (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/686">#686</a>)</li> <li>add missing fields in <code>CreateForkBuilder</code> (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/682">#682</a>)</li> <li>Add <code>Gist::public</code> field (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/678">#678</a>)</li> </ul> <h3>Fixed</h3> <ul> <li><em>(refs)</em> [<strong>breaking</strong>] remove <code>Reference::Commit</code> variant (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/697">#697</a>)</li> </ul> <h3>Other</h3> <ul> <li>Fix typo in cfg_attr statement (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/693">#693</a>)</li> <li>Handle empty author object in pr_commits (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/656">#656</a>)</li> <li>Add <code>DeviceCodes::poll_until_available</code> method (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/679">#679</a>)</li> <li>Uncomment pr_commits function (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/680">#680</a>)</li> <li>Only add base_path if req_pandq does not contain it (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/684">#684</a>)</li> <li>Update code scanning alert (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/673">#673</a>)</li> <li>Added <code>merged_by</code> and <code>closed_by</code> fields (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/674">#674</a>)</li> <li>Update and Fixes to the Code Scanning Models & Webhooks (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/675">#675</a>)</li> </ul> <h2><a href="https://github.com/XAMPPRocky/octocrab/compare/v0.38.0...v0.39.0">0.39.0</a> - 2024-07-30</h2> <h3>Added</h3> <ul> <li>support permission on list_collaborators (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/630">#630</a>)</li> <li>add check run pull requests and list parameters (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/494">#494</a>)</li> <li>implement hook deliveries (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/668">#668</a>)</li> <li>allow sending non String payload with execute (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/665">#665</a>)</li> <li>added /user/blocks functionality (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/657">#657</a>)</li> <li>add method to create repo webhook (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/640">#640</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>use put instead of get for set_thread_subscription (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/661">#661</a>)</li> <li><em>(builder)</em> Change add_retry_config signature to match others in OctocrabBuilder (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/643">#643</a>)</li> </ul> <h3>Other</h3> <ul> <li>getting Code Scanning (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/669">#669</a>)</li> <li>added missing /repos/{owner}/{repo}/pulls/... handlers (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/546">#546</a>) (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/605">#605</a>)</li> <li>Properly mark feature-gated functionality in docs (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/662">#662</a>)</li> <li>repos/releases improvements (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/666">#666</a>)</li> <li>Add AutoRebaseEnabled to models.rs (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/660">#660</a>)</li> <li>cargo fmt (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/658">#658</a>)</li> <li>Fix issue <a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/635">#635</a> (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/637">#637</a>)</li> <li>Update issues.rs (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/634">#634</a>)</li> <li>Add head repo to create pr (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/636">#636</a>)</li> <li>Added support for make_latest in UpdateReleaseBuilder (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/646">#646</a>)</li> <li>Changing the user name from required to optional parameter (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/650">#650</a>)</li> <li>Update models.rs (<a href="https://redirect.github.com/XAMPPRocky/octocrab/pull/651">#651</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
f4880b40cc
|
chore: lock unicode-width version to 0.1.13 (#1384)
0.1.14 contains breaking changes which we'll need to investigate. This commit puts a lock on the current version for now. Changes https://github.com/unicode-rs/unicode-width/compare/v0.1.13...v0.1.14 |
||
![]() |
5635b930c7
|
ci: add cargo-machete and remove unused deps (#1362)
https://github.com/bnjbvr/cargo-machete |
||
![]() |
68886d1787
|
fix: add unstable-backend-writer feature (#1352)
https://github.com/ratatui/ratatui/pull/991 created a new unstable feature, but forgot to add it to Cargo.toml, making it impossible to use on newer versions of rustc - this commit fixes it. |
||
![]() |
3a90e2a761
|
chore(release): prepare for 0.28.1 (#1343)
🧀 The current release steps in reference to #1337 - Bump version in `Cargo.toml` - `git cliff -u -p CHANGELOG.md -t v0.28.1` - Merge the PR - `git tag v0.28.1` - `git push origin v0.28.1` We can probably automate away most of these with `release-plz` when it fully supports `git-cliff`'s GitHub integration. |
||
![]() |
3631b34f53
|
docs(examples): add widget implementation example (#1147)
This new example documents the various ways to implement widgets in Ratatui. It demonstrates how to implement the `Widget` trait on a type, a reference, and a mutable reference. It also shows how to use the `WidgetRef` trait to render boxed widgets. |
||
![]() |
ed51c4b342
|
feat(terminal): Add ratatui::init() and restore() methods (#1289)
These are simple opinionated methods for creating a terminal that is useful to use in most apps. The new init method creates a crossterm backend writing to stdout, enables raw mode, enters the alternate screen, and sets a panic handler that restores the terminal on panic. A minimal hello world now looks a bit like: ```rust use ratatui::{ crossterm::event::{self, Event}, text::Text, Frame, }; fn main() { let mut terminal = ratatui::init(); loop { terminal .draw(|frame: &mut Frame| frame.render_widget(Text::raw("Hello World!"), frame.area())) .expect("Failed to draw"); if matches!(event::read().expect("failed to read event"), Event::Key(_)) { break; } } ratatui::restore(); } ``` A type alias `DefaultTerminal` is added to represent this terminal type and to simplify any cases where applications need to pass this terminal around. It is equivalent to: `Terminal<CrosstermBackend<Stdout>>` We also added `ratatui::try_init()` and `try_restore()`, for situations where you might want to handle initialization errors yourself instead of letting the panic handler fire and cleanup. Simple Apps should prefer the `init` and `restore` functions over these functions. Corresponding functions to allow passing a `TerminalOptions` with a `Viewport` (e.g. inline, fixed) are also available (`init_with_options`, and `try_init_with_options`). The existing code to create a backend and terminal will remain and is not deprecated by this approach. This just provides a simple one line initialization using the common options. --------- Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com> |
||
![]() |
23516bce76
|
chore: rename ratatui-org to ratatui (#1334)
All urls updated to point at https://github.com/ratatui To update your repository remotes, you can run the following commands: ```shell git remote set-url origin https://github.com/ratatui/ratatui ``` |
||
![]() |
0256269a7f
|
build: simplify Windows build (#1317)
Termion is not supported on Windows, so we need to avoid building it. Adds a conditional dependency to the Cargo.toml file to only include termion when the target is not Windows. This allows contributors to build using the `--all-features` flag on Windows rather than needing to specify the features individually. |
||
![]() |
ec88bb81e5
|
chore(release): prepare for 0.28.0 (#1295)
🧀
|
||
![]() |
36fa3c11c1
|
chore(deps): bump crossterm to 0.28.1 (#1304)
https://github.com/crossterm-rs/crossterm/blob/master/CHANGELOG.md\#version-0281 |
||
![]() |
69e8ed7db8
|
chore(deps): remove anyhow from dev dependencies (#1305)
Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com> |
||
![]() |
e6d2e04bcf
|
perf: move benchmarks into a single benchmark harness (#1302)
Consolidates the benchmarks into a single executable rather than having to create a new cargo.toml setting per and makes it easier to rearrange these when adding new benchmarks. |
||
![]() |
45fcab7497
|
chore: add rect::rows benchmark (#1301) | ||
![]() |
fe4eeab676
|
docs(examples): simplify the barchart example (#1079)
The `barchart` example has been split into two examples: `barchart` and `barchart-grouped`. The `barchart` example now shows a simple barchart with random data, while the `barchart-grouped` example shows a grouped barchart with fake revenue data. This simplifies the examples a bit so they don't cover too much at once. - Simplify the rendering functions - Fix several clippy lints that were marked as allowed --------- Co-authored-by: EdJoPaTo <rfc-conform-git-commit-email@funny-long-domain-label-everyone-hates-as-it-is-too-long.edjopato.de> |
||
![]() |
ffeb8e46b9
|
chore(deps): update rstest requirement from 0.21.0 to 0.22.0 (#1297)
Updates the requirements on [rstest](https://github.com/la10736/rstest) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/la10736/rstest/releases">rstest's releases</a>.</em></p> <blockquote> <h2>Version 0.22.0</h2> <p>Destructuring input data</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/la10736/rstest/blob/master/CHANGELOG.md">rstest's changelog</a>.</em></p> <blockquote> <h2>[0.22.0] 2024/8/4</h2> <h3>Changed</h3> <ul> <li>Now it's possible destructuring input values both for cases, values and fixtures. See <a href="https://redirect.github.com/la10736/rstest/issues/231">#231</a> for details</li> </ul> <h3>Add</h3> <ul> <li>Implemented <code>#[ignore]</code> attribute to ignore test parameters during fixtures resolution/injection. See <a href="https://redirect.github.com/la10736/rstest/issues/228">#228</a> for details</li> </ul> <h3>Fixed</h3> <ul> <li>Lot of typo in code</li> </ul> <h2>[0.21.0] 2024/6/1</h2> <h3>Changed</h3> <ul> <li>Add feature <code>crate-name</code> enabled by default to opt-in crate rename support. See <a href="https://redirect.github.com/la10736/rstest/issues/258">#258</a></li> </ul> <h2>[0.20.0] 2024/5/30</h2> <h3>Add</h3> <ul> <li>Implemented <code>#[by_ref]</code> attribute to take get a local lifetime for test arguments. See <a href="https://redirect.github.com/la10736/rstest/issues/241">#241</a> for more details. Thanks to <a href="https://github.com/narpfel"><code>@narpfel</code></a> for suggesting it and useful discussions.</li> <li>Support for import <code>rstest</code> with another name. See <a href="https://redirect.github.com/la10736/rstest/issues/221">#221</a></li> </ul> <h3>Fixed</h3> <ul> <li>Don't remove Lifetimes from test function if any. See <a href="https://redirect.github.com/la10736/rstest/issues/230">#230</a> <a href="https://redirect.github.com/la10736/rstest/issues/241">#241</a> for more details.</li> <li><a href="https://doc.rust-lang.org/std/path/struct.PathBuf.html"><code>PathBuf</code></a> does no longer need to be in scope when using <code>#[files]</code> (see <a href="https://redirect.github.com/la10736/rstest/pull/242">#242</a>)</li> <li><code>#[from(now:🉑:also::path::for::fixture)]</code> See <a href="https://redirect.github.com/la10736/rstest/issues/246">#246</a> for more details</li> </ul> <h2>[0.19.0] 2024/4/9</h2> <h3>Changed</h3> <ul> <li>Defined <code>rust-version</code> for each crate (see <a href="https://redirect.github.com/la10736/rstest/issues/227">#227</a>)</li> </ul> <h3>Fixed</h3> <ul> <li><code>#[once]</code> fixtures now require the returned type to be <a href="https://doc.rust-lang.org/std/marker/trait.Sync.html"><code>Sync</code></a> to prevent UB when tests are executed in parallel. (see <a href="https://redirect.github.com/la10736/rstest/issues/235">#235</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
![]() |
6e7b4e4d55
|
docs(examples): add async example (#1248)
This example demonstrates how to use Ratatui with widgets that fetch data asynchronously. It uses the `octocrab` crate to fetch a list of pull requests from the GitHub API. You will need an environment variable named `GITHUB_TOKEN` with a valid GitHub personal access token. The token does not need any special permissions. Co-authored-by: Dheepak Krishnamurthy <me@kdheepak.com> |
||
![]() |
cd0d31c2dc
|
chore(deps): update crossterm requirement from 0.27 to 0.28 (#1278)
Updates the requirements on [crossterm](https://github.com/crossterm-rs/crossterm) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/crossterm-rs/crossterm/blob/master/CHANGELOG.md">crossterm's changelog</a>.</em></p> <blockquote> <h1>Version 0.28.1</h1> <h2>Fixed 🐛</h2> <ul> <li>Fix broken build on linux when using <code>use-dev-tty</code> with (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/906">#906</a>)</li> </ul> <h2>Breaking ⚠️</h2> <ul> <li>Fix desync with mio and signalhook between repo and published crate. (upgrade to mio 1.0)</li> </ul> <h1>Version 0.28</h1> <h2>Added ⭐</h2> <ul> <li>Capture double click mouse events on windows (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/826">#826</a>)</li> <li>(De)serialize Reset color (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/824">#824</a>)</li> <li>Add functions to allow constructing <code>Attributes</code> in a const context (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/817">#817</a>)</li> <li>Implement <code>Display</code> for <code>KeyCode</code> and <code>KeyModifiers</code> (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/862">#862</a>)</li> </ul> <h2>Changed ⚙️</h2> <ul> <li>Use Rustix by default instead of libc. Libc can be re-enabled if necessary with the <code>libc</code> feature flag (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/892">#892</a>)</li> <li><code>FileDesc</code> now requires a lifetime annotation.</li> <li>Improve available color detection (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/885">#885</a>)</li> <li>Speed up <code>SetColors</code> by ~15-25% (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/879">#879</a>)</li> <li>Remove unsafe and unnecessary size argument from <code>FileDesc::read()</code> (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/821">#821</a>)</li> </ul> <h2>Breaking ⚠️</h2> <ul> <li>Fix duplicate bit masks for caps lock and num lock (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/863">#863</a>). This breaks serialization of <code>KeyEventState</code></li> </ul> <h1>Version 0.27.1</h1> <h2>Added ⭐</h2> <ul> <li>Add support for (de)serializing <code>Reset</code> <code>Color</code></li> </ul> <h1>Version 0.27</h1> <h2>Added ⭐</h2> <ul> <li>Add <code>NO_COLOR</code> support (<a href="https://no-color.org/">https://no-color.org/</a>)</li> <li>Add option to force overwrite <code>NO_COLOR</code> (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/802">#802</a>)</li> <li>Add support for scroll left/right events on windows and unix systems (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/788">#788</a>).</li> <li>Add <code>window_size</code> function to fetch pixel width/height of screen for more sophisticated rendering in terminals.</li> <li>Add support for deserializing hex color strings to <code>Color</code> e.g #fffff.</li> </ul> <h2>Changed ⚙️</h2> <ul> <li>Make the events module an optional feature <code>events</code> (to make crossterm more lightweight) (<a href="https://redirect.github.com/crossterm-rs/crossterm/issues/776">#776</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/crossterm-rs/crossterm/commits">compare view</a></li> </ul> </details> <br /> 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> |
||
![]() |
e81663bec0
|
refactor(list): split up list.rs into smaller modules (#1204) |