4131 Commits

Author SHA1 Message Date
Alex Crichton
0be8eab260 Merge pull request #213 from tokio-rs/tcp-sock-opts
Expose TCP socket options
2017-05-27 12:19:08 -05:00
Carl Lerche
7acffe4785 Expose TCP socket options 2017-05-27 09:37:25 -07:00
Alan Somers
42f73cb0ec Revert changes to read_ready and add platform::all() 2017-05-21 11:01:48 -06:00
Alan Somers
81beb44565 POSIX AIO support, try 2
Support POSIX AIO, post-01635df .  A concrete implementation will be
added by the mio-aio and tokio-file crates
2017-05-21 10:24:08 -06:00
Alex Crichton
01635dfd56 Merge pull request #208 from alexcrichton/poll-ready
Add PollEvented::poll_ready
2017-05-19 14:29:27 -05:00
Alex Crichton
4dd3d30f2a Add PollEvented::poll_ready
This commit adds a general-purpose method for querying the readiness of a
`PollEvented` type. This new method, `poll_ready`, takes a blanket `mio::Ready`
and tests if any part of it is ready. The purpose of this is to expose
platform-specific events through `PollReady` such as `hup` and `error` events
other than just the platform-agnostic readable/writable events.

The semanatics of this method are:

* The `poll_ready` function takes a mask, and the return value is either
  `Async::Ready` with a subset of these events that are ready or `None` if none
  of them are ready.
* There can be up to two tasks blocked on a `PollEvented`, so we need to pick
  which one is suitable for these new events. Currently all events are routed to
  the `read` task unless the writable bit is set. This is mostly only relevant
  for multi-task usage or if you're manually calling `need_read` and/or
  `need_write`, and hopefully the docs will cover this now.
2017-05-19 11:23:00 -07:00
Alex Crichton
b92fd2d22a Update to latest mio version 2017-05-19 10:00:57 -07:00
Alex Crichton
9e80c82400 Merge pull request #207 from king6cong/master
typo fix
2017-05-12 09:02:10 -05:00
king6cong
4d8d293913 typo fix 2017-05-12 18:00:55 +08:00
Alex Crichton
d723faf2d8 Merge pull request #205 from MarkusJais/master
small typo fixed for io module
2017-05-09 16:13:31 -05:00
Markus Jais
5567ec904e small typo fixed for io module 2017-05-09 21:02:09 +02:00
Alex Crichton
98e99c71c4 Bump to 0.1.7 2017-05-08 16:19:27 -07:00
Alex Crichton
011a7b02f7 Add a test for spawn-in-drop 2017-05-08 16:18:42 -07:00
Alex Crichton
05191f14d7 Merge pull request #204 from fafhrd91/master
drop inner borrow before dropping task
2017-05-08 18:17:32 -05:00
Nikolay Kim
0cfa98566e drop inner borrow before dropping task 2017-05-07 21:17:57 -07:00
Alex Crichton
4545110f45 Merge pull request #201 from munckymagik/update-tokio_rs-links
Update links to pages in the tokio.rs going-deeper section
2017-04-25 14:08:49 -05:00
Dan Munckton
3111443113 Update links to pages in the tokio.rs going-deeper section
See: tokio-rs/website#72
2017-04-25 19:26:43 +01:00
Alex Crichton
29144e6c9b Return NotReady from TcpStream::read_buf 2017-03-27 08:55:30 -07:00
Alex Crichton
8d58b70ce6 Merge pull request #195 from living180/master
Fix logic error in TcpStream.read_buf()
2017-03-27 10:54:18 -05:00
Daniel Harding
f5db8136d7 Fix logic error in TcpStream.read_buf()
If the underlying read_bufs() call returned a WouldBlock error,
TcpStream.read_buf() was erroneously calling self.io.need_write(), when
it should actually call self.io.need_read().
2017-03-27 16:54:56 +02:00
Alex Crichton
45e69bfb61 Return NotReady from TcpStream::write_buf
Closes #194
2017-03-27 07:33:18 -07:00
Alex Crichton
37e2870f04 Limit the scope of borrow_mut in consume_queue
Otherwise we may accidentally hold the borrowed ref cell for too long which can
cause a borrow error.

