Releases: tokio-rs/tokio
Tokio v1.0.2
Fixed
- io: soundness in
read_to_end
(#3428).
Tokio v1.0.1
This release fixes a soundness hole caused by the combination of RwLockWriteGuard::map
and RwLockWriteGuard::downgrade
by removing the map
function. This is a breaking change, but breaking changes are allowed under our semver policy when they are required to fix a soundness hole. (See this RFC for more.)
Note that we have chosen not to do a deprecation cycle or similar because Tokio 1.0.0 was released two days ago, and therefore the impact should be minimal.
Due to the soundness hole, we have also yanked Tokio version 1.0.0.
Removed
- sync: remove
RwLockWriteGuard::map
andRwLockWriteGuard::try_map
(#3345)
Fixed
- docs: remove stream feature from docs (#3335)
Tokio v1.0.0
Commit to the API and long-term support.
Announcement and more details.
Fixed
- sync: spurious wakeup in
watch
(#3234).
Changed
- io: rename
AsyncFd::with_io()
totry_io()
(#3306) - fs: avoid OS specific
*Ext
traits in favor of conditionally defining the fn (#3264). - fs:
Sleep
is!Unpin
(#3278). - net: pass
SocketAddr
by value (#3125). - net:
TcpStream::poll_peek
takesReadBuf
(#3259). - rt: rename
runtime::Builder::max_threads()
tomax_blocking_threads()
(#3287). - time: require
current_thread
runtime when callingtime::pause()
(#3289).
Removed
- remove
tokio::prelude
(#3299). - io: remove
AsyncFd::with_poll()
(#3306). - net: remove
{Tcp,Unix}Stream::shutdown()
in favor ofAsyncWrite::shutdown()
(#3298). - stream: move all stream utilities to
tokio-stream
untilStream
is added to
std
(#3277). - sync: mpsc
try_recv()
due to unexpected behavior (#3263). - tracing: make unstable as
tracing-core
is not 1.0 yet (#3266).
Added
- fs:
poll_*
fns toDirEntry
(#3308). - io:
poll_*
fns toio::Lines
,io::Split
(#3308). - io:
_mut
method variants toAsyncFd
(#3304). - net:
poll_*
fns toUnixDatagram
(#3223). - net:
UnixStream
readiness and non-blocking ops (#3246). - sync:
UnboundedReceiver::blocking_recv()
(#3262). - sync:
watch::Sender::borrow()
(#3269). - sync:
Semaphore::close()
(#3065). - sync:
poll_recv
fns tompsc::Receiver
,mpsc::UnboundedReceiver
(#3308). - time:
poll_tick
fn totime::Interval
(#3316).
Tokio v0.3.6
Tokio v0.3.5
Tokio v0.3.4
Fixed
- stream:
StreamMap
Default
impl bound (#3093). - io:
AsyncFd::into_inner()
should deregister the FD (#3104).
Changed
- meta:
parking_lot
feature enabled withfull
(#3119).
Added
- io:
AsyncWrite
vectored writes (#3149). - net: TCP/UDP readiness and non-blocking ops (#3130, #2743, #3138).
- net: TCP socket option (linger, send/recv buf size) (#3145, #3143).
- net: PID field in
UCred
with solaris/illumos (#3085). - rt:
runtime::Handle
allows spawning onto a runtime (#3079). - sync:
Notify::notify_waiters()
(#3098). - sync:
acquire_many()
,try_acquire_many()
toSemaphore
(#3067).
Tokio v0.2.23
Maintenance release.
Fixes
- time: report correct error for timers that exceed max duration (#2023)
- time: fix resetting expired timers causing panics (#2587)
- macros: silence
unreachable_code
warning inselect!
(#2678) - rt: fix potential leak during runtime shutdown (#2649)
- sync: fix missing notification during mpsc close (#2854)
Changes
- io: always re-export
std::io
(#2606) - dependencies: update
parking_lot
dependency to 0.11.0 (#2676) - io: rewrite
read_to_end
andread_to_string
(#2560) - coop: reset coop budget when blocking in
block_on
(#2711) - sync: better Debug for Mutex (#2725)
- net: make
UnixListener::poll_accept
public (#2880) - dep: raise
lazy_static
to1.4.0
(#3132) - dep: raise
slab
to0.4.2
(#3132)
Added
- io: add
io::duplex()
as bidirectional reader/writer (#2661) - net: introduce split and
into_split
onUnixDatagram
(#2557) - net: ensure that unix sockets have both
split
andinto_split
(#2687) - net: add
try_recv
/from
&try_send
/to
to UnixDatagram (#1677) - net: Add
UdpSocket::{try_send,try_send_to}
methods (#1979) - net: implement
ToSocketAddrs
for(String, u16)
(#2724) - io: add
ReaderStream
(#2714) - sync: implement map methods (#2771)
Tokio v0.3.3
Tokio v0.3.2
Tokio v0.3.1
This release fixes a use-after-free in the IO driver. Additionally, the read_buf
and write_buf
methods have been added back to the IO traits, as the bytes crate
is now on track to reach version 1.0 together with Tokio.