Skip to content

fix(deps): update rust crate compio to 0.19#97

Open
renovate[bot] wants to merge 1 commit into
devfrom
renovate/compio-0.x
Open

fix(deps): update rust crate compio to 0.19#97
renovate[bot] wants to merge 1 commit into
devfrom
renovate/compio-0.x

Conversation

@renovate

@renovate renovate Bot commented May 31, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Type Update Change
compio dependencies minor 0.180.19

Release Notes

compio-rs/compio (compio)

v0.19.1

Compare Source

What's Changed

Full Changelog: compio-rs/compio@v0.19.0...v0.19.1

v0.19.0

Compare Source

We introduced small fixes since v0.19.0-rc.2. Here is the complete change log since v0.18.0.

What's Changed

  • compio-buf
  • compio-io
  • compio-driver
  • compio-executor: this is a new low-level crate to replace async-task. It is not exported from the monocrate.
  • compio-runtime
  • compio-compat: this is a new high-level crate to make compio run on other async runtimes.
  • compio-macros
  • compio-fs
  • compio-net
    • All send* methods pass MSG_NOSIGNAL now (#​835)
    • *Listener::incoming: a Stream to accept incoming connections forever (#​747, #​759)
    • TcpSocket & UnixSocket: new socket types for convenience (#​817)
    • Multishot IO (#​830, #​838)
    • Socket state support (experimental): *Stream::sock_nonempty to indicate whether there's more data internally to read. Only available on io-uring (#​861)
    • disconnect method on Windows (#​887)
    • nonempty handling for accept (#​906)
    • Expose recvmsg return flags (#​935)
  • compio-signal
    • This crate becomes runtime-agnostic (#​797)
    • The signalfd-based implementation has been removed (#​794)
  • compio-tls
  • compio-ws
    • futures traits compatibility (#​875)
  • compio-log
    • The input params are checked even if enable_log is not enabled. This will reduce some warnings on unused variables.

Migration guide

  • compio-io
    • The managed IO traits don't allow associating the buffer pool types now. The implementors are required to manage their buffer pool implicitly.
    • AsyncStream require the inner stream to implement Splittable now. It is true for socket streams and pipes. TLS and WebSocket streams are futures-compatible already and don't need to be wrapped inside AsyncStream.
  • compio-driver
    • Each OpCode is associated with a Control type, which keeps the references to the fields inside the opcode. It will be dropped after the opcode being completed, and before the opcode being unboxed and returned to the user. The Control type is usually just (), or a custom struct containing typically SysSlice, cmsg, or aiocb. The implementor should fill it inside OpCode::init. The driver ensures that the address of the control instance doesn't change, so that it is able to store self-references.
    • Proactor is always !Send now. Please ensure you're using it in a single thread.
    • Some public APIs require rustix types instead of raw primitives or libc types.
    • About multishot opcodes, please refer to SubmitMulti in compio-runtime for a correct usage.
  • compio-runtime
    • Event has been removed. Please use AsyncFlag from the crate synchrony.
    • There's no spawn_unchecked at all. No alternative for this unsafe method.
    • There's no "notify-always" feature and no need for alternatives.
  • compio-fs
    • On Unix, pipe::anonymous is async now.
    • File doesn't implement AsyncReadMultiAt because io-uring doesn't support it.
  • compio-net
    • SocketOpts has been removed. Use TcpSocket or UnixSocket instead.
    • send_zerocopy is not always faster than send. Please profile your use case for an efficient strategy.
    • recv_msg series methods return ReturnFlag.
    • The owned split types of sockets are themselves.
  • compio-tls
    • TlsStream & MaybeTlsStream are futures-compatible now.
  • compio-ws
    • It's runtime-agnostic by default now. The compio-related functionalities need connect feature to be enabled.
    • WebSocketStream is futures-compatible now.

Full Changelog: compio-rs/compio@v0.18.0...v0.19.0


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


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

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

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