- scheduling with
basic_scheduler
(#1861). - update
spawn
panic message to specify that a task scheduler is required (#1839). - API docs example for
runtime::Builder
to include a task scheduler (#1841). - general documentation (#1834).
- building on illumos/solaris (#1772).
- panic when dropping
LocalSet
(#1843). - API docs mention the required Cargo features for
Builder::{basic, threaded}_scheduler
(#1858).
- impl
Stream
forsignal::unix::Signal
(#1849). - API docs for platform specific behavior of
signal::ctrl_c
andsignal::unix::Signal
(#1854). - API docs for
signal::unix::Signal::{recv, poll_recv}
andsignal::windows::CtrlBreak::{recv, poll_recv}
(#1854). File::into_std
andFile::try_into_std
methods (#1856).
- API docs for
TcpListener::incoming
,UnixListener::incoming
(#1831).
tokio::task::LocalSet
provides a strategy for spawning!Send
tasks (#1733).- export
tokio::time::Elapsed
(#1826). - impl
AsRawFd
,AsRawHandle
fortokio::fs::File
(#1827).
A major breaking change. Most implementation and APIs have changed one way or another. This changelog entry contains a highlight
- APIs are updated to use
async / await
. - most
tokio-*
crates are collapsed into this crate. - Scheduler is rewritten.
tokio::spawn
returns aJoinHandle
.- A single I/O / timer is used per runtime.
- I/O driver uses a concurrent slab for allocating state.
- components are made available via feature flag.
- Use
bytes
0.5 tokio::codec
is moved totokio-util
.
- Standalone
timer
andnet
drivers are removed, useRuntime
instead current_thread
runtime is removed, usetokio::runtime::Runtime
withbasic_scheduler
instead.
- Bump
tokio-trace-core
version to 0.2 (#1111).
tokio::runtime::Builder::panic_handler
allows configuring handling panics on the runtime (#1055).
- Re-export
tokio::sync::Mutex
primitive (#964).
TypedExecutor
re-export and implementations (#993).
- Propagate trace subscriber in the runtime (#966).
- async-await: track latest nightly changes (#940).
sync::Watch
, a single value broadcast channel (#922).- Async equivalent of read / write file helpers being added to
std
(#896).
- Re-export tokio-sync APIs (#839).
- Stream enumerate combinator (#832).
- Use feature flags to break up the crate, allowing users to pick & choose components (#808).
- Export
UnixDatagram
andUnixDatagramFramed
(#772).
- Fix
Runtime::reactor()
when no tasks are spawned (#721). runtime::Builder
no longer uses deprecated methods (#749).- Provide
after_start
andbefore_stop
configuration settings forRuntime
(#756). - Implement throttle stream combinator (#736).
- runtime: expose
keep_alive
on runtime builder (#676). - runtime: create a reactor per worker thread (#660).
- codec: fix panic in
LengthDelimitedCodec
(#682). - io: re-export
tokio_io::io::read
function (#689). - runtime: check for executor re-entry in more places (#708).
- Fix
tokio-async-await
dependency (#675).
- Fix minimal versions
- Experimental async/await improvements (#661).
- Re-export
TaskExecutor
fromtokio-current-thread
(#652). - Improve
Runtime
builder API (#645). tokio::run
panics when called from the context of an executor (#646).- Introduce
StreamExt
with atimeout
helper (#573). - Move
length_delimited
intotokio
(#575). - Re-organize
tokio::net
module (#548). - Re-export
tokio-current-thread::spawn
in current_thread runtime (#579).
- Extract tokio::executor::current_thread to a sub crate (#370)
- Add
Runtime::block_on
(#398) - Add
runtime::current_thread::block_on_all
(#477) - Misc documentation improvements (#450)
- Implement
std::error::Error
for error types (#501)
- Add
Runtime::block_on
for concurrent runtime (#391). - Provide handle to
current_thread::Runtime
that allows spawning tasks from other threads (#340). - Provide
clock::now()
, a configurable source of time (#381).
- Add asynchronous filesystem APIs (#323).
- Add "current thread" runtime variant (#308).
CurrentThread
: Expose innerPark
instance.- Improve fairness of
CurrentThread
executor (#313).
- Provide timer API (#266)
- Fix build on FreeBSD (#218)
- Shutdown the Runtime when the handle is dropped (#214)
- Set Runtime thread name prefix for worker threads (#232)
- Add builder for Runtime (#234)
- Extract TCP and UDP types into separate crates (#224)
- Optionally support futures 0.2.
- Fix
CurrentThread::turn
to block on idle (#212).
- Introduce Tokio Runtime (#141)
- Provide
CurrentThread
for more flexible usage of current thread executor (#141). - Add Lio for platforms that support it (#142).
- I/O resources now lazily bind to the reactor (#160).
- Extract Reactor to dedicated crate (#169)
- Add facade to sub crates and add prelude (#166).
- Switch TCP/UDP fns to poll_ -> Poll<...> style (#175)
- Doc fixes
- Initial crate released based on RFC.