Releases: stclib/STC
Release v4.2
Version 4.2
- New home! And online single headers for https://godbolt.org
- Library: https://github.com/stclib/STC
- Headers, e.g. https://raw.githubusercontent.com/stclib/stcsingle/main/stc/cvec.h
- Much improved documentation
- Added Coroutines + documentation
- Added new crand.h API & header. Old crandom.h is deprecated.
- Added
c_const_cast()
typesafe macro. - Removed RAII macros usage from examples
- Renamed c_foreach_r =>
c_foreach_rv
- Renamed c_flt_count(i) =>
c_flt_counter(i)
- Renamed c_flt_last(i) =>
c_flt_getcount(i)
- Renamed c_ARRAYLEN() => c_arraylen()
- Removed deprecated c_ARGSV(). Use c_SV()
- Removed c_PAIR
Release v4.1.1
News: Version 4.1.1 Released (Feb 2023)
This is a minor patch to v4.1:
- Renamed
c_ARGSV(sv)
=>c_SV(sv)
: for printing a csview using "%.*s" format. Old name deprecated. Note that lowercasec_sv()
is shorthand for csview_from() / csview_from_n(). - cbits now uses 64-bits signed indices and sizes, to fix max size limit of 0.25 GB on 32-bit platforms.
- Some improved documentation.
Release v4.1
I am happy to finally announce a new release! Major changes:
- A new exciting cspan single/multi-dimensional array view (with numpy-like slicing).
- Signed sizes and indices for all containers. See C++ Core Guidelines by Stroustrup/Sutter: ES.100, ES.102, ES.106, and ES.107.
- Customizable allocator per templated container type.
- Updates on cregex with several new unicode character classes.
- Algorithms:
- crange - similar to boost::irange integer range generator.
- c_forfilter - ranges-like filtering.
- csort - fast quicksort with custom inline comparison.
- Support for uppercase flow-control macro names in ccommon.h.
- Create single header container versions with python script.
- Some API changes in cregex and cstr.
VERSION 3.8
This version has a different API for cstr replace() / find() and u8() functions. Some changes to csview as well.
Adds cregex with documentation, and adds back coption, which was removed some months ago.
VERSION 3.7
Container functions size(), capacity() and empty() now take pointer to containers, See release notes for details in README.md.
VERSION 3.6
Last commit before v3.7. Container functions size(), capacity() and empty() take value parameters, which is changed to const pointer in 3.7.
Release v3.5.1
- Swapped to new cstr (short string optimized, aka SSO). Note that cstr_str(&s) must be used, s.str is no longer usable.
- Added general i_clone template parameter: containers with smart pointers (carc, cbox) can now be correctly cloned.
- Optimized c_default_hash(). Therefore c_hash32() and c_hash64() are removed (same speed).
- Added .._push() and .._emplace() function to all containers to allow for more generic coding.
- Added some examples and benchmarks for SSO and heterogenous lookup comparison with c++20 (string_bench_*.cpp).
Release V2.0 RC New Style
Release candidate for first version of new template instantiation style,
Release v1.3
Final version of "old-style" templating. Version 2.x uses a new way o instantiating templates.
Release v1.2
This release contains a range of bugfixes and enhancements since last release.
- The API going forward will be mostly stable, but not guaranteed to not break old code.
- If API changes should happen, each will be properly documented.
- Added string_view type: csview.