Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/tokio-rs/mio

Metal I/O library for Rust.
https://github.com/tokio-rs/mio

Use accept4(2) on platforms that support it

c3da665c0ffa4ac1eede7d41ac3f3fa32fde91d5 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Add non-blocking assertions to smoke tests

Doesn't work on Windows.

53a8af18bce2ede93c39ac4bee13c5a995021822 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Move network related function to its own file in sys::windows

de30449eada74292ac5cb6889a03177eadd4f27a authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
DRY functions in sys::uds

pair, local_addr and peer_addr did the same thing for UnixDatagram and
UnixStream. Now they use ...

5e958ff7b8b3bcb2fc29661e23a3e550b3e670a8 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Change UnixStream to use IoSource

906fc66778660638355542971202a687f856f619 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Remove Option from sys::windows::InternalState.sock_state

3d5523d047ad31eaf9de726b230fceda8c85c687 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Set TcpStream to non-blocking in TcpListener::accept

813702374da18146ce56bd4dad63029e1f8f5eef authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Use Tcp{Stream,Listener}::from_std in more place

71ed7a67bbf239db11fb2d46c88ac82760b96281 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Change TcpListener to use IoSource

3f0bb2fb1ce64a5b5a90f22a3f0cc5dc88ccc4d5 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Change UnixDatagram to use IoSource

e7578e54b4cd22107e4c0228fd62a4a70e5556e1 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Change sys::uds::datagram::bind to imperative style

95ff7755faba0924a7e3fa47d9d1dfd3e14b12d0 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Change TcpStream to use IoSource

807b9cd6829c06a3f835e45c51be408dbcd2691f authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Remove the bytes dev-dependency

The types and traits from the bytes crate were only used in two tests
for the UdpSocket. But a V...

776038347475b48c2a13615ceea51de7e6f35110 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Don't implement event::Source for all type DerefMut<Target = event::Source>

This prevents wrapper types to implement DerefMut and event::Source,
while the inner type also i...

15530d318e113b6c74783f3757ea720db1150aca authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Fix unresolved import on Windows with net features

815b594d55de07065b7bc058f4690eeb904a46d4 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Add IoSource

IoSource is a wrapper around a raw file descriptor or socket that
implements event::Source.

b85e4478151a8d28c54acddbb12d4e940eba1672 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Change IoSource::do_io to be by reference

Rather then mutable reference.

36630c51ac67e20da20611baac9a436c7590aef4 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Fix cfg macro usage for unix::IoSourceState

942b34143ff914f0d54a50213c0b675ca767a6a1 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Fix locking in registering in Windows Selector

The problem is quite subtle. The lock on update_queue was being held by
the call to add the sock...

8efafd5a3db03921a04da175a04a92672d77c474 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Change UdpSocket to use IoSource

52f3f3ef934acc0f27ed3ddc641e4a6462461c19 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Fix shell::IoSourceState on Windows

It needs the (re/de)register methods on IoSourceState.

04280eaf704af2588b559d6300892e03b4843145 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Remove empty line

b5aa439be701f685bb4e0e03b740c1c52840dcb2 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Add shell::IoSourceState

746be494d85551af743ef9e5aa1263668bdcbd29 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Use io::Error::last_os_error in get_base_socket

Using INVALID_SOCKET as i32 was invalid as INVALID_SOCKET had the
maximum value a 64 bit integer...

08714606be5df341c294640aec0f2e296c4773c8 authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Remove the tempdir dev-dependency

tempdir is being deprecated and merged with the tempfile crate. But
instead of reviewing another...

fe38b9373ed06fe44bdc968ccc8cd0cfca9bc2fb authored almost 5 years ago by Thomas de Zeeuw <[email protected]>
Fix clippy warnings

Signed-off-by: Kevin Leimkuhler <[email protected]>

c6143bc3d5b42f066eda01727e13a006950e3a33 authored about 5 years ago by Kevin Leimkuhler <[email protected]>
added a test to check register ops done during a pending poll. (#1220)

Added a test to check register ops done during a pending poll.

Signed-off-by: Daniel Tacalau ...

c165a9dd8f1fe2f6ddaa1e5864d79619626a3371 authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
Added a test to verify cancelling pending poll requests works as expe… (#1222)

Added a test to verify cancelling pending poll requests works as expected.

Test will register...

2225aa67841158e531a1d1ba4dacf49230868791 authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
Format all CI files

Signed-off-by: Kevin Leimkuhler <[email protected]>

194f428fc37884cfb4aa5c0b1b574c440d3b2a45 authored about 5 years ago by Kevin Leimkuhler <[email protected]>
Fix Readme formatting

95bfa8b09caf57a13c264f418280b69a76bbaea5 authored about 5 years ago by Alex Touchet <[email protected]>
Release v0.7.0-alpha.1

79a64241ff0e0062012eea0f15d8b8b42a8efad1 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Remove intra-doc links

Signed-off-by: Kevin Leimkuhler <[email protected]>

843f1dbca771589d4c926056ab4a0e947bf526da authored about 5 years ago by Kevin Leimkuhler <[email protected]>
Add more Registry::reregister tests

360b3fc2a23ec606617c0dc4c30d4a2f4568ff32 authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
Add tcp feature flag to events test

Signed-off-by: Kevin Leimkuhler <[email protected]>

3ebce3e276f58126c25bdf9b606fe4676c0013c1 authored about 5 years ago by Kevin Leimkuhler <[email protected]>
added a test with registry ops on multiple threads

Signed-off-by: Daniel Tacalau <[email protected]>

ee38679cf1e6da36309a0d29f1e2f73395ecd8d0 authored about 5 years ago by Daniel Tacalau <[email protected]>
added specific tests for Events:: methods (#1210)

* added specific tests for Events:: methods

Signed-off-by: Daniel Tacalau <[email protected]>

aad15e0386215d713cfe952c1183337829addffa authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
add set/get tests for remaining UdpSocket setters (#1209)

Signed-off-by: Daniel Tacalau <[email protected]>

a5c5e0ca29bbc0cb7303ddeac27f8e6825c1a240 authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
Introduce default API shim and feature flags for net/OS resources (#1192)

## Motivation

Closes #1118

Mio should be as light as possible and forwards compatible to o...

0ba2ed8bb1e3af999024653d587b9c25f8d4b57c authored about 5 years ago by Kevin Leimkuhler <[email protected]>
Add note to Poll about undefined behavior

Two notes saying it is:

* undefined behavior to register with another poll instance a deregis...

961351e0fca52bfbccb45266e51f20a7e45a1393 authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
add note citing `wepoll` to README (#1188)

e89eb813224bba1b54189df95cb65cb4d1bc242e authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
changes after review

Signed-off-by: Daniel Tacalau <[email protected]>

ad3987812e842f36511da465ce7c2f08b7345dc7 authored about 5 years ago by Daniel Tacalau <[email protected]>
fix for issue #1205, increase event count only for valid events, that is events for sockets which have not been deleted

Signed-off-by: Daniel Tacalau <[email protected]>

17a65f037388219bff21bbf263ea02976c112578 authored about 5 years ago by Daniel Tacalau <[email protected]>
renamed test file to interest, after renaming Interests to Interest

Signed-off-by: Daniel Tacalau <[email protected]>

276bc90af7422a39f2c2d9180a8cf1a547fb4aca authored about 5 years ago by Daniel Tacalau <[email protected]>
added tests for Interest::add

Signed-off-by: Daniel Tacalau <[email protected]>

531c01af98a053271dc55b1f19987e56f455aac7 authored about 5 years ago by Daniel Tacalau <[email protected]>
Move SocketAddr to the net module (#1194)

From the unix module. Even though its a Unix only type it should be
located with the UDS types ...

6d5550a8c1dc30ffe81ce04d3f2b599cf7e36fe1 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Use 0 instead of explicit port in doc tests to avoid possible race conditions when running on CI.

Signed-off-by: Daniel Tacalau <[email protected]>

61fb0f0ff2b2115bcc33081fdd4a707ea2c1630f authored about 5 years ago by Daniel Tacalau <[email protected]>
Removed `try_clone` from `TcpListener`, `TcpStream`, `UdpSocket` (associated

tests were also removed) This api had several limitations . More details in
issue #1074.

On Unix...

634679f79bac80cad44d6407a787f8a5da5e6341 authored about 5 years ago by Daniel Tacalau <[email protected]>
Remove try_clone methods from UDS types

This method had several limitations. try_clone was just a dup, so the behavior
depended on the ...

10232db5ab5cf73901bc923a6dd98a7bae31e725 authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
Remove Mutex from TestEventSource

No longer needed as event::Source's method now take a mutable reference.

0a55a121f0a2646376e062a2ecbbdf3f03902598 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Change event::Source to take a mutable reference

Generally speaking event source shouldn't concurrently need to be
(re/de)-registered. Even thoug...

e5e1baf59178c5a71274720bba22e81e4fcc7a9c authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Remove From<usize> for Token

dac87744817c5c2e48f54eebc8b2fae1798843d1 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Revert reregistering on partial I/O operation

Revert reregistering on partial read/write for TcpStream, introduced in #1137.
Also reverts rer...

bd18f1c013ccb92021a7a01bc9560c0474b80657 authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
Rename Interests to Interest

52047c14ab2f9b62f422a0e030d68136b15bcbc3 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
changed the loop break condition to exit loop only when no events are returned

Signed-off-by: Daniel Tacalau <[email protected]>

f367b0e768498ccf2471e695077fba4a5c950c63 authored about 5 years ago by Daniel Tacalau <[email protected]>
changes after review, added formatted message in the unreachable macro

Signed-off-by: Daniel Tacalau <[email protected]>

99256d7dce63c7999685d321cc6bcd02296920a7 authored about 5 years ago by Daniel Tacalau <[email protected]>
Added error log messages for unreachable conditions

Signed-off-by: Daniel Tacalau <[email protected]>

bbbd09ef2168432791c978e89aa9061f96879de0 authored about 5 years ago by Daniel Tacalau <[email protected]>
resolved warn, remove unused import in tcp_stream test

Signed-off-by: Daniel Tacalau <[email protected]>

5ed0fca079ebf702752ad8d7aeec8035dbbec8fe authored about 5 years ago by Daniel Tacalau <[email protected]>
fixed issue #1080, re-enable failing udp tests on windows (#1167)

* fixed assert arguments order

Signed-off-by: Daniel Tacalau <[email protected]>

* fix issue #...

8603167358f78740f52d99691cd2c8419c42edd0 authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
Fix leaked sock states (#1154)

A reference of the sock state Arc is blocked by a pending AFD poll
request, this reference will ...

2b68a4b22b8b133dceb9dfd266235555a4483af1 authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
Remove use of transmute_copy (#1154)

5554b23be34cae7d0ab3a0aa26a556791d99d014 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Simplify windows SockState reference counting (#1154)

6707055e67e9dae35207a0fd5d2bec3cfb79a8d8 authored about 5 years ago by Bert Belder <[email protected]>
chore: update minimum Rust version to 1.39 (#1172)

22662cbe6dba4258bbea44afb893c4159547d02b authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Change TCP server example port to 9000

Port 13265 was a bit odd, 9000 is more common in examples.

15f7ee025b0864c2109f833c539cf6dbb91f8bda authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Log unexpected event in UDP example

db2597a6a778aef9c5aa98c3a9fa84a3e2f545a5 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Cleanup UDP example

Changes the structure a bit to match the TCP server example. Enables
logging and prints how the ...

a949cd90681e327845939da3c4d224e21c4d1ee6 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Make Clippy stricter

Disallows even more things!

6ac0460151adbd58a397d130f2df025efad754fa authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Remove some redundant clones

039b09c212e08f2984239a2faac813ca5fe46f59 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Ignore some Clippy issues

Its part of the macro, so that Partial::eq can be used.

159a0a30918034b523f975880083233a3d49fdff authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Expose platform details in extended Debug impl for Event

This adds a new virtual field named "details" and exposes the selector
specific event structure....

e26c33d9d12af9200c02f9de41b6ca0a8e87f082 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Reregister TcpStream on partial reads/write on Windows

To emulate edge-triggers.

81b4f6c4e6788e1e6e43e725f5e72d3354ed2667 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Remove assert_err macro from test utils

The unwrap_err function has the same effect.

edbb471b3a4efc1f1bb323b5be4c1621a9977468 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Add checked_write macro the test utilities

Some places checked the return value after a write, but all. This ensure
that all write, send an...

b6f1face0d330ba35394a3a2ce4bcebfca430361 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Replace expect_readiness macro with expect_events

Removing expect_readiness completely. It didn't use the token so it was
unclear what event shoul...

330dc941a947a5f45b480799bcb5bbd6f532ba41 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Remove assert_ok macro from test utils

The unwrap function has the same effect.

c3738ac8ab0ffea8fff5e04c7e2ce6319dd0e778 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Replace Byte with Vec in close_on_drop test

7e416656523a05f5599c7bc01a454789ac5c7786 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Remove slab as test dependency

d594cd8a07e4cec27478ea044c595acb94aa3dd5 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Remote TryWrite and TryRead traits from test utilies

This also removes the echo_server test from the tcp module. All
functionality is tested elsewher...

8ad2c5d60996548cb4b545a628adc64b266cdcc7 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Add expect_read test macro

Testing macro that calls read/recv/peek or recv_from/peek_from and
checks if the received bytes ...

b4bc8f1b7a52ac3c34aafc806338e6c4d1417448 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Add Readiness type to test utilities

Used in the ExpectEvent structure.

1d43c323c17e30cc7a3d811fe6875d2d38aba331 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Link to example and getting started guide in crate docs

3937c09376f3d0d5b8d67b96061b3e0bb6a54b13 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Move most of the crate documentation to README

Thing like the features, non-goals and platforms are moved to the README
in an effort to reduce ...

1146267091915f9f3401bc4674cf1aff1d9b697f authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Add "guide" crate feature

This new feature adds additional documentation in the form of a user
guide.

f8702c2538ae91d89a888492193e5c4d7b4f5080 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Fix type-o's in getting started guide

e668a741a6562f37f44238fe202643156cd90bed authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Add getting started guide

3641f3fe7d52375071465dc4e57bcc53f24386bd authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Always reregister on TcpListener::accept on Windows

Make sure to reregister on successful accept, otherwise READABLE interest won't be generated on ...

7a073b62e5a4609ba491e63a4b25d0f1ef65d3ce authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
Poll should not wait the full timeout

There's no need for poll to wait the full timeout, according to documentation the poll function ...

bbd82672ab5adab7cd68e765810d1d1809b90c46 authored about 5 years ago by Tacalau Daniel Stefan <[email protected]>
Remove the transparent attribute on Event and Interests

For Event is was needed to safety create a pointer to the internal
system event, but this is no ...

ac0515cc9519f228d39bb0d9055955faf7f75f34 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Expand UDS tests (#1143)

A few issues have been opened related to the recently added UDS resources. The
issues are all b...

ff1b9f27ee53f9b86aff4ba11f513b54913bfbe6 authored about 5 years ago by Kevin Leimkuhler <[email protected]>
Fix UnixStream::pair and UnixDatagram::pair on all platforms (#1142)

#1141 Addressed an issue with `UnixStream::pair` and `UnixDatagram::pair`
where the file descri...

cc1fd153af90fa54cdf92560b9f1424b07886969 authored about 5 years ago by Kevin Leimkuhler <[email protected]>
Fix type-o in Events doc

952932aee7faeee2d28b3f9d8fac3a97192da164 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Document require types in sys module

Hopefully this will be useful when porting Mio to another OS or selector
(io_uring anyone?).

3ca01f4123e02812e4452c6485e5b010e6cec82e authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Remove mention of Token(usize::MAX) for internal usage

No longer true.

074285beae3b48f6f4c0c37d8304659205648792 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Small doc cleanups in Registry

8490ad0aa0ceddc707baf122dc56654e0f29084d authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Remove unwrap from examples

And replace it with the try (`?`) operator.

1835c52b4b42835cc31329957a27bfc9c55a53a4 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Small cleanup of Events examples

Don't advocate calling Events::clear before calling Poll::poll as that
is not needed.

fd23ece4c199fa046c56209489e57b54f1ae8bc5 authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Remove size example from Interests

Not an interesting example. Furthermore we don't guarantee that the size
of Interests will alway...

70109ecd652ccfc99677e87638becfa3647d88bb authored about 5 years ago by Thomas de Zeeuw <[email protected]>
Only start IOCTL_AFD_POLL op immediately if another thread is blocked (#1140)

Since it is not possible to modify or synchronously cancel an
IOCTL_AFD_POLL operation, and ther...

6b25a424ef6b5a0027bf645a696b06b181dec307 authored about 5 years ago by Bert Belder <[email protected]>
Fix uds::pair_descriptors() to actually take an output argument as intended (#1141)

This took me a while to figure out. The original symptom I saw was
that registering `UnixStrea...

4ab3c6553ff46caa24faa1dc69f4467f5597a802 authored about 5 years ago by Mario Lang <[email protected]>
Fix UnixListener registration

888a1842afefaaee209407f8591a70e99011709d authored about 5 years ago by Mario Lang <[email protected]>
Run rustfmt and put back unused `env_logger::init` call

45c9f7ea7e8b3167317cfb34dfc2adaa1b43aa1d authored about 5 years ago by Mario Lang <[email protected]>