Skip to content

chore(deps): update rust crates#419

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/rust-crates
Open

chore(deps): update rust crates#419
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/rust-crates

Conversation

@renovate

@renovate renovate Bot commented May 31, 2026

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change
anyhow workspace.dependencies patch 1.0.1011.0.102
assertables workspace.dependencies minor 10.0.010.1.0
bitflags workspace.dependencies minor 2.10.02.13.0
bumpalo workspace.dependencies minor 3.19.13.20.3
cc workspace.dependencies patch 1.2.551.2.63
clap workspace.dependencies minor 4.5.574.6.1
compact_str workspace.dependencies patch 0.9.00.9.1
ctor workspace.dependencies patch 1.0.11.0.7
futures (source) workspace.dependencies patch 0.3.310.3.32
futures-util (source) workspace.dependencies patch 0.3.310.3.32
jsonc-parser workspace.dependencies patch 0.32.30.32.4
libc workspace.dependencies patch 0.2.1850.2.186
memmap2 workspace.dependencies patch 0.9.90.9.10
nix workspace.dependencies patch 0.31.20.31.3
once_cell workspace.dependencies patch 1.21.31.21.4
os_str_bytes workspace.dependencies minor 7.1.17.2.0
owo-colors workspace.dependencies minor 4.2.34.3.0
ratatui (source) workspace.dependencies patch 0.30.00.30.1
rayon workspace.dependencies minor 1.11.01.12.0
rusqlite workspace.dependencies minor 0.39.00.40.0
rustc-hash workspace.dependencies patch 2.1.12.1.2
serde_json workspace.dependencies patch 1.0.1491.0.150
similar workspace.dependencies patch 3.1.03.1.1
tar workspace.dependencies patch 0.4.450.4.46
tempfile (source) workspace.dependencies minor 3.25.03.27.0
terminal_size workspace.dependencies patch 0.4.30.4.4
test-log workspace.dependencies patch 0.2.190.2.21
tokio (source) workspace.dependencies minor 1.49.01.52.3
tracing-subscriber (source) workspace.dependencies patch 0.3.220.3.23
tui-term workspace.dependencies patch 0.3.10.3.4
uuid workspace.dependencies patch 1.23.11.23.2
which workspace.dependencies patch 8.0.08.0.3
wincode (source) workspace.dependencies patch 0.5.20.5.5

Release Notes

dtolnay/anyhow (anyhow)

v1.0.102

Compare Source

assertables/assertables-rust-crate (assertables)

v10.1.0

Compare Source

bitflags/bitflags (bitflags)

v2.13.0

Compare Source

What's Changed

Full Changelog: bitflags/bitflags@2.12.1...2.13.0

v2.12.1

Compare Source

What's Changed

  • Rework the #[flag_name] feature and re-stabilize as #[bitflags(flag_name)] by @​KodrAus in #​487

Full Changelog: bitflags/bitflags@2.12.0...2.12.1

v2.12.0

Compare Source

Yanked

This release has been yanked because the #[flag_name] processing noticeably increases macro recursion, hitting the default limit in cases that are already close to it.

What's Changed

Full Changelog: bitflags/bitflags@2.11.1...2.12.0

v2.11.1

Compare Source

What's Changed

New Contributors

Full Changelog: bitflags/bitflags@2.11.0...2.11.1

v2.11.0

Compare Source

What's Changed

New Contributors

Full Changelog: bitflags/bitflags@2.10.0...2.11.0

fitzgen/bumpalo (bumpalo)

v3.20.3

Compare Source

Released 2026-05-22.

Fixed
  • Fixed the try_alloc_slice_fill_with, alloc_slice_try_fill_with,
    alloc_slice_fill_with methods to properly rewind the bump pointer on
    allocation, initialization, and panic failure and avoid wasting bump capacity.
  • Fixed a drop bug in bumpalo::collections::vec::DrainFilter (used by retain
    and retain_mut) when the predicate panics.

v3.20.2

Compare Source

Released 2026-02-19.

Fixed
  • Restored Send and Sync implementations for Box<T> for T: ?Sized types
    as well.

v3.20.1

Compare Source

Released 2026-02-18.

Fixed
  • Restored Send and Sync implementations for Box<T> when T: Send and T: Sync respectively.

v3.20.0

Compare Source

Released 2026-02-18.

