alexcrichton / curl-rust

Rust bindings to libcurl
MIT License
1.01k stars 234 forks source link

Update socket2 requirement from 0.3.16 to 0.4.0 #382

Closed dependabot-preview[bot] closed 3 years ago

dependabot-preview[bot] commented 3 years ago

Updates the requirements on socket2 to permit the latest version.

Changelog

Sourced from socket2's changelog.

0.4.0

Added

  • New all feature: enables API that is not available on all tier 1 platforms.
  • SockRef type: used to create a reference to an existing socket, e.g. std::net::TcpStream, making all methods of Socket available on it.
  • Support for vectored I/O:
    • Socket::recv_vectored, Socket::recv_with_flags.
    • Socket::recv_from_vectored, Socket::recv_from_vectored_with_flags.
    • Socket::send_vectored, Socket::send_vectored_with_flags.
    • Socket::send_to_vectored, Socket::send_to_vectored_with_flags.
    • In the Read and Write implementations.
  • Socket::new_raw, Socket::pair_raw and Socket::accept_raw methods that don't set common flags, such as the close-on-exec flag.
  • Socket::accept4: accept4(2) system call.
  • Socket::sendfile: the sendfile(2) system call.
  • Socket::set_cloexec: set the close-on-exec flag on Unix.
  • Socket::set_no_inherit: set inherit handle flag on Windows.
  • Socket::set_nosigpipe: set SO_NOSIGPIPE on Apple targets.
  • Socket::set_mark and Socket::mark, setting/getting the SO_MARK socket option.
  • Socket::set_cpu_affinity and Socket::cpu_affinity, setting/getting the SO_INCOMING_CPU socket option.
  • Socket::set_mss and Socket::mss, setting/getting the TCP_MAXSEG socket option.
  • Socket::set_freebind and Socket::freebind, setting/getting the IP_FREEBIND socket option.
  • Socket::bind_device and Socket::device, setting/getting the SO_BINDTODEVICE socket option.
  • Adopted Mio's TCP keepalive API:
    • Socket::keepalive_time,
    • Socket::keepalive_interval,
    • Socket::keepalive_retries,
    • Socket::set_tcp_keepalive.
  • Socket::is_listener getting the SO_ACCEPTCONN socket option.
  • Socket::domain getting the SO_DOMAIN socket option.
  • Socket::protocol getting the SO_PROTOCOL socket option.
  • Socket::type getting the SO_TYPE socket option.
  • Domain::for_address: the correct Domain for a std::net::SocketAddr.
  • Type::nonblocking: set SOCK_NONBLOCK.
  • Type::cloexec: set SOCK_CLOEXEC.
  • Type::no_inherit: set HANDLE_FLAG_INHERIT.
  • SockAddr::init: initialises a SockAddr.
  • MaybeUninitSlice type: a version of IoSliceMut that allows the buffer to be uninitialised, used in Socket::recv_vectored and related functions.
  • RecvFlags type: provides additional information about incoming messages, returned by Socket::recv_vectored and related functions.
  • TcpKeepalive type: configuration type for a socket's TCP keepalive parameters.

... (truncated)

Commits
  • b1479ff Release v0.4.0
  • adf32da Use SO_LINGER_SEC for Socket::get/set_linger on macOS
  • 559ba42 Fuchsia doesn't support sendfile
  • 94c32b9 Release v0.4.0-alpha.5
  • ca694de Change Socket::(set_)cpu_affinity to take an immutable reference
  • 4f643fc Release v0.4.0-alpha.4
  • c3b447e Add Socket::(set_)cpu_affinity
  • 33da350 Release v0.4.0-alpha.3
  • 4f22376 tests: add vsock test
  • 07c7b37 unix: add SockAddr::vsock_address()
  • Additional commits viewable in compare view


Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

Dependabot will not automatically merge this PR because this dependency is pre-1.0.0.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Automerge options (never/patch/minor, and dev/runtime dependencies) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)