Skip to content

chore(deps): bump the cargo group across 1 directory with 17 updates - #7566

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/cargo-e5baf6af32
Closed

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/cargo-e5baf6af32

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Nov 1, 2026 •

Copy link
Copy Markdown
Contributor

Bumps the cargo group with 17 updates in the / directory:

Package From To
mdns-sd 0.21.5 0.21.6
noq-proto 1.3.0 1.4.0
stun-types 2.0.3 2.0.4
tokio-util 0.7.19 0.7.20
usage-rs 7.1.0 7.1.2
uuid 1.28.0 1.29.0
web-transport-iroh 0.8.3 0.8.4
parking_lot 0.12.5 0.13.0
smallvec 1.16.3 1.16.4
vt100 0.17.0 0.18.1
roxmltree 0.21.1 0.21.2
http-cache-reqwest 1.0.0-alpha.9 1.0.0-alpha.10
eframe 0.36.2 0.37.0
egui 0.36.2 0.37.0
notify 8.2.0 8.2.1
webpki-roots 1.0.10 1.0.11
syn 2.0.119 3.0.6

Updates mdns-sd from 0.21.5 to 0.21.6

Release notes

Sourced from mdns-sd's releases.

v0.21.6

This is a bugfix release.

Bug fixes

  • Fix daemon deadlocks under event backpressure. Delivering events to browse, browse_cache and resolve_hostname receivers no longer blocks the daemon. If a receiver falls too far behind and its event channel fills (or the receiver is dropped), that subscription is closed and its pending queries are stopped. In this case the receiver gets no SearchStopped event: after the queued events, the channel is simply disconnected. Cached records are kept, so browse_cache still works. (#522)
  • Do not record an interface address whose multicast join failed. Previously such an address was kept (and IpAdd was emitted), so the IP check never retried the join. Now the join is retried on the next IP check. (#523)

What's Changed

New Contributors

Full Changelog: keepsimple1/mdns-sd@v0.21.5...v0.21.6

Changelog

Sourced from mdns-sd's changelog.

Version 0.21.6 (2026-10-18)

This is a bugfix release.

Bug fixes

  • Fix daemon deadlocks under event backpressure. Delivering events to browse, browse_cache and resolve_hostname receivers no longer blocks the daemon. If a receiver falls too far behind and its event channel fills (or the receiver is dropped), that subscription is closed and its pending queries are stopped. In this case the receiver gets no SearchStopped event: after the queued events, the channel is simply disconnected. Cached records are kept, so browse_cache still works. (#522)
  • Do not record an interface address whose multicast join failed. Previously such an address was kept (and IpAdd was emitted), so the IP check never retried the join. Now the join is retried on the next IP check. (#523)

All changes

  • 9ca5b67 2026-10-16 fix: do not record an interface address whose multicast join failed (#523) (keepsimple1)
  • d0941f9 2026-10-16 Fix daemon deadlocks under event backpressure (#522) (oriel haim)

Thanks and welcome our new contributor @​orielhaim !

Commits

Updates noq-proto from 1.3.0 to 1.4.0

Changelog

Sourced from noq-proto's changelog.

1.4.0 - 2026-10-20

⛰️ Features

  • (proto) Add {Connection,Path}Stats::sent_{packets,bytes} (#740) - (89ed00c)
  • (proto) Expose BBR bandwidth estimate in path stats (#823) - (dcb8949)
  • (udp) Deprecate UdpSocketState::send (#823) - (31032ff)

🐛 Bug Fixes

  • (noq) Wake endpoint waiters when the driver is dropped (#824) - (cf1bc66)
  • (noq) Surface non-WouldBlock recv errors from poll_recv (#823) - (099284e)
  • (noq) Ignore EMSGSIZE error triggered by ICMP Frag Needed (Path To Big) (#823) - (c3cac8a)
  • (noq) Reuse one receive buffer per batch instead of allocating per datagram (#823) - (941eef9)
  • (proto) Report time threshold losses correctly in qlog (#827) - (475b142)
  • (proto) Match unspecified local IP when sending connection close (#822) - (34ec969)
  • (proto) Do not coalesce into a too small datagram tail (#792) - (f916a5c)
  • (proto) Yield error on too many gaps in assembler (#823) - (61302fd)
  • (proto) Congestion: saturate CUBIC window increment to avoid overflow (#823) - (d7f3a88)
  • (proto) Allow the cwnd to be filled exactly (#823) - (9612584)
  • (proto) Pass CID length/lifetime to Connection::new directly (#823) - (9fc7f70)
  • (proto) Bound assembler chunk count regardless of over-allocation (#823) - (b08b5e1)
  • (proto) Check limits when processing already retired CIDs (#823) - (78a4b2e)
  • (proto) Limit total memory used to buffer incoming datagrams (#823) - (2ea64e1)
  • (proto) Limit total memory used to buffer outgoing datagrams (#823) - (09dd4ee)
  • (proto) Treat an equal-size delivery as evidence against a preceding loss burst (#823) - (dd77a46)
  • (proto) Apply RFC 9000 §12.4 packet-type rules to CONNECTION_CLOSE (#823) - (5fecec8)
  • (proto) Allow the cwnd to be filled exactly - (acfec5f)
  • (proto) Issue flow control credit once for streams both stopped and reset (#842) - (13b93f7)
  • (quinn-udp) Avoid permanent EWOULDBLOCK from macOS sendmsg kernel bug - (3d59275)
  • (quinn-udp) Add a per-send EMSGSIZE safety net - (b33c61c)
  • (udp) Handle EIO from sendmsg in the cmsg fallback (#823) - (68e27fa)
  • (udp) Avoid permanent EWOULDBLOCK from macOS sendmsg kernel bug (#823) - (9c42264)
  • (udp) Add a per-send EMSGSIZE safety net (#823) - (49477cf)
  • (udp) Read cmsg payloads unaligned (#823) - (215f49e)

🚜 Refactor

  • (proto) Take items from core and alloc where std re-exports them (#838) - (71c390c)
  • (proto) Factor out DatagramBuffer for queues in either direction (#823) - (1c51be5)
  • (proto) Name the hash map types through crate-root aliases (#845) - (117e54c)

📚 Documentation

  • (noq) Document why the receive batch is copied into a reusable buffer (#823) - (246c7e4)
  • (noq) Document cancellation safety for accept_uni, accept_bi and read_datagram (#823) - (56522d8)
  • (quinn) Document cancellation safety for accept_uni, accept_bi and read_datagram - (8663c76)
  • Adjust contributor guidelines and add new ai policy (#832) - (1137456)

⚡ Performance

... (truncated)

Commits
  • 34f75c4 chore: Release
  • 117e54c refactor(proto): name the hash map types through crate-root aliases (#845)
  • 13b93f7 fix(proto): issue flow control credit once for streams both stopped and reset...
  • 58869bf Merge commit 'ba18f6c12ad96a66c92d38471eb3370b7bd68337' into sync-upstream
  • 4523eaa perf(proto): replace the assembler BinaryHeap with a sorted VecDeque (#823)
  • 5fecec8 fix(proto): apply RFC 9000 §12.4 packet-type rules to CONNECTION_CLOSE (#823)
  • f268351 tests(proto): port connection_close_while_congestion_blocked to noq's api
  • a17c35e tests(proto): Test that CONNECTION_CLOSE is sent even when congestion blocked...
  • dcb8949 feat(proto): Expose BBR bandwidth estimate in path stats (#823)
  • dd77a46 fix(proto): Treat an equal-size delivery as evidence against a preceding loss...
  • Additional commits viewable in compare view

Updates stun-types from 2.0.3 to 2.0.4

Commits

Updates tokio-util from 0.7.19 to 0.7.20

Commits

Updates usage-rs from 7.1.0 to 7.1.2

Release notes

Sourced from usage-rs's releases.

v7.1.2: Completion scripts treat candidates as plain text; mounted commands stop inheriting top-level completers

Generated bash, zsh and fish completion scripts no longer expand completion candidates or file extensions as shell code. Mounted commands also stop picking up the mounting spec's top-level completers. The first fix matters for tools like mise, where candidates can come from project files. Regenerate any completion files you've installed to get the script fixes.

Fixed

  • (complete) Completion candidates and extension filters are now handled as plain text in every shell (#1581, @​jdx):
    • bash: usage generate completion bash used to pass candidates through compgen -W, which expands them as shell input. A run= completer that printed $(touch pwned) ran that command when you pressed Tab, and a * candidate turned into the files in the current directory. The completion-init handler had the same globbing problem. Both now read one candidate per line without expanding it, so a candidate that contains a space stays one entry instead of splitting in two.
    • zsh: extension names were inserted directly into the _files -g pattern, and zsh runs glob qualifiers as code. The pattern is now built only from plain extension names (letters, digits, _ . + -). If no usable names are left, completion falls back to unfiltered _files. This also fixes a single extension, which produced *.(toml) and matched nothing. It now produces *.toml.
    • fish: extensions are matched as a literal suffix, so a * or ? in an extension no longer matches extra files.

Changed

  • (complete) A command brought in by mount now uses only the completers it declares itself, in its own complete nodes or inside its arg nodes (#1581, @​jdx). Before, a mounted argument that shared a name with a top-level completer (for example <tool>) used the mounting spec's completer, even when the mounted command declared its own. If you type one of the mounting CLI's flags inside a mounted command, its value still completes the same way it does outside the mount. Specs without mounts are unaffected. If a mounted command relied on a top-level completer, declare it in the spec that the mount emits instead, for example with complete "tool" run="..." inside the cmd.

Full Changelog: jdx/usage@v7.1.1...v7.1.2

💚 Sponsor usage

usage is built and maintained by @​jdx, an open source developer at entire.io, the title sponsor of his open source work.

If usage powers CLI specs, docs, or completions for a tool you maintain or use, please consider becoming an individual or company sponsor. Your support funds ongoing development and helps keep usage fast, free, and independent.

v7.1.1: Fix nushell 0.116 deprecation warning in generated completions

Nushell completion scripts generated by usage-argv and the Go runtime no longer print a deprecation warning on nushell 0.116.

Fixed

  • (complete) Nushell 0.116 deprecated external completers that take a positional spans argument, so the generated script printed a nu::shell::deprecated warning every time it completed (#1570, @​jdx). The completer now uses the {|place|} signature. On 0.116 it reads the tokens from $place.command, and on older nushell releases, which pass the token list directly, it uses that list. If you already had an external completer installed, it still gets called, and it receives the input in the format it expects: the token list for completers written with spans, the original input for everything else. If you saved the script to a file, regenerate it to pick up the fix.

Full Changelog: jdx/usage@v7.1.0...v7.1.1

💚 Sponsor usage

usage is built and maintained by @​jdx, an open source developer at entire.io, the title sponsor of his open source work.

If usage powers CLI specs, docs, or completions for a tool you maintain or use, please consider becoming an individual or company sponsor. Your support funds ongoing development and helps keep usage fast, free, and independent.

Changelog

Sourced from usage-rs's changelog.

7.1.2 - 2026-10-23

🐛 Bug Fixes

  • (complete) treat completion candidates as text and keep top-level completers out of mounts by @​jdx in #1581

📦️ Dependency Updates

7.1.1 - 2026-10-22

🐛 Bug Fixes

  • (complete) stop nushell 0.116 deprecation warning in generated completer by @​jdx in #1570

🛡️ Security

  • (deps) update communique, hk, mr-boxington in mise.lock by @​jdx in #1572

📦️ Dependency Updates

Commits

Updates uuid from 1.28.0 to 1.29.0

Release notes

Sourced from uuid's releases.

v1.29.0

What's Changed

Full Changelog: uuid-rs/uuid@v1.28.0...v1.29.0

Commits
  • 4643e60 Merge pull request #920 from uuid-rs/cargo/v1.29.0
  • a3631fd prepare for 1.29.0 release
  • 304913e Merge pull request #919 from RanaPriyansh/fix/non-nil-versioned-constructors-901
  • d49f963 Reuse existing version tests for NonNilUuid constructors
  • 2f02404 Add versioned constructors to NonNilUuid
  • See full diff in compare view

Updates web-transport-iroh from 0.8.3 to 0.8.4

Release notes

Sourced from web-transport-iroh's releases.

web-transport-iroh-v0.8.4

Other

  • (deps) update kio requirement from 0.5.4 to 0.6.2 in the cargo group across 1 directory (#415)
Commits
  • 554ac66 chore: release (#430)
  • fff7fa7 feat: report stream occupancy and remaining opening credit (#440)
  • c2e93e4 chore(deps): update kio requirement from 0.5.4 to 0.6.2 in the cargo group ac...
  • 49c078f quest: plan the WebSocket follow-ups from #426 (#429)
  • See full diff in compare view

Updates parking_lot from 0.12.5 to 0.13.0

Release notes

Sourced from parking_lot's releases.

parking_lot-v0.13.0

  • Signficantly improved Mutex and RwLock performance under contention by deferring waking up parked threads until after the lock is released. (#545)
  • Added per-acquisition state to lock_api raw locks. RawMutex::Guard replaces GuardMarker; rwlocks have separate SharedGuard, ExclusiveGuard, and UpgradableGuard types. Unlock operations consume this state, while upgrade and downgrade operations return replacement state. Bump and raw condition-variable waits borrow and update the state. Consuming operations must release their acquisition on unwind; borrowing operations must restore ownership and valid state, or abort if restoration fails. (#544)
  • Raised the MSRV to Rust 1.95 and upgraded all crates to edition 2024. (#533)
  • Removed the hardware-lock-elision feature. (#533)
  • Removed automatic eventual fairness. Fair unlocking remains available through the explicit fair-unlock APIs. This removes UnparkResult::be_fair. (#533)
  • Removed the no-op lock_api/nightly feature. (#533)
  • Removed the legacy lock_api const_new methods and the redundant parking_lot const_* constructor functions; the corresponding new methods can be called in constant contexts. (#533)
  • Replaced the recursive read methods on RwLock with a dedicated reader-biased RecursiveRwLock type. The RawRwLockRecursive and RawRwLockRecursiveTimed extension traits have been removed from lock_api. (#533)
  • Added Once::new_completed for constructing a Once in the completed state. (#520)
  • Added Once::{is_completed, wait, wait_force} and the corresponding OnceState query methods. (#533)
  • Made additional lock, timeout, parking, and spin-wait accessors usable in constant contexts. (#533)
  • Added into_inner_with_raw to lock_api's Mutex, RwLock, and ReentrantMutex. (#524)
  • Added RawCondvar, RawCondvarTimed, and the generic Condvar wrapper to lock_api, and implemented parking_lot::Condvar using them. Custom raw condition variables may allow spurious wakeups; their notification methods must then return false or 0. parking_lot::Condvar still guarantees no spurious wakeups and exact notification counts. (#523) (#533)
  • Corrected the Send and Sync bounds of lock guards in lock_api. (#533)
  • Made RawMutex::is_locked and RawRwLock::{is_locked, is_locked_exclusive} required methods. (#533)
  • Renamed MappedRwLockReadGuard::try_map_or_else to try_map_or_err. (#533)
  • Clarified the safety requirements of raw lock implementations, including acquire/release synchronization, moving or dropping a locked raw lock, preserving the original lock mode on a failed upgrade, and stable thread IDs. Acquisitions may unwind without leaving a new acquisition held; consuming guard operations release their acquisition on unwind, while bump and wait operations must restore ownership or abort. (#533) (#544)
  • Clarified the aliasing requirements of unsafe raw-access, force-unlock, and guard-construction APIs in lock_api. (#533)
  • Guard unlocked and unlocked_fair operations now abort if re-locking panics. Default raw-lock bump implementations also abort if re-locking panics. (#533)
  • Guard with_upgraded operations abort if raw upgrading or downgrading panics, preserving continuous lock ownership. (#544)
  • Parking-lot operations in parking_lot_core are now guaranteed to never unwind. (#533)
  • Documented that parking-lot-based synchronization primitives must not be used

... (truncated)

Changelog

Sourced from parking_lot's changelog.

0.13.0 (parking_lot), 0.10.0 (parking_lot_core), 0.5.0 (lock_api) - 2026-10-21

  • Signficantly improved Mutex and RwLock performance under contention by deferring waking up parked threads until after the lock is released. (#545)
  • Added per-acquisition state to lock_api raw locks. RawMutex::Guard replaces GuardMarker; rwlocks have separate SharedGuard, ExclusiveGuard, and UpgradableGuard types. Unlock operations consume this state, while upgrade and downgrade operations return replacement state. Bump and raw condition-variable waits borrow and update the state. Consuming operations must release their acquisition on unwind; borrowing operations must restore ownership and valid state, or abort if restoration fails. (#544)
  • Raised the MSRV to Rust 1.95 and upgraded all crates to edition 2024. (#533)
  • Removed the hardware-lock-elision feature. (#533)
  • Removed automatic eventual fairness. Fair unlocking remains available through the explicit fair-unlock APIs. This removes UnparkResult::be_fair. (#533)
  • Removed the no-op lock_api/nightly feature. (#533)
  • Removed the legacy lock_api const_new methods and the redundant parking_lot const_* constructor functions; the corresponding new methods can be called in constant contexts. (#533)
  • Replaced the recursive read methods on RwLock with a dedicated reader-biased RecursiveRwLock type. The RawRwLockRecursive and RawRwLockRecursiveTimed extension traits have been removed from lock_api. (#533)
  • Added Once::new_completed for constructing a Once in the completed state. (#520)
  • Added Once::{is_completed, wait, wait_force} and the corresponding OnceState query methods. (#533)
  • Made additional lock, timeout, parking, and spin-wait accessors usable in constant contexts. (#533)
  • Added into_inner_with_raw to lock_api's Mutex, RwLock, and ReentrantMutex. (#524)
  • Added RawCondvar, RawCondvarTimed, and the generic Condvar wrapper to lock_api, and implemented parking_lot::Condvar using them. Custom raw condition variables may allow spurious wakeups; their notification methods must then return false or 0. parking_lot::Condvar still guarantees no spurious wakeups and exact notification counts. (#523) (#533)
  • Corrected the Send and Sync bounds of lock guards in lock_api. (#533)
  • Made RawMutex::is_locked and RawRwLock::{is_locked, is_locked_exclusive} required methods. (#533)
  • Renamed MappedRwLockReadGuard::try_map_or_else to try_map_or_err. (#533)
  • Clarified the safety requirements of raw lock implementations, including acquire/release synchronization, moving or dropping a locked raw lock, preserving the original lock mode on a failed upgrade, and stable thread IDs. Acquisitions may unwind without leaving a new acquisition held; consuming guard operations release their acquisition on unwind, while bump and wait operations must restore ownership or abort. (#533) (#544)
  • Clarified the aliasing requirements of unsafe raw-access, force-unlock, and guard-construction APIs in lock_api. (#533)
  • Guard unlocked and unlocked_fair operations now abort if re-locking panics. Default raw-lock bump implementations also abort if re-locking panics. (#533)
  • Guard with_upgraded operations abort if raw upgrading or downgrading panics, preserving continuous lock ownership. (#544)
  • Parking-lot operations in parking_lot_core are now guaranteed to never unwind. (#533)

... (truncated)

Commits
  • 1a5c3dd Update changelog
  • ec07063 chore: release
  • f369d24 Merge pull request #538 from napi-rs/wasi-threads-parker
  • 2f4103f Remove the WASI backend note from stable restrictions
  • a3e8717 Reuse existing CI jobs for WASI coverage
  • c2bfc7b Merge pull request #549 from Amanieu/fix-l4re-condvar-clock
  • 696f28b Don't use pthread_condattr_setclock on L4RE
  • 52941c0 Share the libc dependency between Unix and WASI
  • 4fde6a7 Align the Rust setup action with existing workflows
  • f0ce547 Reuse the pthread backend for WASI on stable
  • Additional commits viewable in compare view

Updates smallvec from 1.16.3 to 1.16.4

Release notes

Sourced from smallvec's releases.

v1.16.4

What's Changed

Full Changelog: smallvec/smallvec@v1.16.3...v1.16.4

Commits

Updates vt100 from 0.17.0 to 0.18.1

Changelog

Sourced from vt100's changelog.

[0.18.1] - 2026-10-19

Fixed

  • actually release the intended changes that were supposed to be in 0.18.0

[0.18.0] - 2026-10-18

Added

  • Screen::contents_formatted_basic, which is like Screen::contents_formatted, but restricts escape sequences to SGR escapes only, and control characters to '\n'.
  • Screen::write_contents_formatted_basic, like Screen::contents_formatted_basic but writes to any type implementing std::fmt::Write instead of returning a String.
  • Callbacks::on_scroll, called when a row scrolls off the top of the scrollback. This enables capturing terminal output in a streaming fashion. Currently this can only be used to obtain the row contents in the "basic formatted" style (the same returned by Screen::contents_formatted_basic).
  • Parser::DEFAULT_ROWS and Parser::DEFAULT_COLS, set to 24 and 80 (the same already used by Parser::default). These have type NonZeroU16.
  • Parser::set_size, which is like Screen::set_size but calls the on_scroll callback when a row is pushed off the top of scrollback (which is now possible due to the other set_size changes).
  • Parser::screen_and_callbacks_mut, which returns mutable references to both the screen and callbacks object at once. This was not possible with the existing methods.
  • capture::basic_formatted_to_plain, which converts a basic formatted capture (as returned by Screen::contents_formatted_basic) into a plain text one without allocating.
  • capture::basic_formatted_rows, which splits a basic formatted capture into individual rows without allocating.
  • capture::basic_formatted_to_plain_indexed, which is like capture::basic_formatted_to_plain, but also includes the original index of each plain text substring.

Changed

  • Bumped MSRV to 1.85 and edition to 2024

  • Parser::new and Screen::set_size now take NonZeroU16s instead of u16s. Passing 0 for rows or cols was not supported and resulted in panics. Additionally, Screen::size now returns NonZeroU16s.

  • The following methods of Screen now return/yield strings rather than byte vectors:

    • attributes_formatted
    • contents_diff
    • contents_formatted
    • cursor_state_formatted
    • input_mode_diff

... (truncated)

Commits
  • fb0f54e changelog and version bump
  • b88a5a1 a few tweaks to github actions
  • c20819d feat: add capture::basic_formatted_to_plain_indexed (#38)
  • 17965e8 perf: trim trailing blank cells from scrollback rows (#36)
  • a87517b feat: make vertical resizes more closely match real terminal emulators even w...
  • 33abc97 feat: change behavior of set_size (#31)
  • 46d1dfb feat: add Parser::screen_and_callbacks_mut (#29)
  • 04d933f feat: add basic formatted capture utilities, fix: fix handling of triple-widt...
  • 1102dff feat: make Screen::size return NonZeroU16s (#26)
  • 32e8a3e fix: respect alternate screen in Screen::contents_formatted_basic (#24)
  • Additional commits viewable in compare view

Updates roxmltree from 0.21.1 to 0.21.2

Changelog

Sourced from roxmltree's changelog.

[0.21.2] - 2026-10-24

Fixed

  • Stack overflow when parsing deeply nested elements. Element content is now parsed iteratively instead of recursing once per nesting level.
Commits
  • b04f75f Bump version for maintenance release.
  • 3f5c78d Parse element content iteratively
  • e8a27a7 Fix a typo in and reword for clarity the docstring for EntityResolver
  • See full diff in compare view

Updates http-cache-reqwest from 1.0.0-alpha.9 to 1.0.0-alpha.10

Commits

Updates eframe from 0.36.2 to 0.37.0

Release notes

Sourced from eframe's releases.

0.37.0 - Colored emojis! 🚀

egui is an easy-to-use immediate mode GUI for Rust that runs on both web and native.

Try it now: https://www.egui.rs/

egui development is sponsored by Rerun, a startup building an SDK for visualizing streams of multimodal data.

Highlights ✨

Emoji and glyph support

egui can now render any glyph that is supported on your system, including colored emojis and non-Latin scripts.

To enable this, the integration has to use one of two APIs:

  • Context::add_glyph_rasterizer(GlyphRasterizer): a GlyphRasterizer renders a single glyph. eframe uses this on web to render individual glyphs to an off-screen canvas #8490, #8545.
  • Context::add_font_provider(Arc<dyn FontProvider>): lets egui find and load whole fonts at runtime. Native eframe uses this through the new egui_system_font_provider crate, which lists system fonts with fontique #8512.

Completion popup

We've added a new CompletionPopup widget that adds autocomplete to a TextEdit. You can use it e.g. to add emoji selection like in discord:

Screen.Recording.2026-10-15.at.16.05.41.mov

Experimental theme customizations

This release adds a theme plugin system #8153 by @​AdrienZianne. Enable the new experimental feature flag, and there will be a new StyleProvider trait, which can be used to customize visuals for a widget based on the provided classes.

/// Implement the trait for each Widget you'd like to customize
impl StyleProvider<ButtonStyle> for MyTheme {
  fn style(&mut self, args: &StyleArgs<'_>) -> ButtonStyle {
    // You could construct ButtonStyle from scratch, or extend eguis built in style:
    let mut style: ButtonStyle = DefaultStyle.style(args);
    if args.has_class("primary") {
      style.atom_layout.frame.fill = hex_color!("#FF0000");
    }
    style
  }
}
/// Register all your custom style providers
fn init(ctx: &Context) {
ctx.add_widget_theme::<ButtonStyle>(MyTheme);
</tr></table>

... (truncated)

Changelog

Sourced from eframe's changelog.

0.37.0 - Colored emojis! 🚀

Highlights ✨

Emoji and glyph support

egui can now render any glyph that is supported on your system, including colored emojis and non-Latin scripts.

To enable this, the integration has to use one of two APIs:

  • Context::add_glyph_rasterizer(GlyphRasterizer): a GlyphRasterizer renders a single glyph. eframe uses this on web to render individual glyphs to an off-screen canvas #8490, #8545.
  • Context::add_font_provider(Arc<dyn FontProvider>): lets egui find and load whole fonts at runtime. Native eframe uses this through the new egui_system_font_provider crate, which lists system fonts with fontique #8512.

Completion popup

We've added a new CompletionPopup widget that adds autocomplete to a TextEdit. You can use it e.g. to add emoji selection like in discord:

Screen.Recording.2026-10-15.at.16.05.41.mov

Experimental theme customizations

This release adds a theme plugin system #8153 by @​AdrienZianne. Enable the new experimental feature flag, and there will be a new StyleProvider trait, which can be used to customize visuals for a widget based on the provided classes.

/// Implement the trait for each Widget you'd like to customize
impl StyleProvider<ButtonStyle> for MyTheme {
  fn style(&mut self, args: &StyleArgs<'_>) -> ButtonStyle {
    // You could construct ButtonStyle from scratch, or extend eguis built in style:
    let mut style: ButtonStyle = DefaultStyle.style(args);
    if args.has_class("primary") {
      style.atom_layout.frame.fill = hex_color!("#FF0000");
    }
    style
  }
}
/// Register all your custom style providers
fn init(ctx: &Context) {
ctx.add_widget_theme::<ButtonStyle>(MyTheme);
ctx.add_widget_theme::<CheckboxStyle>(MyTheme);
// ...
}

Record videos of integration tests

Reading an integration test to understand what its doing can be challenging, so we've added a egui_kittest/video feature that records a mp4 video from it, using ffmpeg! Enable it and pass EGUI_KITTEST_RECORD=1 or EGUI_KITTEST_RECORD=open, and a video of the test will be recorded. This is an example from one of our more complex...

Description has been truncated

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Nov 1, 2026
@moq-bot moq-bot Bot added the quest:merge label Nov 1, 2026
@moq-bot
moq-bot Bot enabled auto-merge (squash) November 1, 2026 14:26

@kixelated kixelated left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated review by review (OpenAI)

Reviewed commit: 6033cff.

No actionable runtime/security bugs identified in the inspected dependency changes. Direction: routine patch updates are reasonable, but splitting the breaking syn, egui/eframe and vt100 upgrades from the patch refresh would make this easier to validate. In particular, the studio still uses egui_dock 0.21 (egui 0.36), and the macro implementation still uses syn 2 APIs. These compiler-detectable migration issues are left to the build gate, per REVIEW.md, not duplicated as inline findings.

Verification: static inspection of manifests, dependency graph, relevant consumers and upstream GitHub release notes only. No Cargo build, tests, hardware or cross-platform checks run; this is not a passing-build claim or an exhaustive audit of upstream changes.

(Written by OpenAI)

@moq-bot
moq-bot Bot disabled auto-merge November 1, 2026 15:26
@moq-bot moq-bot Bot removed the quest:merge label Nov 1, 2026
@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

quest land removed this pull request from the queue: the batch check failed (exit 101).

 * [new branch]          release-v0.32.x             -> release-v0.32.x
 * [new branch]          release-v0.6.x              -> release-v0.6.x
 * [new branch]          seperate-backends           -> seperate-backends
 * [new branch]          uniffi-309-trait-interfaces -> uniffi-309-trait-interfaces
 * [new branch]          uniffi-cargo-subcommands    -> uniffi-cargo-subcommands
 * [new branch]          use-updated-docker          -> use-updated-docker
 * [new branch]          vendor-sync-2026-10-31      -> vendor-sync-2026-10-31
 * [new ref]             refs/pull/1/head            -> refs/pull/1/head
 * [new ref]             refs/pull/1/merge           -> refs/pull/1/merge
 * [new tag]             0.26.0                      -> 0.26.0
 * [new tag]             0.29.4                      -> 0.29.4
 * [new tag]             checkpoint                  -> checkpoint
 * [new tag]             docker-v1                   -> docker-v1
 * [new tag]             github-show                 -> github-show
 * [new tag]             push                        -> push
 * [new tag]             v0.10.0                     -> v0.10.0
 * [new tag]             v0.11.0                     -> v0.11.0
 * [new tag]             v0.12.0                     -> v0.12.0
 * [new tag]             v0.13.0                     -> v0.13.0
 * [new tag]             v0.13.1                     -> v0.13.1
 * [new tag]             v0.14.0                     -> v0.14.0
 * [new tag]             v0.14.1                     -> v0.14.1
 * [new tag]             v0.15.1                     -> v0.15.1
 * [new tag]             v0.16.0                     -> v0.16.0
 * [new tag]             v0.17.0                     -> v0.17.0
 * [new tag]             v0.18.0                     -> v0.18.0
 * [new tag]             v0.19.0                     -> v0.19.0
 * [new tag]             v0.19.1                     -> v0.19.1
 * [new tag]             v0.19.2                     -> v0.19.2
 * [new tag]             v0.19.3                     -> v0.19.3
 * [new tag]             v0.19.4                     -> v0.19.4
 * [new tag]             v0.19.5                     -> v0.19.5
 * [new tag]             v0.19.6                     -> v0.19.6
 * [new tag]             v0.20.0                     -> v0.20.0
 * [new tag]             v0.21.0                     -> v0.21.0
 * [new tag]             v0.21.1                     -> v0.21.1
 * [new tag]             v0.22.0                     -> v0.22.0
 * [new tag]             v0.23.0                     -> v0.23.0
 * [new tag]             v0.24.0                     -> v0.24.0
 * [new tag]             v0.24.1                     -> v0.24.1
 * [new tag]             v0.24.2                     -> v0.24.2
 * [new tag]             v0.24.3                     -> v0.24.3
 * [new tag]             v0.25.0                     -> v0.25.0
 * [new tag]             v0.25.1                     -> v0.25.1
 * [new tag]             v0.25.2                     -> v0.25.2
 * [new tag]             v0.25.3                     -> v0.25.3
 * [new tag]             v0.26.0                     -> v0.26.0
 * [new tag]             v0.26.1                     -> v0.26.1
 * [new tag]             v0.27.0                     -> v0.27.0
 * [new tag]             v0.27.1                     -> v0.27.1
 * [new tag]             v0.27.2                     -> v0.27.2
 * [new tag]             v0.27.3                     -> v0.27.3
 * [new tag]             v0.28.0                     -> v0.28.0
 * [new tag]             v0.28.1                     -> v0.28.1
 * [new tag]             v0.28.2                     -> v0.28.2
 * [new tag]             v0.28.3                     -> v0.28.3
 * [new tag]             v0.29.0                     -> v0.29.0
 * [new tag]             v0.29.1                     -> v0.29.1
 * [new tag]             v0.29.2                     -> v0.29.2
 * [new tag]             v0.29.3                     -> v0.29.3
 * [new tag]             v0.29.4                     -> v0.29.4
 * [new tag]             v0.29.5                     -> v0.29.5
 * [new tag]             v0.30.0                     -> v0.30.0
 * [new tag]             v0.31.0                     -> v0.31.0
 * [new tag]             v0.31.1                     -> v0.31.1
 * [new tag]             v0.31.2                     -> v0.31.2
 * [new tag]             v0.32.0                     -> v0.32.0
 * [new tag]             v0.32.1                     -> v0.32.1
 * [new tag]             v0.32.2                     -> v0.32.2
 * [new tag]             v0.4.0                      -> v0.4.0
 * [new tag]             v0.5.0                      -> v0.5.0
 * [new tag]             v0.6.0                      -> v0.6.0
 * [new tag]             v0.6.1                      -> v0.6.1
 * [new tag]             v0.7.0                      -> v0.7.0
 * [new tag]             v0.7.1                      -> v0.7.1
 * [new tag]             v0.7.2                      -> v0.7.2
 * [new tag]             v0.8.0                      -> v0.8.0
 * [new tag]             v0.9.0                      -> v0.9.0
derivation evaluated to /nix/store/qr5r8nr08pg6f7lmsq9ma8ywnajhxk73-moq-relay-0.17.2.drv
checking derivation packages.x86_64-linux.default...
derivation evaluated to /nix/store/m410simnhpz4q43n6qjvwhnri5261nky-moq-all.drv
checking derivation packages.x86_64-linux.uniffi-bindgen-dart...
derivation evaluated to /nix/store/1v1hdl7dhiwdis0y2lmh6vjx149is362-uniffi-bindgen-dart-0.3.1-kixelated.6+v0.32.0.drv
checking derivation packages.x86_64-linux.uniffi-bindgen-cpp...
derivation evaluated to /nix/store/im9pz4z9gbnxq8cgg736sqc7d5y07nc3-uniffi-bindgen-cpp-0.11.0-kixelated.7+v0.32.2.drv
checking derivation packages.x86_64-linux.moq...
derivation evaluated to /nix/store/6xjfh41yjd4w7iqn20gsq95rqmgy1irc-moq-cli-0.14.2.drv
checking derivation packages.x86_64-linux.moq-cli...
derivation evaluated to /nix/store/hv61q4ncyjdmv18plpyi91gajc3k7n0z-moq.drv
checking derivation packages.x86_64-linux.moq-bench...
derivation evaluated to /nix/store/8cvr10hja6bdmncgl87v37k1x4x5qxv3-moq-bench-0.0.1.drv
checking derivation packages.x86_64-linux.moq-boy...
error: interrupted by the user
ci: check rs failed
ci: seconds per module
    19  check rs (failed)
    19  check flake (cancelled)
    19  check markdown (cancelled)
    20  wall time
error: recipe `ci` failed on line 107 with exit code 101

.

@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

codex / Codex land fixer: The syn 2-to-3 upgrade in rs/kio/macros/Cargo.toml breaks rs/kio/macros/src/lib.rs:738: VisitMut::visit_type_bare_fn_mut and syn::TypeBareFn are unavailable (E0407/E0425); base has no migration.. Recommendation: Split or defer the incompatible dependency upgrades, or implement and review the syn 3 API migration and validate the remaining upgrades before requeueing.

-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.53.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1"
-
 [[package]]
 name = "windows_x86_64_msvc"
 version = "0.42.2"
@@ -12864,12 +12899,6 @@ version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
 
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.53.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650"
-
 [[package]]
 name = "winit"
 version = "0.30.13"
@@ -12882,7 +12911,7 @@ dependencies = [
  "bitflags 2.13.2",
  "block2 0.5.1",
  "bytemuck",
- "calloop 0.13.0",
+ "calloop",
  "cfg_aliases",
  "concurrent-queue",
  "core-foundation 0.9.4",
@@ -12904,7 +12933,7 @@ dependencies = [
  "redox_syscall 0.4.1",
  "rustix 0.38.44",
  "sctk-adwaita",
- "smithay-client-toolkit 0.19.2",
+ "smithay-client-toolkit",
  "smol_str",
  "tracing",
  "unicode-segmentation",
@@ -12969,6 +12998,24 @@ version = "0.57.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1ebf944e87a7c253233ad6766e082e3cd714b5d03812acc24c318f549614536e"
 
+[[package]]
+name = "wl-clipboard-rs"
+version = "0.9.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "959c7ac3b8afde864f7a7448ac16f29b2b83350b7eccbf77fb781c3999aa6848"
+dependencies = [
+ "libc",
+ "log",
+ "os_pipe",
+ "rustix 1.1.5",
+ "thiserror 2.0.21",
+ "tree_magic_mini",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-protocols",
+ "wayland-protocols-wlr",
+]
+
 [[package]]
 name = "wmi"
 version = "0.18.4"

exec
/bin/bash -lc "python3 - <<'PY'
import json, subprocess
from pathlib import Path
result = [
 {'number':7565,'action':'requeue','reason':'healthy; action-pin-only update is unrelated to the deterministic syn 3 compilation failure in PR #7566'},
 {'number':7566,'action':'handback','diagnosis':'The syn 2-to-3 upgrade in rs/kio/macros/Cargo.toml breaks rs/kio/macros/src/lib.rs:738: VisitMut::visit_type_bare_fn_mut and syn::TypeBareFn are unavailable (E0407/E0425); base has no migration.','recommendation':'Split or defer the incompatible dependency upgrades, or implement and review the syn 3 API migration and validate the remaining upgrades before requeueing.'}
]
p = Path('quest-land-result.json')
p.write_text(json.dumps(result, indent=2)+'\\n')
assert json.loads(p.read_text()) == result
assert subprocess.check_output(['git','rev-parse','pr-7565'], text=True).strip() == '7f23a5d44188196542e61b4f0361ee2a5bd20c6b'
assert subprocess.check_output(['git','rev-parse','pr-7566'], text=True).strip() == '6033cffc59361406f674a8a87d644d7401a425ce'
PY
 git status --short" in /work
 succeeded in 0ms:
?? quest-land-result.json

codex
Wrote [quest-land-result.json](/work/quest-land-result.json), left uncommitted.

- #7565: Requeue unchanged; unrelated to the failure.
- #7566: Hand back; the `syn` 3 upgrade breaks macro APIs and requires migration review.

Both PR branches remain unchanged.
tokens used
50,002
Wrote [quest-land-result.json](/work/quest-land-result.json), left uncommitted.

- #7565: Requeue unchanged; unrelated to the failure.
- #7566: Hand back; the `syn` 3 upgrade breaks macro APIs and requires migration review.

Both PR branches remain unchanged.
fixer result written

(written by codex / Codex)

@dependabot dependabot Bot changed the title chore(deps): bump the cargo group with 17 updates chore(deps): bump the cargo group across 1 directory with 17 updates Nov 1, 2026
@dependabot
dependabot Bot force-pushed the dependabot/cargo/cargo-e5baf6af32 branch from 6033cff to f929919 Compare November 1, 2026 17:13
@moq-bot moq-bot Bot added the quest:merge label Nov 1, 2026
@moq-bot
moq-bot Bot enabled auto-merge (squash) November 1, 2026 17:14
@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

quest land: this pull request conflicts with a pull request queued ahead of it, in these files:

  • #6985: Cargo.lock, rs/moq-cli/Cargo.toml

Once one of them lands, this one conflicts with the base and is ejected when its turn comes. Resolve the overlap before then, such as by coordinating with that author, or by merging the base once it lands.

@moq-bot
moq-bot Bot disabled auto-merge November 1, 2026 17:17
@moq-bot moq-bot Bot removed the quest:merge label Nov 1, 2026
@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

quest land removed this pull request from the queue: the batch check failed (exit 101).

 * [new branch]          mutate-names                -> mutate-names
 * [new branch]          properly-dedent-after-parsing -> properly-dedent-after-parsing
 * [new branch]          release-v0.16.x             -> release-v0.16.x
 * [new branch]          release-v0.19.x             -> release-v0.19.x
 * [new branch]          release-v0.20.0             -> release-v0.20.0
 * [new branch]          release-v0.21.x             -> release-v0.21.x
 * [new branch]          release-v0.24.x             -> release-v0.24.x
 * [new branch]          release-v0.25.x             -> release-v0.25.x
 * [new branch]          release-v0.26.x             -> release-v0.26.x
 * [new branch]          release-v0.27.x             -> release-v0.27.x
 * [new branch]          release-v0.28.x             -> release-v0.28.x
 * [new branch]          release-v0.29.x             -> release-v0.29.x
 * [new branch]          release-v0.30.x             -> release-v0.30.x
 * [new branch]          release-v0.31.x             -> release-v0.31.x
 * [new branch]          release-v0.32.x             -> release-v0.32.x
 * [new branch]          release-v0.6.x              -> release-v0.6.x
 * [new branch]          seperate-backends           -> seperate-backends
 * [new branch]          uniffi-309-trait-interfaces -> uniffi-309-trait-interfaces
 * [new branch]          uniffi-cargo-subcommands    -> uniffi-cargo-subcommands
 * [new branch]          use-updated-docker          -> use-updated-docker
 * [new branch]          vendor-sync-2026-10-31      -> vendor-sync-2026-10-31
 * [new ref]             refs/pull/1/head            -> refs/pull/1/head
 * [new ref]             refs/pull/1/merge           -> refs/pull/1/merge
 * [new tag]             0.26.0                      -> 0.26.0
 * [new tag]             0.29.4                      -> 0.29.4
 * [new tag]             checkpoint                  -> checkpoint
 * [new tag]             docker-v1                   -> docker-v1
 * [new tag]             github-show                 -> github-show
 * [new tag]             push                        -> push
 * [new tag]             v0.10.0                     -> v0.10.0
 * [new tag]             v0.11.0                     -> v0.11.0
 * [new tag]             v0.12.0                     -> v0.12.0
 * [new tag]             v0.13.0                     -> v0.13.0
 * [new tag]             v0.13.1                     -> v0.13.1
 * [new tag]             v0.14.0                     -> v0.14.0
 * [new tag]             v0.14.1                     -> v0.14.1
 * [new tag]             v0.15.1                     -> v0.15.1
 * [new tag]             v0.16.0                     -> v0.16.0
 * [new tag]             v0.17.0                     -> v0.17.0
 * [new tag]             v0.18.0                     -> v0.18.0
 * [new tag]             v0.19.0                     -> v0.19.0
 * [new tag]             v0.19.1                     -> v0.19.1
 * [new tag]             v0.19.2                     -> v0.19.2
 * [new tag]             v0.19.3                     -> v0.19.3
 * [new tag]             v0.19.4                     -> v0.19.4
 * [new tag]             v0.19.5                     -> v0.19.5
 * [new tag]             v0.19.6                     -> v0.19.6
 * [new tag]             v0.20.0                     -> v0.20.0
 * [new tag]             v0.21.0                     -> v0.21.0
 * [new tag]             v0.21.1                     -> v0.21.1
 * [new tag]             v0.22.0                     -> v0.22.0
 * [new tag]             v0.23.0                     -> v0.23.0
 * [new tag]             v0.24.0                     -> v0.24.0
 * [new tag]             v0.24.1                     -> v0.24.1
 * [new tag]             v0.24.2                     -> v0.24.2
 * [new tag]             v0.24.3                     -> v0.24.3
 * [new tag]             v0.25.0                     -> v0.25.0
 * [new tag]             v0.25.1                     -> v0.25.1
 * [new tag]             v0.25.2                     -> v0.25.2
 * [new tag]             v0.25.3                     -> v0.25.3
 * [new tag]             v0.26.0                     -> v0.26.0
 * [new tag]             v0.26.1                     -> v0.26.1
 * [new tag]             v0.27.0                     -> v0.27.0
 * [new tag]             v0.27.1                     -> v0.27.1
 * [new tag]             v0.27.2                     -> v0.27.2
 * [new tag]             v0.27.3                     -> v0.27.3
 * [new tag]             v0.28.0                     -> v0.28.0
 * [new tag]             v0.28.1                     -> v0.28.1
 * [new tag]             v0.28.2                     -> v0.28.2
 * [new tag]             v0.28.3                     -> v0.28.3
 * [new tag]             v0.29.0                     -> v0.29.0
 * [new tag]             v0.29.1                     -> v0.29.1
 * [new tag]             v0.29.2                     -> v0.29.2
 * [new tag]             v0.29.3                     -> v0.29.3
 * [new tag]             v0.29.4                     -> v0.29.4
 * [new tag]             v0.29.5                     -> v0.29.5
 * [new tag]             v0.30.0                     -> v0.30.0
 * [new tag]             v0.31.0                     -> v0.31.0
 * [new tag]             v0.31.1                     -> v0.31.1
 * [new tag]             v0.31.2                     -> v0.31.2
 * [new tag]             v0.32.0                     -> v0.32.0
 * [new tag]             v0.32.1                     -> v0.32.1
 * [new tag]             v0.32.2                     -> v0.32.2
 * [new tag]             v0.4.0                      -> v0.4.0
 * [new tag]             v0.5.0                      -> v0.5.0
 * [new tag]             v0.6.0                      -> v0.6.0
 * [new tag]             v0.6.1                      -> v0.6.1
 * [new tag]             v0.7.0                      -> v0.7.0
 * [new tag]             v0.7.1                      -> v0.7.1
 * [new tag]             v0.7.2                      -> v0.7.2
 * [new tag]             v0.8.0                      -> v0.8.0
 * [new tag]             v0.9.0                      -> v0.9.0
error: interrupted by the user
ci: check rs failed
ci: seconds per module
    18  check rs (failed)
    18  check flake (cancelled)
    18  check markdown (cancelled)
    19  wall time
error: recipe `ci` failed on line 107 with exit code 101

.

@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

codex / Codex land fixer: The syn 2-to-3 upgrade in rs/kio/macros/Cargo.toml breaks rs/kio/macros/src/lib.rs:738; reproduced with &#96;cargo doc --locked --no-deps -p kio-macros&#96;: 'error[E0407]: method &#96;visit_type_bare_fn_mut&#96; is . Recommendation: Have the PR author review and implement the syn 3 API migration, or retain syn 2 in a revised dependency update, then rerun the affected workspace build and tests.

 # (thiserror, tracing), so the macro adds no syn build of its own there.
-syn = { version = "2", features = ["full", "visit-mut"] }
+syn = { version = "3", features = ["full", "visit-mut"] }
 
 [dev-dependencies]
 kio = { path = "..", features = ["macros"] }
diff --git a/rs/moq-cli/Cargo.toml b/rs/moq-cli/Cargo.toml
index 7cc92ca64..f2d02a3f7 100644
--- a/rs/moq-cli/Cargo.toml
+++ b/rs/moq-cli/Cargo.toml
@@ -165,7 +165,7 @@ test-env = { path = "../test-env" }
 # exporter drain timeouts instantly instead of waiting on the wall clock.
 tokio = { workspace = true, features = ["test-util"] }
 # Plays the `announced` view's frames on a virtual terminal, scrolling included.
-vt100 = "0.17.0"
+vt100 = "0.18.1"
 
 [target.'cfg(unix)'.dev-dependencies]
 # Sends the signals the `auth serve` shutdown test checks.
diff --git a/rs/moq-studio/Cargo.toml b/rs/moq-studio/Cargo.toml
index 60b373805..4bf597c34 100644
--- a/rs/moq-studio/Cargo.toml
+++ b/rs/moq-studio/Cargo.toml
@@ -40,8 +40,8 @@ anyhow = { workspace = true, features = ["backtrace"] }
 bytes = { workspace = true }
 # The window, its event loop, and the egui integration. `wgpu` is the renderer
 # the compositor shares a device with; no glow, no system font discovery.
-eframe = { version = "0.36", default-features = false, features = ["default_fonts", "wayland", "wgpu", "x11"] }
-egui = "0.36"
+eframe = { version = "0.37", default-features = false, features = ["default_fonts", "wayland", "wgpu", "x11"] }
+egui = "0.37"
 # Docked, rearrangeable panels. 0.21 is the newest release and pins egui 0.36.
 egui_dock = "0.21"
 kio = { workspace = true, features = ["runtime"] }
/nix/store/4klbl675argl2irhl89zrh2n14wilzx9-rust-minimal-1.98.1/bin/cargo
    Updating crates.io index
    Updating git repository `https://github.com/kixelated/uniffi-rs`
 Downloading crates ...
  Downloaded quote v1.0.47
  Downloaded proc-macro2 v1.0.107
  Downloaded unicode-ident v1.0.26
  Downloaded syn v3.0.6
   Compiling proc-macro2 v1.0.107
    Checking unicode-ident v1.0.26
   Compiling quote v1.0.47
    Checking syn v3.0.6
 Documenting kio-macros v0.1.0 (/work/rs/kio/macros)
error[E0407]: method `visit_type_bare_fn_mut` is not a member of trait `VisitMut`
   --> rs/kio/macros/src/lib.rs:738:3
    |
738 |         fn visit_type_bare_fn_mut(&mut self, _: &mut syn::TypeBareFn) {}
    |         ^^^----------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |         |  |
    |         |  help: there is an associated function with a similar name: `visit_type_paren_mut`
    |         not a member of trait `VisitMut`

error[E0425]: cannot find type `TypeBareFn` in crate `syn`
   --> rs/kio/macros/src/lib.rs:738:53
    |
738 |         fn visit_type_bare_fn_mut(&mut self, _: &mut syn::TypeBareFn) {}
    |                                                           ^^^^^^^^^^
    |
   ::: /home/check/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-3.0.6/src/macros.rs:36:22
    |
 36 |         $(#[$attr])* $pub $struct $name $body
    |                      ------------------------ similarly named struct `TypeParen` defined here
    |
help: a struct with a similar name exists
    |
738 -         fn visit_type_bare_fn_mut(&mut self, _: &mut syn::TypeBareFn) {}
738 +         fn visit_type_bare_fn_mut(&mut self, _: &mut syn::TypeParen) {}
    |

Some errors have detailed explanations: E0407, E0425.
For more information about an error, try `rustc --explain E0407`.
error: could not document `kio-macros`

exec
/bin/bash -lc "python3 - <<'PY'
import json
result = [{\"number\":7566,\"action\":\"handback\",\"diagnosis\":\"The syn 2-to-3 upgrade in rs/kio/macros/Cargo.toml breaks rs/kio/macros/src/lib.rs:738; reproduced with "'`cargo doc --locked --no-deps -p kio-macros`: '"'error[E0407]: method "'`visit_type_bare_fn_mut` is not a member of trait `VisitMut`'"' and 'error[E0425]: cannot find type "'`TypeBareFn` in crate `syn`'"'. This requires an API migration beyond the allowed mechanical fixes.\",\"recommendation\":\"Have the PR author review and implement the syn 3 API migration, or retain syn 2 in a revised dependency update, then rerun the affected workspace build and tests.\"}]
with open('quest-land-result.json','w') as f:
    json.dump(result,f,indent=2)
    f.write('\\n')
PY
 git status --short && git rev-parse pr-7566" in /work
 succeeded in 0ms:
?? quest-land-result.json
f92991938ee110b80349a02d968f8e2cb808bdd9

codex
PR 7566 handed back: the syn 3 upgrade breaks `kio-macros`, requiring an API migration outside the allowed mechanical fixes. Reproduced with `cargo doc --locked --no-deps -p kio-macros`.

Branch unchanged. Wrote the diagnosis and recommendation to [quest-land-result.json](/work/quest-land-result.json), left uncommitted.
tokens used
16,918
PR 7566 handed back: the syn 3 upgrade breaks `kio-macros`, requiring an API migration outside the allowed mechanical fixes. Reproduced with `cargo doc --locked --no-deps -p kio-macros`.

Branch unchanged. Wrote the diagnosis and recommendation to [quest-land-result.json](/work/quest-land-result.json), left uncommitted.
fixer result written

(written by codex / Codex)

@kixelated
kixelated enabled auto-merge (squash) November 1, 2026 18:13
@dependabot
dependabot Bot force-pushed the dependabot/cargo/cargo-e5baf6af32 branch from f929919 to 696e698 Compare November 1, 2026 18:14
@moq-bot
moq-bot Bot disabled auto-merge November 1, 2026 18:21
@moq-bot moq-bot Bot removed the quest:merge label Nov 1, 2026
@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

quest land removed this pull request from the queue: its head moved from f929919 to 696e698 after it was queued.

@dependabot
dependabot Bot force-pushed the dependabot/cargo/cargo-e5baf6af32 branch from 696e698 to 35421b8 Compare November 1, 2026 20:10
@moq-bot moq-bot Bot added the quest:merge label Nov 1, 2026
@moq-bot
moq-bot Bot enabled auto-merge (squash) November 1, 2026 20:11
Bumps the cargo group with 17 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [mdns-sd](https://github.com/keepsimple1/mdns-sd) | `0.21.5` | `0.21.6` |
| [noq-proto](https://github.com/n0-computer/noq) | `1.3.0` | `1.4.0` |
| [stun-types](https://github.com/ystreet/stun-proto) | `2.0.3` | `2.0.4` |
| [tokio-util](https://github.com/tokio-rs/tokio) | `0.7.19` | `0.7.20` |
| [usage-rs](https://github.com/jdx/usage) | `7.1.0` | `7.1.2` |
| [uuid](https://github.com/uuid-rs/uuid) | `1.28.0` | `1.29.0` |
| [web-transport-iroh](https://github.com/moq-dev/web-transport) | `0.8.3` | `0.8.4` |
| [parking_lot](https://github.com/Amanieu/parking_lot) | `0.12.5` | `0.13.0` |
| [smallvec](https://github.com/servo/rust-smallvec) | `1.16.3` | `1.16.4` |
| [vt100](https://github.com/doy/vt100-rust) | `0.17.0` | `0.18.1` |
| [roxmltree](https://github.com/RazrFalcon/roxmltree) | `0.21.1` | `0.21.2` |
| [http-cache-reqwest](https://github.com/06chaynes/http-cache) | `1.0.0-alpha.9` | `1.0.0-alpha.10` |
| [eframe](https://github.com/emilk/egui) | `0.36.2` | `0.37.0` |
| [egui](https://github.com/emilk/egui) | `0.36.2` | `0.37.0` |
| [notify](https://github.com/notify-rs/notify) | `8.2.0` | `8.2.1` |
| [webpki-roots](https://github.com/rustls/webpki-roots) | `1.0.10` | `1.0.11` |
| [syn](https://github.com/dtolnay/syn) | `2.0.119` | `3.0.6` |



Updates `mdns-sd` from 0.21.5 to 0.21.6
- [Release notes](https://github.com/keepsimple1/mdns-sd/releases)
- [Changelog](https://github.com/keepsimple1/mdns-sd/blob/main/CHANGELOG.md)
- [Commits](keepsimple1/mdns-sd@v0.21.5...v0.21.6)

Updates `noq-proto` from 1.3.0 to 1.4.0
- [Release notes](https://github.com/n0-computer/noq/releases)
- [Changelog](https://github.com/n0-computer/noq/blob/main/CHANGELOG.md)
- [Commits](n0-computer/noq@noq-proto-v1.3.0...noq-proto-v1.4.0)

Updates `stun-types` from 2.0.3 to 2.0.4
- [Release notes](https://github.com/ystreet/stun-proto/releases)
- [Commits](https://github.com/ystreet/stun-proto/commits)

Updates `tokio-util` from 0.7.19 to 0.7.20
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](tokio-rs/tokio@tokio-util-0.7.19...tokio-util-0.7.20)

Updates `usage-rs` from 7.1.0 to 7.1.2
- [Release notes](https://github.com/jdx/usage/releases)
- [Changelog](https://github.com/jdx/usage/blob/main/CHANGELOG.md)
- [Commits](jdx/usage@v7.1.0...v7.1.2)

Updates `uuid` from 1.28.0 to 1.29.0
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](uuid-rs/uuid@v1.28.0...v1.29.0)

Updates `web-transport-iroh` from 0.8.3 to 0.8.4
- [Release notes](https://github.com/moq-dev/web-transport/releases)
- [Changelog](https://github.com/moq-dev/web-transport/blob/main/release-plz.toml)
- [Commits](moq-dev/web-transport@web-transport-iroh-v0.8.3...web-transport-iroh-v0.8.4)

Updates `parking_lot` from 0.12.5 to 0.13.0
- [Release notes](https://github.com/Amanieu/parking_lot/releases)
- [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md)
- [Commits](Amanieu/parking_lot@parking_lot-v0.12.5...parking_lot-v0.13.0)

Updates `smallvec` from 1.16.3 to 1.16.4
- [Release notes](https://github.com/servo/rust-smallvec/releases)
- [Commits](smallvec/smallvec@v1.16.3...v1.16.4)

Updates `vt100` from 0.17.0 to 0.18.1
- [Changelog](https://github.com/doy/vt100-rust/blob/main/CHANGELOG.md)
- [Commits](doy/vt100-rust@v0.17.0...v0.18.1)

Updates `roxmltree` from 0.21.1 to 0.21.2
- [Changelog](https://github.com/RazrFalcon/roxmltree/blob/master/CHANGELOG.md)
- [Commits](RazrFalcon/roxmltree@v0.21.1...v0.21.2)

Updates `http-cache-reqwest` from 1.0.0-alpha.9 to 1.0.0-alpha.10
- [Commits](https://github.com/06chaynes/http-cache/commits)

Updates `eframe` from 0.36.2 to 0.37.0
- [Release notes](https://github.com/emilk/egui/releases)
- [Changelog](https://github.com/emilk/egui/blob/main/CHANGELOG.md)
- [Commits](emilk/egui@0.36.2...0.37.0)

Updates `egui` from 0.36.2 to 0.37.0
- [Release notes](https://github.com/emilk/egui/releases)
- [Changelog](https://github.com/emilk/egui/blob/main/CHANGELOG.md)
- [Commits](emilk/egui@0.36.2...0.37.0)

Updates `notify` from 8.2.0 to 8.2.1
- [Release notes](https://github.com/notify-rs/notify/releases)
- [Changelog](https://github.com/notify-rs/notify/blob/notify-8.2.1/CHANGELOG.md)
- [Commits](notify-rs/notify@notify-8.2.0...notify-8.2.1)

Updates `webpki-roots` from 1.0.10 to 1.0.11
- [Release notes](https://github.com/rustls/webpki-roots/releases)
- [Commits](rustls/webpki-roots@v/1.0.10...v/1.0.11)

Updates `syn` from 2.0.119 to 3.0.6
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](dtolnay/syn@2.0.119...3.0.6)

---
updated-dependencies:
- dependency-name: eframe
  dependency-version: 0.37.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo
- dependency-name: egui
  dependency-version: 0.37.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo
- dependency-name: http-cache-reqwest
  dependency-version: 1.0.0-alpha.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo
- dependency-name: mdns-sd
  dependency-version: 0.21.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo
- dependency-name: noq-proto
  dependency-version: 1.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo
- dependency-name: notify
  dependency-version: 8.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo
- dependency-name: parking_lot
  dependency-version: 0.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo
- dependency-name: roxmltree
  dependency-version: 0.21.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo
- dependency-name: smallvec
  dependency-version: 1.16.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo
- dependency-name: stun-types
  dependency-version: 2.0.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo
- dependency-name: syn
  dependency-version: 3.0.6
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: cargo
- dependency-name: tokio-util
  dependency-version: 0.7.20
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo
- dependency-name: usage-rs
  dependency-version: 7.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo
- dependency-name: uuid
  dependency-version: 1.29.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo
- dependency-name: vt100
  dependency-version: 0.18.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo
- dependency-name: web-transport-iroh
  dependency-version: 0.8.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo
- dependency-name: webpki-roots
  dependency-version: 1.0.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/cargo/cargo-e5baf6af32 branch from 35421b8 to 762c174 Compare November 1, 2026 22:27
@moq-bot
moq-bot Bot disabled auto-merge November 1, 2026 22:37
@moq-bot moq-bot Bot removed the quest:merge label Nov 1, 2026
@moq-bot

moq-bot Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

quest land removed this pull request from the queue: its head moved from 35421b8 to 762c174 after it was queued.

@dependabot @github

dependabot Bot commented on behalf of github Nov 2, 2026

Copy link
Copy Markdown
Contributor Author

Looks like these dependencies are updatable in another way, so this is no longer needed.

@dependabot dependabot Bot closed this Nov 2, 2026
@dependabot
dependabot Bot deleted the dependabot/cargo/cargo-e5baf6af32 branch November 2, 2026 01:30

This branch had an error being deployed

1 failed deployment
bot — 762c174e Deployed Nov 1, 2026 by dependabot[bot] via Request landing #14977
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant