Skip to content

Releases: SkeletOSS/ccc

v0.60.4

19 Jan 18:01

Choose a tag to compare

Release Notes:

  • Eliminate args from headers. No abbreviations in user facing headers.

v0.60.3

12 Jan 17:15

Choose a tag to compare

Release Notes:

  • Internal documentation updates to test tagging.

v0.60.2

04 Jan 17:04

Choose a tag to compare

Release Notes:

  • Initializing array and buffer backed containers with_capacity zero is valid.

v0.60.1

28 Dec 20:53

Choose a tag to compare

Release Notes:

  • Retrieve str_view with fetch content and remove files from codebase. Relevant for samples and testing.

v0.60.0

17 Dec 22:28

Choose a tag to compare

Release Notes:

v0.51.0

12 Dec 07:04

Choose a tag to compare

Release Notes:

  • Add new initializers.
  • _with_compound_literal and with_context_compound_literal make initializing fixed size containers without allocation permission much simpler.

v0.50.0

09 Dec 23:00

Choose a tag to compare

Release Notes:

  • Rename all remove functions for associative containers to remove_key_value. Avoids name collision when name shortening with stdio.h's remove function.

v0.40.0

05 Dec 00:08

Choose a tag to compare

Release Notes:

  • Holistic review of API naming and style.
  • Add CCC_ prefix to all user facing headers. Per header name shortening available.
  • Types get Leading_snake_case -> CCC_Flat_hash_map -> Flat_hash_map.
  • Constants get UPPER_CASE -> CCC_BITSET_BLOCK_BITS.
  • Functions get snake_case -> CCC_flat_hash_map_entry(...)
  • Abbreviations banned in user facing headers ccc_fpq_push(...) -> CCC_flat_priority_queue_push(...).
  • Contributing document updated with naming conventions and style rationale.
  • All containers given a *_from constructor, similar to Rust's from trait. Uses C99 compound literal arrays to infer types and initialize.
  • All containers with contiguous storage as underlying representations in memory given *_with_capacity constructor, similar to Rust's with_capacity trait.
  • Bitset given consistent range input arguments API to leading and trailing bit functions.
  • Ordered maps given more concise informative names: Tree_map, Array_tree_map, Adaptive_map, Array_adaptive_map. Struct of array design documented more thoroughly.
  • Tests of all containers improved.
  • Containers no longer have self referential fields or sentinel node based implementations. This means the core metadata struct of every container can be safely and trivially copied and returned from stack frames. Users can now organize code how they wish and wrap container initializers in their own constructor functions. Shallow copies can be done at the user's own risk, but are well defined by the container implementations as no self referential fields exist.

v0.39.0

07 Nov 21:16

Choose a tag to compare

Release Notes:

  • Eliminate ccc_key_eq types and comparison functions.
  • Hash maps or any other containers that rely on equality will use internal logic to complete this check allowing the user to always provide one consistent three way comparison function.
  • API is narrowed down and less confusing.

v0.38.3

01 Aug 05:21

Choose a tag to compare