Major notable changes/updates
- Major api redesign for networking send/recv to make the api easier to use. Polling is now down automatically when needed.
- coro::io_scheduler renamed to coro::scheduler
What's Changed
- peer: add getter functions for the backing net::socket by @ripose-jp in #352
- task_container: add back task_container by @ripose-jp in #354
- Update README.md - fix typo by @borro0 in #358
- Fix issue #360 by @PyXiion in #361
- coro::when_any test failure by @jbaldwin in #363
- coro::shared_mutex use coro::mutex instead of std::mutex by @jbaldwin in #365
- when_any test still flakey by @jbaldwin in #370
- Support tasks with same type and treat task as taskstd::monostate on variadic overload of when_any by @mrizaln in #371
- Properly setup socket on linux by @mhermier-pharmax in #374
- semaphore hang by @jbaldwin in #375
- is_shutdown() by @jbaldwin in #378
- Fix a tiny typo in README.md by @yaoxinliu in #379
- CMake project version now pulled from git describe by @jbaldwin in #382
- Upgrade c-ares to latest (v1.34.5) by @jbaldwin in #386
- semaphore::max() is static by @jbaldwin in #384
- coro::semaphore uses coro::mutex internally by @jbaldwin in #389
- const|mutable buffer concepts less restrictive. by @jbaldwin in #391
- TCP+TLS Client's use mutable|const buffers for send/recv return values by @jbaldwin in #392
- Add accept_socket() to tcp and tls servers by @jbaldwin in #380
- cmake(android): skip linking -lpthread on Android by @dobord in #372
- Executor types remove circular refs by @jbaldwin in #400
- coro::semaphore uses coro::mutex during shutdown by @wence- in #399
- Fix deadlock in ring_buffer and queue shutdown_drain by @wence- in #402
- Store raw pointer in udp::peer and implement copy/move-assignment by @wence- in #403
- Mark private_constructor ctor's as explicit by @jbaldwin in #406
- Fixing UB - inplace construction over a variant by @zlateski in #408
- Bugfix in generator: operator==(generator&&) by @zlateski in #411
- High CPU Usage in io_scheduler with process tasks inline by @jbaldwin in #410
- Remove gcc -fconcepts -fcoroutine flags by @jbaldwin in #366
- test_io_scheduler tag tests correctly by @jbaldwin in #412
- rename task_container -> task_group by @jbaldwin in #418
- task_group::start(task) reintroduce by @jbaldwin in #425
- executor->spawn(joinable)->task by @jbaldwin in #423
- Harmonize code style in awaitable.hpp by @Nevermore1994 in #413
- Replace c-ares deprecated functions by @ozguronsoy in #427
- default_executor fix unused variable by @jbaldwin in #429
- coro:invoke(f, args) for allowing lambda captures in coroutines by @jbaldwin in #430
- Ref/394 kqueue socket shutdown by @tglane in #422
- Allow co_await inside coro::generator by @jbaldwin in #432
- Fix latest gcc and clang warnings by @jbaldwin in #433
- coro::when_all with move only object by @jbaldwin in #438
- Rename io_scheduler to scheduler by @ozguronsoy in #435
- "One
socket_addressto rule them all" & UB fix by @PyXiion in #439 - Fix sync_wait UB and usage with only moveable by @Toilettrauma in #442
- Ring buffer features by @jbaldwin in #443
- Read/Write API by @PyXiion in #436
New Contributors
- @borro0 made their first contribution in #358
- @PyXiion made their first contribution in #361
- @mrizaln made their first contribution in #371
- @mhermier-pharmax made their first contribution in #374
- @yaoxinliu made their first contribution in #379
- @wence- made their first contribution in #399
- @zlateski made their first contribution in #408
- @Nevermore1994 made their first contribution in #413
- @ozguronsoy made their first contribution in #427
- @Toilettrauma made their first contribution in #442
Full Changelog: v0.15.0...v0.16.0