Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a backburner PR for replacing windows-sys with windows crate.
It started as a side effort to update to
windows-sys 0.59
, which immediately caused issues withsocket2
due to peer dependency conflict withwindows-sys
. Upon further inspection, I realized that we don't really usesocket2
for anything but converting between windows native net types and Ruststd::net
types.Now the reasons to go with
windows
instead of lower levelwindows-sys
:SOCKADDR_INET
,SOCKADDR_IN
,SOCKADDR_IN6
,IN_ADDR
,IN6_ADDR
andIP{v4,v6}Address
,SocketAddr
,SocketAddrV4
,SocketAddrV6
windows::core::Result
WIN32_ERROR
can be turned intowindows::core::Result
by callingok()
which removes the need forwin32_err
macrosocket2
from dependencies and only implement a single missing conversion fromSOCKADDR_INET
toSocketAddr
This change is