Finally after nearly two years, a new release of STC! It has lots of improvements, new features and bug fixes. There are a number of breaking changes since the last released version, so make sure to check out the version history. Special thanks to all who contributed with PRs, bug reports and suggestions!
New Features in v5.0**
- New main build system with Meson. Simple Makefile provided as well.
- New sum type (tagged union), included via
algorithm.h
- New single/multi-dimensional generic span type, with numpy-like slicing.
- Coroutines now support structured concurrency and symmetric coroutines.
- Coroutines now support error handling and error recovery.
- Template parameter
i_type
lets you definei_type
,i_key
, andi_val
all in one line (comma separated). - Template parameters
i_keyclass
andi_valclass
to specify types with_drop()
and_clone()
functions defined. - Template parameters
i_keypro
andi_valpro
to specifycstr
,box
andarc
types (users may also define pro-types). - hmap now uses Robin Hood hashing (very fast on clang compiler).
- Several new algorithms added, e.g.
c_filter
(ranges-like). - A lot of improvements and bug fixes.
What's Changed
- add
cco
macro, block style coroutine definition by @liigo in #57 - Merge in backported code from master by @tylov in #63
- Dev43 by @tylov in #65
- Use attribute((unused)) for clang too by @sgraham in #73
- Remove trailing whitespace by @sgraham in #75
- singleheader.py fixes for Windows and newer Python by @sgraham in #74
- Fix issue with cbits_resize overwriting data when shrinking by @thehoustonian in #94
- Fix arc memory leak by @wmww in #82
- Detect Clang and Intel compilers for unused attribute. by @Melkor-1 in #89
- fix some mistake in deq_api.md by @soyoo in #90
- Add meson build system support by @mochaaP in #98
- build/meson: fix building as a subproject by @mochaaP in #100
- ci: add meson build/tests with asan/ubsan/msan by @mochaaP in #101
- build: misc changes by @mochaaP in #111
New Contributors
- @sgraham made their first contribution in #73
- @thehoustonian made their first contribution in #94
- @wmww made their first contribution in #82
- @Melkor-1 made their first contribution in #89
- @soyoo made their first contribution in #90
- @mochaaP made their first contribution in #98
Full Changelog: v4.2...v5.0