Added
  • Added the bumpalo::collections::Vec::pop_if method.
Fixed
  • Fixed a bug in the bumpalo::collections::String::retain method in the face
    of panics.
  • Made bumpalo::collections::Box<T> covariant with T (just like
    std::boxed::Box<T>).

rust-lang/cc-rs (cc)

v1.2.63

Compare Source

Other
  • Update shlex requirement from 1.3.0 to 2.0.1 (#​1736)

v1.2.62

Compare Source

Other
  • Regenerate target info (#​1721)
  • Allow exceptions on wasm platforms (#​1714)
  • Add relibc env (#​1710)
  • recognize sh4 architecture in parse_arch() (#​1712)

v1.2.61

Compare Source

Other
  • fix OutputKind::Capture documentation (#​1705)

v1.2.60

Compare Source

Fixed
  • (ar) suppress warnings from D modifier probe (#​1700)

v1.2.59

Compare Source

Fixed
  • (ar) deterministic archives with D modifier (#​1697)
Other
  • Regenerate target info (#​1698)
  • Fix target abi parsing for sanitiser targets (#​1695)

v1.2.58

Compare Source

Other
  • Update Compile-time Requirements to add info about clang-cl.exe (#​1693)

v1.2.57

Compare Source

Other
  • Size archiver batches according to argument length not argument count (#​1689)
  • Added Build::env for setting environment variables of compiler invocations and other child processes (#​1656 #​1682)

v1.2.56

Compare Source

Other
  • Regenerate target info (#​1676)
  • Fix clang-cl target when cross-compiling (#​1670)
clap-rs/clap (clap)

v4.6.1

Compare Source

Fixes
  • (derive) Ensure rebuilds happen when an read env variable is changed

v4.6.0

Compare Source

Compatibility
  • Update MSRV to 1.85

v4.5.61

Compare Source

Internal
  • Update dependencies

v4.5.60

Compare Source

Fixes
  • (help) Quote empty default values, possible values

v4.5.59

Compare Source

Fixes
  • Command::ignore_errors no longer masks help/version on subcommands

v4.5.58

Compare Source

ParkMyCar/compact_str (compact_str)

v0.9.1

Compare Source

mmastrac/linktime (ctor)

v1.0.7

Compare Source

What's Changed

  • Bump downstream link-section crate version and API updates.
  • Better error messages on bad attributes.

Full Changelog: mmastrac/linktime@ctor-1.0.6...ctor-1.0.7

v1.0.6

Compare Source

What's Changed

Changed
  • Bump link-section dependency to 0.17.0.
  • MSRV bumped to 1.85.0 (if priority feature is enabled), otherwise remains at
    1.60.0.
    • To restore MSRV to 1.60.0, use ctor = { version = "1.0.6", default-features = false, features = ["proc_macro", "std"] } in your Cargo.toml.
Fixed
  • #[ctor] requires significantly less macro recursion.

Full Changelog: mmastrac/linktime@ctor-1.0.5...ctor-1.0.6

v1.0.5

Compare Source

What's Changed

Full Changelog: mmastrac/linktime@ctor-1.0.4...ctor-1.0.5

v1.0.4

Compare Source

What's Changed

Full Changelog: mmastrac/linktime@ctor-1.0.3...ctor-1.0.4

v1.0.3

Compare Source

What's Changed

Other changes

Full Changelog: mmastrac/linktime@ctor-1.0.2...ctor-1.0.3

v1.0.2

Compare Source

What's Changed

  • Improvements to static items for #[ctor]
  • const dynamic ctors - use a const block to initialize a set of ctors

Full Changelog: mmastrac/linktime@ctor-1.0.1...ctor-1.0.2

rust-lang/futures-rs (futures)

v0.3.32

Compare Source

  • Bump MSRV of utility crates to 1.71. (#​2989)
  • Soft-deprecate ready! macro in favor of std::task::ready! added in Rust 1.64 (#​2925)
  • Soft-deprecate pin_mut! macro in favor of std::pin::pin! added in Rust 1.68 (#​2929)
  • Add FuturesOrdered::clear (#​2927)
  • Add mpsc::*Receiver::recv (#​2947)
  • Add mpsc::*Receiver::try_recv and deprecate mpsc::*Receiver::::try_next (#​2944)
  • Implement FusedStream for sink::With (#​2948)
  • Add no_std support for shared (#​2868)
  • Make Mutex::new() const (#​2956)
  • Add #[clippy::has_significant_drop] to guards (#​2967)
  • Remove dependency to pin-utils (#​2929)
  • Remove dependency on num_cpus (#​2946)
  • Performance improvements (#​2983)
  • Documentation improvements (#​2925, #​2926, #​2940, #​2971)
dprint/jsonc-parser (jsonc-parser)

v0.32.4

Compare Source

rust-lang/libc (libc)

v0.2.186

Compare Source

Added
  • Apple: Add KEVENT_FLAG_* constants (#​5070)
  • Linux: Add PR_SET_MEMORY_MERGE and PR_GET_MEMORY_MERGE (#​5060)
Changed
  • CI: Migrate FreeBSD CI from Cirrus CI to GitHub Actions (#​5058)
RazrFalcon/memmap2-rs (memmap2)

v0.9.10

Compare Source

Fixed
Changed
  • Return ErrorKind::Unsupported on unsupported platforms to allow reliable runtime detection.
    @​daxpedda
nix-rust/nix (nix)

v0.31.3

Compare Source

Added
  • Enable module ioctl for Cygwin
    (#​2715)
  • Add
    CLOCK_BOOTTIME/CLOCK_PROCESS_CPUTIME_ID/CLOCK_THREAD_CPUTIME_ID/CLOCK_UPTIME
    to NetBSD-like platforms (#​2716)
  • unistd: add mkfifo for redox
    (#​2749)
  • Added kevent64 support on apple targets: Kqueue::kevent64, KEvent64,
    and Kevent64Flags. (#​2781)
Fixed
  • fix SaFlags_t definition on redox
    (#​2751)
  • Fixed EpollEvent::events() to use from_bits_retain instead of
    from_bits().unwrap(), preventing panics when the kernel returns
    unknown epoll flags. (#​2783)
  • Fixed KEvent::flags() and KEvent::fflags() to use from_bits_retain
    instead of from_bits().unwrap(), preventing panics when the kernel
    returns unknown kqueue flags.
    (#​2784)
matklad/once_cell (once_cell)

v1.21.4

Compare Source

  • Fix unsoundness in OnceCell::wait under --features=parking_lot, #​295.

    If thread A calls wait, while thread B calls get_or_try_init(f), and, furthermore, f panics,
    the wait incorrectly returns and thread A observes uninitialized memory.

    Kudos to @​meng-xu-cs for a nice find!

dylni/os_str_bytes (os_str_bytes)

v7.2.0

Compare Source

owo-colors/owo-colors (owo-colors)

v4.3.0

Compare Source

Fixed
  • Scripts in the scripts/ directory are no longer published in the crate package. Thanks weiznich for your first contribution!
Changed
  • Mark methods with #[rust_analyzer::completions(ignore_flyimport)] and the OwoColorize trait with #[rust_analyzer::completions(ignore_flyimport_methods)]. This prevents owo-colors methods from being completed with rust-analyzer unless the OwoColorize trait is included.

    Unfortunately, this also breaks explicit autocomplete commands such as Ctrl-Space in many editors. (The language server protocol doesn't appear to have a way to differentiate between implicit and explicit autocomplete commands.) On balance we believe this is the right approach, but please do provide feedback on PR #​141 if it negatively affects you.

  • Updated MSRV to Rust 1.81.

ratatui/ratatui (ratatui)

v0.30.1

Compare Source

"Rats, we're rats; we're the rats." – Rat Movie

We are excited to announce the new version of ratatui - a Rust library that's all about cooking up TUIs 👨‍🍳🐀

Release highlights: https://ratatui.rs/highlights/v0301/

⚠️ List of breaking changes can be found here.

Features
  • 74d6a84 (block) Support shadows by @​orhun in #​2481

    Introduce Block::shadow(...) with a new Shadow type that supports:

    • presets: overlay, block, light_shade, medium_shade,
      dark_shade
    • custom symbols via Shadow::symbol(...)
    • custom effects via Shadow::custom(...)
    use ratatui::layout::Offset;
    use ratatui::style::Stylize;
    use ratatui::widgets::{Block, Shadow};
    
    let popup = Block::bordered().title("Popup").shadow(
        Shadow::dark_shade()
            .black()
            .on_white()
            .offset(Offset::new(2, 1)),
    );

    Results in:

    ┌Popup─────┐
    │content   │▒
    └──────────┘▒
      ▒▒▒▒▒▒▒▒▒▒▒
    

    shadow

    fixes #​1892


  • 4d30420 (buffer) Add CellDiffOption::AlwaysUpdate to force cell updates by @​sxyazi in #​2480

    When this option is used, the cells are updated even when content is identical.

    Follow-up for #​1605

    Trying to resolve #​1116

  • 39c32c6 (buffer) Add cell diff options by @​benjajaja in #​1605

    Problem:Escape sequences always cause a cell to count as "multiwidth",
    even when it doesn't render wider than one cell, or not as wide as the
    escape sequence would be computed as.

    Solution:Convert skip:bool to enum. Add enum option ForceWidth to
    force a cell width for diffing.

    When using the option, this also fixes some bug where diffing is not
    idempotent and causes a diff operation for (symbol.len() - 1) times.

    There are three new specific test cases:

    1. Rendering hyperlinks by squeezing the escape sequence into the first
      cell and forcing the width to the unicode width of the text part.
      This is much easier to implement for a Link widget, as it would only
      need to get the unicode-width once and not iterate over graphemes
      like Spans must do.
    2. Rendering hyperlinks by squeezing the opening sequence into the first
      cell with the first grapheme and forcing the width to that of the
      first grapheme. Then rendering each grapheme as usual. Then squeezing
      the closing sequence into the last cell with the last grapheme and
      forcing the width to that of the last grapheme.
      This is harder to implement for a Link widget, as it would have to
      iterate over graphemes with their width like Spans do.
    3. Kitty image sequence with utf-8 placeholders, similar to 2 but with
      known constant grapheme widths.

    Link widget that leverages this

    https://github.com/benjajaja/tui-link

    It would be cooler if we could just add something like .link(url) to
    Spans, because it would much simpler to insert some link and leverage
    all the Line/Text/Paragraph wrapping and whatnot. With a custom widget
    you need to take care of the Area where you'd want to render it, so
    it's not that clean. But we could iterate on this later, if even
    possible.

  • 6faaddb (core) Implement from slice for line and text by @​NoOPeEKS in #​2371

    This PR adds the following implementations of the From trait for Line
    and Text structs:

    • Implements From<&[T]> where T is Into<Span> for Line, allowing using
      of slices to construct Lines.
    • Implements From<&[T]> where T is Into<Line> for Text, allowing using
      of slices of various types to construct Texts.

    closes #​2279

  • 5fc6ab8 (core) Support layout-cache in no_std environments by @​junkdog in #​2399

    this enables "layout-cache" for no_std builds; it's meant for embedded
    environments, where the layout engine otherwise consumes all CPU,
    capping the framerate at around ~10fps. the same app can refresh 300-500
    times per second with layout cache enabled.

    i had to add layout-cache = ["dep:critical-section"] to all builds -
    it's pretty tiny and shouldn't leave a trace in std-builds. the
    alternative is to add an extra layer of features for layout-cache with
    std and no_std, but it pollutes the feature space.


  • ee4b7a9 (crossterm) Add the missing hidden modifier by @​sxyazi in #​2413

    Fixes sxyazi/yazi#3724, see
    sxyazi/yazi#3724 (comment) for a
    reproducer.

    This PR adds the missing Modifier::HIDDEN style and introduces a
    queue_modifier_diff to test ModifierDiff::queue().

    It also fixes a bug where CrosstermAttribute::Bold and
    CrosstermAttribute::Dim would be emitted twice when resetting
    intensity. For example:

    #[case(Modifier::DIM, Modifier::BOLD, &[CrosstermAttribute::NormalIntensity, CrosstermAttribute::Bold])]

    would become:

    #[case(Modifier::DIM, Modifier::BOLD, &[CrosstermAttribute::NormalIntensity, CrosstermAttribute::Bold, CrosstermAttribute::Bold])]

  • 9d9239a (examples) Add volatility-surface 3D visualization by @​floor-licker in #​2322

    A design demonstration of a 3D volatility surface rendering using
    Braille canvas with interactive rotation and zoom controls. I built this
    for myself for an app I'm currently building but just wanted to share it
    with the community as well to inspire more 3D perspective terminal
    widgets in the future.

    Final Demo

    volatility-surface

    Description

    Adds a new example demonstrating 3D visualization techniques in the
    terminal. There aren't many examples showing how to represent 3D objects
    in 2D terminal space so my goal is just to demonstrate more advanced
    Canvas and Braille rendering techniques for 3D graphics. The example
    visualizes an implied volatility surface which is a common financial
    visualization using interactive rotation and zoom controls. You can run
    the interactive demo for yourself with cargo run -p volatility-surface

    demo.mov

    <img width="659" height="432" alt="image"

    src="https://github.com/user-attachments/assets/68698cb0-c5d5-4b41-a3c3-65ec8fff12f5"
    />

    Technical Highlights

    • Demonstrates how to implement perspective projection in a terminal
    • Shows advanced use of Canvas widget with Marker::Braille
    • Example of smooth animation patterns and state management
    • Self-contained with synthetic data generation (no external APIs)

  • ae975c7 (examples) Allow overlap spacing in explorer by @​joshka in #​2316

    Store spacing as i16 so negative values map to Spacing::Overlap, and
    show overlap in the axis label.

  • 1e0ab0c (ratatui-crossterm) Add IntoCrossterm for Style by @​0xferrous in #​2323

  • 101a63e (render) Add function for applying buffer by @​musjj in #​2566

    Add a public API for applying and flushing the terminal buffer.

    A minimal usage will look something like this:

    use ratatui::Terminal;
    use ratatui::backend::CrosstermBackend;
    use ratatui::buffer::Buffer;
    use ratatui::widgets::Widget;
    
    let backend = CrosstermBackend::new(io::stdout());
    let mut terminal = Terminal::new(backend)?;
    
    terminal.autoresize()?;
    
    let mut custom_buffer = Buffer::default();
    custom_buffer.resize(terminal.get_frame().area());
    custom_buffer.reset();
    
    "Hello World!".render(custom_buffer.area, &mut custom_buffer);
    
    terminal.current_buffer_mut().merge(&custom_buffer);
    terminal.apply_buffer()?;

    My primary motivation for this PR is to improve the ECS ergonomics in
    bevy_ratatui. But this
    should be useful for anyone who wants to commit incremental writes to
    the buffer without having to do everything in one monolithic
    Terminal::draw
    closure.


  • 09a3027 (symbol) Add custom marker by @​BenFradet in #​2356

  • f9d066f (table) Let Cells span multiple columns by @​karkhaz in #​2150

    Add a 'column_span' field to table cells. The default value
    is 1; larger values will cause cells to span over multiple columns,
    being rendered over all columns plus the spaces between them.

    Fixes #​1568.

  • a5b08d6 (widgets) Add Fill widget by @​Metbcy in #​2520

    Adds a new Fill widget that paints every cell within its area with a
    single repeated symbol and style. Integrates with Stylize so the whole
    chain works as expected:

    use ratatui::widgets::{Fill, Widget};
    use ratatui::style::Stylize;
    
    Fill::new("X").blue().bold().render(area, buf);

    Implements Widget (for both Fill and &Fill) and Styled, accepts
    anything that converts into a Cow<'a, str>, and degrades gracefully on
    empty / multi-grapheme symbols.


  • 9094fd2 (widgets) Add line shape with filled area for Canvas and Chart by @​bananaofhappiness in #​2426

    This commit adds filled area-chart rendering for both Canvas and Chart.

    You can now render a line and fill the area between that line and a baseline Y value, which helps highlight magnitude/volume trends.

    • In Canvas, use FilledLine.
    • In Chart, use GraphType::Area and set the baseline via Dataset::fill_to_y(f64).

    The f64 baseline is now configured on Dataset (not in GraphType), so GraphType stays a simple enum variant.

    Under the hood, line rasterization in canvas was refactored to share a reusable Bresenham point iterator, and FilledLine builds on that to paint vertical spans from each line point to fill_to_y.

    Some screenshots with and without this new type: изображение изображение

    // In Canvas
    use ratatui::widgets::canvas::FilledLine;
    
    Canvas::default()
        .paint(|ctx| {
            ctx.draw(&FilledLine::new(0.0, 0.0, 10.0, 5.0, 0.0, Color::Red));
        });
    
    // In Chart
    let dataset = Dataset::default()
        .data(&data)
        .graph_type(GraphType::Area)
        .fill_to_y(0.0); // fill to y = 0
    
    Chart::new(vec![dataset]);

  • 0a87882 (uncategorized) Add impl From<u16> for Padding and Margin by @​JayanAXHF in #​2438

  • 556cc7b (uncategorized) Add comment for inner area to popup example by @​Its-Just-Nans in #​2309

  • 01a15f9 (uncategorized) Add AsRef impls for widget types by @​joshka in #​2297

Bug Fixes
  • d12bb83 (barchart) Handle empty horizontal charts by @​fallintoplace in #​2553

    Fixes #​2552

    This makes the BarChart constructors ignore empty groups, matching the
    existing .data(...) builder behavior. Without this,

    BarChart::horizontal(Vec::<Bar>::new()) stores one empty group,
    proceeds into horizontal rendering, skips the bar loop, and then
    underflows when computing the group label row from bar_y - self.bar_gap.

    The fix normalizes constructor input through a shared non_empty_groups
    helper for new, horizontal, and grouped. Empty horizontal charts
    now render nothing instead of panicking, and constructor behavior is
    consistent with .data(...).


  • 6396b1c (block) Saturate block edge arithmetic by @​joshka in #​2488

    Motivation

    • Block border and title layout used unchecked u16 arithmetic in
      several places.
    • In debug builds that can panic on tiny or edge-case geometry; in
      release builds the same arithmetic wraps.
    • The original report came from merge-border rendering on tiny areas,
      but the same pattern appeared in title layout and spacing helpers as
      well.

    Description

    • Use saturating arithmetic in Block::inner, render_sides,
      render_corners, titles_area, and vertical_space.
    • Clamp rendered title widths to u16 for layout arithmetic.
    • Replace unchecked title-width accumulation and cursor-advance math
      with bounded arithmetic.
    • Add debug-only regression tests covering empty areas, maximal padding,
      title-area edge cases, and very large title widths.

    Testing

    • Ran cargo test -p ratatui-widgets block::tests.

    Codex
    Task

  • 9143b83 (buffer) Diff for trailing cells when only style changes by @​gcavelier in #​2308

    this PR closes #​2307 by preventing unnecessary diff updates for trailing
    cells when only style changes.

    This PR was generated by Claude, and validated by me.

    Summary

    This PR fixes a visual artifact bug where block borders would appear
    offset when rendered over a widget that had a foreground color style
    applied to the entire area.

    The Fix

    - if !next_trailing.skip && prev_trailing != next_trailing {
    + // Only emit update if the SYMBOL changed, not just the style.
    + // The style of hidden trailing cells is not visible, so style
    + // differences alone should not trigger updates that can cause
    + // cursor positioning issues on some terminals.
    + if !next_trailing.skip && prev_trailing.symbol() != next_trailing.symbol() {

    This aligns the code with the documented intent: only emit updates when
    the symbol (visible content) changes, not when only the style
    changes.

    Changes

    File Change
    ratatui-core/src/buffer/buffer.rs:526-530 Compare only symbol, not
    full cell
    ratatui-core/src/buffer/buffer.rs:1376-1425 Add regression test

    Test Added

    #[test]
    fn diff_ignores_style_only_changes_in_trailing_cells() {
        // Verifies that trailing cells with same symbol but different style
        // do NOT generate diff updates
    }

    Why This Is Safe

    1. Trailing cells are hidden - they are visually covered by the wide
      character
    2. Style is invisible - the fg/bg color of a hidden cell has no
      visual effect
    3. Symbol changes still trigger updates - if the symbol changes
      (e.g., from " " to "x"), the update is still emitted
    4. Aligns with documented intent - the original comment says
      "non-blank content", not "different style"

    Related

    • The existing test diff_clears_trailing_cell_for_wide_grapheme
      verifies that symbol changes DO trigger updates
    • This fix complements that behavior by ensuring style-only changes do
      NOT trigger updates
  • e6b71f2 (build) Correct rust-toolchain->rust-version on cargo-deny-action by @​sermuns in #​2471

    closes #​2470

  • 65c5202 (changelog) Fix typo by @​joshka in #​2300

  • 43bbaae (clippy) Fix beta clippy errors by @​Logan-Ruf in #​2433

    Noticed these errors on my other PR and figured I could just fix them
    real quick.

    closes #​2432

  • 957fbb0 (core) Use correct width for halfwidth dakuten/handakuten by @​orhun in #​2499

    unicode-width reports U+FF9E/U+FF9F as zero-width, but terminals render
    them as 1 cell.
    Adjusts CellWidth trait accordingly for fixing this behavior.

    fixes #​2188

  • d7646c7 (core) Avoid overflow in BufferDiff forced-width advance by @​joshka in #​2487

    Motivation

    • Prevent arithmetic overflow when advancing self.pos for
      CellDiffOption::ForcedWidth(NonZeroU16) in
      ratatui-core/src/buffer/diff.rs, which could panic in debug or wrap in
      release and cause an iterator hang/DoS.

    Description

    • Replace the unchecked self.pos += width.get().saturating_sub(1) with
      a saturating addition via self.pos = self.pos.saturating_add(width.get().saturating_sub(1) as usize) to
      avoid overflow while preserving existing iterator semantics.

    Testing

    • Ran cargo test -p ratatui-core buffer::diff --lib and the buffer
      diff tests completed successfully (10 passed, 0 failed).

    Codex
    Task

  • 77f8006 (core) Avoid cursor position queries during resize by @​orhun in #​2485

    Terminal::resize() now clears without calling get_cursor_position(),
    so that CPR (Cursor position report) calls does not interfere with
    stdin.

    Fixes #​2483


  • 18aa467 (examples) Make line-gauge example compatible with macos sequoia's terminal.app by @​lazo4 in #​2474

    Part of the fix for #​1972

    Summary

    This fix makes the line-gauge example compatible with the macos
    sequoia Terminal.app which doesn't support truecolor. It reuses the
    is_true_color_supported introduced in #​2211 by @​ffex and uses a color
    theme instead of hardcoding the colors.

    Result on macos sequoia

    Before: Capture d’écran 2026-04-06 à 11 47
07
    After: Capture d’écran 2026-04-06 à 11 46
45

    Notes

    This is my first open source contribution, thanks to @​ffex for letting
    me help on this issue

  • ce2c228 (examples) Change flex example colors for MacOS default terminal by @​ffex in #​2211

    Part of the fix for #​1972

    Summary

    This fix introduces a function to check if we are in a terminal without
    truecolor(24-bit) and changes the default colors to appear fine of the
    flex example.

    Notes

    The function "is_true_color_supported” is an old problem and there is no
    common way to determine if a terminal supports or not the truecolor.

    This is the main reason why the function detects specifically the
    Terminal.app version before the Tahoe. If there are other known
    terminals with this problem, we can add it to this function.


  • ef72dba (examples) Fix import for widget examples by @​orhun in #​2422

    closes #​2299

  • 88441cf (terminal) Fix inline viewport resizing issues by clearing the screen by @​wyvernbw in #​2355

    adds a check to the autoresize function to clear the entire screen and
    move the inline viewport to the top when the window shrinks horizontally
    in order to avoid line wrapping issues.

    Other libraries like ink purge the history as well, but the
    backend::ClearType type does not support that. Without this if the
    user scrolls up they will see previous broken renders. This should work
    well with all terminal emulators and multiplexers.

    fixes #​2086

  • 91b6fb7 (tests) Use the correct type for the cell diff test by @​orhun in [#​2472](htt

Note

PR body was truncated to here.


Configuration

📅 Schedule: (in timezone Asia/Shanghai)

  • Branch creation
    • "before 10am on monday"
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate

renovate Bot commented May 31, 2026

Copy link
Copy Markdown
Contributor Author

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: Cargo.lock
Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path Cargo.toml --package anyhow@1.0.101 --precise 1.0.102
error: failed to load manifest for workspace member `/tmp/renovate/repos/github/voidzero-dev/vite-task/crates/fspy`
referenced via `crates/*` by workspace at `/tmp/renovate/repos/github/voidzero-dev/vite-task/Cargo.toml`

Caused by:
  failed to parse manifest at `/tmp/renovate/repos/github/voidzero-dev/vite-task/crates/fspy/Cargo.toml`

Caused by:
  `artifact = …` requires `-Z bindeps` (fspy_preload_unix)

@renovate renovate Bot force-pushed the renovate/rust-crates branch 3 times, most recently from 0e6df3e to 89217cf Compare June 7, 2026 21:56
@renovate renovate Bot force-pushed the renovate/rust-crates branch from 89217cf to 5598bca Compare June 8, 2026 01:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants