Releases: agl-alexglopez/ccc
Releases · agl-alexglopez/ccc
v0.21.0
Release Notes:
- Interface Change - Types converted back to unsigned with the help of
ccc_ucount
type for error reporting when returning unsigned integers. - Unsigned integers simplify library internals greatly and relies less on platform implementation specific behavior not supported directly by C standard.
v0.20.1
Release Notes:
- Internal tidy changes.
v0.20.0
Release Notes:
- API name changes for constants
- Consistent and clear error naming enum states.
- Make copy operation more robust for array backed containers.
v0.19.1
Release Notes:
- Internal inlining changes.
v0.19.0
Release Notes:
- BREAKING API CHANGES: - More robust error handling checks across all containers to ensure input is valid and errors reach the user.
- Type consistency changes for signed and unsigned.
size_t
is only used for counting bytes for sizes of objects in memory.ptrdiff_t
is the default indexing, counting, size, and capacity type.- For rationale, read Bjarne Stroustrup's explanation and subsequent explanation in PR #73.
- Ordered map and ordered multimap given seperate headers, no longer sharing
impl_tree.h
.
v0.18.2
Release Notes:
- Clean up unused functions in
impl/
headers and annotate all private.
v0.18.1
Release Notes:
- Internal static visibility and inlining changes with no effect on interface or functionality.
v0.18.0
Release Notes:
- BREAKING CHANGE: -
ccc_tribool
replacesbool
from<stdbool.h>
in all code in the collection.ccc_tribool
offers a third error handling state to clearly communicate to user when bad input or state is provided to a function. Otherwise,ccc_tribool
operates exactly the same asbool
with truthy being 1 and falsey being 0 so no code patterns need to change except for accounting for errors.
- Misc. internal function inline and documentation fixes.
v0.17.0
Release Notes:
- BREAKING: Flat Ordered Map and Flat Realtime Ordered Map have been promoted to handle versions.
- Ordered maps now offer handle stability. Handles are valid regardless of other insertions deletions or resizing until the element at the provided handle is removed by the user.
- Misc. doc fixes and internal naming updates.
v0.16.0
Release Notes:
- BREAKING: Initialization order changed across all containers to be consistent.
- Init order follows a new general pattern for any container.
init(memory_info..., type_info..., specialty_function(s)...,
allocation_info..., aux_data..., capacity..., size...);
- Exact initialization will vary but all follow similar patterns now.
- See docs for more.