Closes #190
2017-03-15 22:59:08 -07:00
Alex Crichton
8383e8bf7a Remove deprecated benchmark 2017-03-15 22:38:23 -07:00
Alex Crichton
c80953f078 Bump to 0.1.6 2017-03-15 10:30:10 -07:00
Alex Crichton
8c1838e093 Fix build on beta/nightly
I believe this happened due to a very recent rustc soundness fix!

Closes #189
2017-03-15 10:29:17 -07:00
Alex Crichton
e79f665440 Bump to 0.1.5 2017-03-15 10:06:32 -07:00
Alex Crichton
a8e09c5608 Add the proxy example from #100 2017-03-15 09:59:09 -07:00
Alex Crichton
89fcc96dd4 Migrate to using tokio-io
Deprecate the existing `io` module in this crate entirely.

More details coming soon!

Closes #61
2017-03-15 09:46:54 -07:00
Alex Crichton
8fecf98aef Merge pull request #187 from king6cong/master
comment rewording
2017-03-07 09:08:17 -06:00
Alex Crichton
b0d04e04f2 Merge pull request #174 from asomers/aioprep
Replace magic numbers with constants from mio
2017-03-07 08:58:37 -06:00
king6cong
a67e0d3efb comment rewording 2017-03-07 11:39:51 +08:00
Alan Somers
eb66ff3ad1 Replace more instances of magic numbers 2017-03-06 20:16:12 -07:00
Alex Crichton
5c411c548b Add Debug for {Handle,Remote,Core}
Closes #170
2017-03-06 12:16:09 -08:00
Alan Somers
3b8f1695ff Define constants to replace magic numbers 2017-03-05 14:38:55 -07:00
Alex Crichton
bd75a522c3 Merge pull request #186 from seeekr/patch-1
fix typo in reactor::Core::run docs
2017-03-03 13:27:41 -06:00
Denis Andrejew
1722d8ed45 fix typo in reactor::Core::run docs 2017-03-03 18:38:56 +00:00
Alex Crichton
6a4df9a3b6 Merge pull request #181 from JanZerebecki/fix-typo-core-run
Fix typo in docblock for Core::run()
2017-02-27 08:46:48 -08:00
Jan Zerebecki
e8bd2117d0 Fix typo in docblock for Core::run() 2017-02-27 11:07:19 +01:00
Alex Crichton
b773d55444 Tweak Debug output of PollEvented 2017-02-25 21:43:54 -08:00
Alex Crichton
005994cdea Merge pull request #180 from agrover/debug-for-pollevented
Implement Debug for PollEvented<E> if E implements Debug
2017-02-25 23:42:35 -06:00
Andy Grover
9e3f3caad0 Implement Debug for PollEvented<E> if E implements Debug
Useful, esp since mio::unix::EventedFd already implements Debug.

Signed-off-by: Andy Grover <agrover@redhat.com>
2017-02-24 12:57:05 -08:00
Alex Crichton
6c774756e6 Merge pull request #173 from partim/easybuf-traits
Add PartialOrd, Ord, and Hash to EasyBuf, generalize PartialEq.
2017-02-21 09:07:24 -06:00
Carl Lerche
a3c1796a45 Merge pull request #175 from mayhewj/rename-sender
Rename sender in connect example
2017-02-20 08:26:03 -08:00
Justin Mayhew
c9a8208c8a Rename sender in connect example 2017-02-19 15:02:31 -04:00
Martin Hoffmann
54dcd3a015 Add PartialOrd and Ord to EasyBuf, generalize PartialEq. 2017-02-18 20:30:01 +01:00
Alex Crichton
1bc2ef6aff Merge pull request #168 from Byron/master
Implement PartialEq for EasyBuf
2017-02-13 09:36:43 -06:00
Sebastian Thiel
fe9a798811 Implement PartialEq for EasyBuf 2017-02-13 07:55:26 +01:00
Alex Crichton
a597b962a3 Merge pull request #166 from Byron/master
Allocation in get_mut() always uses 8 * 1024 bytes
2017-02-12 11:27:47 -06:00
Sebastian Thiel
65c5c5241b Test semantics of buffer allocation of get_mut()
* if remaining bytes are smaller then 8 * 1024, allocate 8 * 1024
* otherwise allocate as much as needed to hold the remaining bytes
  without re-allocations.
2017-02-12 09:47:03 +01:00
Sebastian Thiel
e11dd06ead Assure we don't have to allocate while growing the vector
We now have enough capacity to copy the unconsumed portion
of the previous frame.
2017-02-11 10:23:02 +01:00