Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.26.2
->0.28.0
0.11.1
->0.12.0
Release Notes
ratatui/ratatui (ratatui)
v0.28.1
Compare Source
Features
ed51c4b (terminal) Add ratatui::init() and restore() methods by @joshka in #1289
Bug Fixes
aed60b9 (terminal) Terminal::insert_before would crash when called while the viewport filled the screen by @nfachan in #1329
fdd5d8c (text) Remove trailing newline from single-line Display trait impl by @LucasPickering in #1320
2fb0b8a (uncategorized) Fix u16 overflow in Terminal::insert_before. by @nfachan in #1323
Documentation
3631b34 (examples) Add widget implementation example by @joshka in #1147
d5477b5 (examples) Use ratatui::crossterm in examples by @joshka in #1315
730dfd4 (examples) Show line gauge in demo example by @montmorill in #1309
9ed85fd (table) Fix incorrect backticks in
TableState
docs by @airblast-dev in #13426d1bd99 (uncategorized) Minor grammar fixes by @matta in #1330
097ee86 (uncategorized) Remove superfluous doc(inline) by @EdJoPaTo in #1310
3fdb5e8 (uncategorized) Fix typo in terminal.rs by @mrjackwills in #1313
Testing
0d5f3c0 (uncategorized) Avoid unneeded allocations in assertions by @mo8it in #1335
Miscellaneous Tasks
65da535 (ci) Update release strategy by @orhun in #1337
57d8b74 (ci) Use cargo-docs-rs to lint docs by @joshka in #1318
8b624f5 (maintainers) Remove EdJoPaTo by @EdJoPaTo in #1314
23516bc (uncategorized) Rename ratatui-org to ratatui by @joshka in #1334
Build
0256269 (uncategorized) Simplify Windows build by @joshka in #1317
New Contributors
Full Changelog: ratatui/ratatui@v0.28.0...v0.28.1
v0.28.0
Compare Source
"If you are what you eat, then I only want to eat the good stuff." – Remy
We are excited to announce the new version of
ratatui
- a Rust library that's all about cooking up TUIs 🐭In this version, we have upgraded to Crossterm 0.28.0, introducing enhanced functionality and performance improvements.
New features include GraphType::Bar, lines in bar charts, and enhanced scroll/navigation methods.
We have also refined the terminal module and added brand new methods for cursor positions and text operations.
✨ Release highlights: https://ratatui.rs/highlights/v028/
Features
8d4a102 (barchart) Allow axes to accept Lines by @joshka in #1273 [breaking]
a23ecd9 (buffer) Add Buffer::cell, cell_mut and index implementations by @joshka in #1084
afe1534 (chart) Accept
IntoIterator
for axis labels by @EdJoPaTo in #1283 [breaking]5b51018 (chart) Add GraphType::Bar by @joshka in #1205
f97e07c (frame) Replace Frame::size() with Frame::area() by @EdJoPaTo in #1293
5b89bd0 (layout) Add Size::ZERO and Position::ORIGIN constants by @EdJoPaTo in #1253
b2aa843 (layout) Enable serde for Margin, Position, Rect, Size by @EdJoPaTo in #1255
36d49e5 (table) Select first, last, etc to table state by @robertpsoane in #1198
3bb374d (terminal) Add Terminal::try_draw() method by @joshka in #1209
3725262 (text) Add
Add
andAddAssign
implementations forLine
,Span
, andText
by @joshka in #1236c34fb77 (text) Remove unnecessary lifetime from ToText trait by @joshka in #1234 [breaking]
c68ee6c (uncategorized) Add
get/set_cursor_position()
methods to Terminal and Backend by @EdJoPaTo in #1284 [breaking]b70cd03 (uncategorized) Add ListState / TableState scroll_down_by() / scroll_up_by() methods by @josueBarretogit in #1267
Bug Fixes
864cd9f (testbackend) Prevent area mismatch by @EdJoPaTo in #1252
7e1bab0 (buffer) Dont render control characters by @EdJoPaTo in #1226
c08b522 (chart) Allow removing all the axis labels by @EdJoPaTo in #1282
03f3124 (paragraph) Line_width, and line_count include block borders by @airblast-dev in #1235
3ca920e (span) Prevent panic on rendering out of y bounds by @EdJoPaTo in #1257
84cb164 (terminal) Make terminal module private by @joshka in #1260 [breaking]
29c8c84 (uncategorized) Ignore newlines in Span's Display impl by @SUPERCILEX in #1270
cd93547 (uncategorized) Remove unnecessary synchronization in layout cache by @SUPERCILEX in #1245
b344f95 (uncategorized) Only apply style to first line when rendering a
Line
by @joshka in #12477ddfbc0 (uncategorized) Unnecessary allocations when creating Lines by @SUPERCILEX in #1237
84f3341 (uncategorized) Clippy lints from rust 1.80.0 by @joshka in #1238
Refactor
bb68bc6 (backend) Return
Size
fromBackend::size
instead ofRect
by @EdJoPaTo in #1254 [breaking]e81663b (list) Split up list.rs into smaller modules by @joshka in #1204
e707ff1 (uncategorized) Internally use Position struct by @EdJoPaTo in #1256
32a0b26 (uncategorized) Simplify WordWrapper implementation by @tranzystorekk in #1193
Documentation
6ce447c (block) Add docs about style inheritance by @joshka in #1190
55e0880 (block) Update block documentation by @leohscl in #1206
f2fa1ae (breaking-changes) Add missing code block by @orhun in #1291
f687af7 (breaking-changes) Mention removed lifetime of ToText trait by @orhun in #1292
d468463 (breaking-changes) Fix the PR link by @orhun in #1294
1b9bdd4 (contributing) Fix minor issues by @EdJoPaTo in #1300
5f7a7fb (examples) Update barcharts gifs by @joshka in #1306
fe4eeab (examples) Simplify the barchart example by @joshka in #1079
6e7b4e4 (examples) Add async example by @joshka in #1248
935a718 (examples) Add missing examples to README by @kibibyt3 in #1225
50e5674 (examples) Fix: fix typos in tape files by @kibibyt3 in #1224
810da72 (examples) Fix hyperlink example tape by @kibibyt3 in #1222
5eeb1cc (github) Create CODE_OF_CONDUCT.md by @joshka in #1279
7c0665c (layout) Fix typo in example by @EmiOnGit in #1217
272d059 (paragraph) Update main docs by @joshka in #1202
bb71e5f (readme) Remove MSRV by @EdJoPaTo in #1266
8857037 (terminal) Fix imports by @EdJoPaTo in #1263
2fd5ae6 (widgets) Document stability of WidgetRef by @joshka in #1288
716c931 (uncategorized) Document crossterm breaking change by @joshka in #1281
f775030 (uncategorized) Update main lib.rs / README examples by @joshka in #1280
8433d09 (uncategorized) Update demo image by @joshka in #1276
Performance
663486f (list) Avoid extra allocations when rendering
List
by @airblast-dev in #12444753b72 (reflow) Eliminate most WordWrapper allocations by @SUPERCILEX in #1239
be3eb75 (table) Avoid extra allocations when rendering
Table
by @airblast-dev in #1242f04bf85 (uncategorized) Add buffer benchmarks by @joshka in #1303
e6d2e04 (uncategorized) Move benchmarks into a single benchmark harness by @joshka in #1302
Styling
a80a8a6 (format) Lint markdown by @joshka in #1131
Testing
Miscellaneous Tasks
82b70fd (ci) Integrate cargo-semver-checks by @orhun in #1166
c245c13 (ci) Onboard bencher for tracking benchmarks by @orhun in #1174
efef0d0 (ci) Change label from
breaking change
toType: Breaking Change
by @kdheepak in #124341a9100 (github) Use the GitHub organization team as codeowners by @EdJoPaTo in #1081
3e7458f (github) Add forums and faqs to the issue template by @joshka in #1201
45fcab7 (uncategorized) Add rect::rows benchmark by @joshka in #1301
edc2af9 (uncategorized) Replace big_text with hardcoded logo by @joshka in #1203
c2d3850 (uncategorized) Use LF line endings for CHANGELOG.md instead of CRLF by @joshka in #1269
a9fe428 (uncategorized) Update cargo-deny config by @EdJoPaTo in #1265
ffc4300 (uncategorized) Remove executable flag for rs files by @EdJoPaTo in #1262
7bab9f0 (uncategorized) Add more CompactString::const_new instead of new by @joshka in #1230
ccf83e6 (uncategorized) Update labels in issue templates by @joshka in #1212
Build
Continuous Integration
476ac87 (uncategorized) Split up lint job by @EdJoPaTo in #1264
New Contributors
@SUPERCILEX made their first contribution in #1239
@josueBarretogit made their first contribution in #1267
@airblast-dev made their first contribution in #1242
@kibibyt3 made their first contribution in #1225
@EmiOnGit made their first contribution in #1217
@leohscl made their first contribution in #1206
@robertpsoane made their first contribution in #1198
Full Changelog: ratatui/ratatui@v0.27.0...0.28.0
v0.27.0
Compare Source
In this version, we have focused on enhancing usability and functionality with new features like
background styles for LineGauge, palette colors, and various other improvements including
improved performance. Also, we added brand new examples for tracing and creating hyperlinks!
✨ Release highlights: https://ratatui.rs/highlights/v027/
Features
eef1afe (linegauge) Allow LineGauge background styles by @nowNick in #565
line_gauge_demo.mov
Implements:#424
1365620 (borders) Add FULL and EMPTY border sets by @joshka in #1182
border::FULL
uses a full block symbol, whileborder::EMPTY
uses anempty space. This is useful for when you need to allocate space for the
border and apply the border style to a block without actually drawing a
border. This makes it possible to style the entire title area or a block
rather than just the title content.
7a48c5b (cell) Add EMPTY and (const) new method by @EdJoPaTo in #1143
3f2f2cd (docs) Add tracing example by @joshka in #1192
https://forum.ratatui.rs/t/how-do-you-println-debug-your-tui-programs/66
1520ed9 (layout) Impl Display for Position and Size by @joshka in #1162
46977d8 (list) Add list navigation methods (first, last, previous, next) by @joshka in #1159 [breaking]
Fixes:#1159
BREAKING CHANGE:The
List
widget now clamps the selected index to thebounds of the list when navigating with
first
,last
,previous
, andnext
, as well as when setting the index directly withselect
.10d7788 (style) Add conversions from the palette crate colors by @joshka in #1172
7ef2dae (text) support conversion from Display to Span, Line and Text by @orhun in #1167
74a32af (uncategorized) Re-export backends from the ratatui crate by @joshka in #1151
3594180 (uncategorized) Make Stylize's
.bg(color)
generic by @kdheepak in #1103 [breaking]0b5fd6b (uncategorized) Add writer() and writer_mut() to termion and crossterm backends by @enricozb in #991
Bug Fixes
efa965e (line) Remove newlines when converting strings to Lines by @joshka in #1191
Line::from("a\nb")
now returns a line with twoSpan
s instead of 1Fixes:#1111
d370aa7 (span) Ensure that zero-width characters are rendered correctly by @joshka in #1165
127d706 (table) Ensure render offset without selection properly by @joshka in #1187
Fixes:#1179
4bfdc15 (uncategorized) Render of &str and String doesn't respect area.width by @thscharler in #1177
e6871b9 (uncategorized) Avoid unicode-width breaking change in tests by @joshka in #1171
7f3efb0 (uncategorized) Pin unicode-width crate to 0.1.13 by @joshka in #1170
42cda6d (uncategorized) Prevent panic from string_slice by @EdJoPaTo in #1140
https://rust-lang.github.io/rust-clippy/master/index.html#string_slice
Refactor
73fd367 (block) Group builder pattern methods by @EdJoPaTo in #1134
257db62 (cell) Must_use and simplify style() by @EdJoPaTo in #1124
bf20369 (cell) Reset instead of applying default by @EdJoPaTo in #1127
7d175f8 (lint) Fix new lint warnings by @EdJoPaTo in #1178
cf67ed9 (lint) Use clippy::or_fun_call by @EdJoPaTo in #1138
https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call
4770e71 (list) Remove deprecated
start_corner
andCorner
by @Valentin271 in #759 [breaking]List::start_corner
was deprecated in v0.25. UseList::direction
andListDirection
instead.layout::Corner
is removed entirely.4f77910 (padding) Add Padding::ZERO as a constant by @EdJoPaTo in #1133
8061813 (uncategorized) Expand glob imports by @joshka in #1152
d929971 (uncategorized) Dont manually impl Default for defaults by @EdJoPaTo in #1142
8a60a56 (uncategorized) Needless_pass_by_ref_mut by @EdJoPaTo in #1137
https://rust-lang.github.io/rust-clippy/master/index.html#needless_pass_by_ref_mut
1de9a82 (uncategorized) Simplify if let by @EdJoPaTo in #1135
Documentation
1908b06 (borders) Add missing closing code blocks by @orhun in #1195
38bb196 (breaking-changes) Mention
LineGauge::gauge_style
by @orhun in #1194see #565
07efde5 (examples) Add hyperlink example by @joshka in #1063
7fdccaf (examples) Add vhs tapes for constraint-explorer and minimal examples by @joshka in #1164
4f307e6 (examples) Simplify paragraph example by @joshka in #1169
Related:#1157
f429f68 (examples) Remove lifetimes from the List example by @matta in #1132
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.