Skip to content

Releases: biojppm/c4core

Release 0.4.0

Choose a tag to compare

@github-actions github-actions released this 05 Jun 11:13
f46d6ab
  • PR#167: fixes to substr:
    • .begins_with() and .ends_with() now return false when input length is 0
  • PR#166: fixes to substr and type_name()
    • substr:
      • improve SFINAE rules and overloads
      • add member type value_type
    • type_name():
      • make noexcept
      • return a new dedicated type TypeNameStr. This spares costly include of span.hpp
    • Improve std interop headers
    • Fix: from_chars_first() must use csubstr for the chars parameters
    • clang-tidy fixes with clang-22
  • PR#161 Improve base64 facilities:
    • Move encoding/decoding/validation to low-level functions without abstractions:
      • c4::base64_valid()
      • c4::base64_encode()
      • c4::base64_decode()
    • Change the semantics of base64_decode() to return true when decode succeeds, or false when decode fails or the output buffer is insufficient.
    • Move the formatting facilities to c4/format_base64.hpp:
      • c4::fmt::base64()
      • c4::to_chars(buf, fmt::cbase64())
      • c4::from_chars(buf, fmt::cbase64())
    • Add c4/std/string_view_fwd.hpp

Release 0.3.0

Choose a tag to compare

@github-actions github-actions released this 22 May 13:30
ed246e8
  • PR#162:
    • charconv.hpp:
      • add implementation of to_chars() for raw char pointers
      • improve from_chars() for bool
      • minor simplification of atoi_first() and atou_first()
    • format.hpp:
      • simplify boolalpha() implementation
      • catrs()/catseprs()/formatrs(): resize to capacity before trying
      • fix uncatsep(): force sep as a csubstr, and enforce it
      • cat()/catsep()/format(): add tests to ensure repeated args
      • improve implementation of fmt::left()/fmt::right(). add fmt::center()
    • Improve doxygen comments
  • PR#163:
    • to_chars():
      • ensure char*/const char* (using strlen) overloads accept null pointer
      • add implementation for nullptr_t
  • PR#164:
    • Move aalloc() et al to new hdr/src c4/alloc.hpp
    • Fix shared library exports, which were causing a link error in lld-link on Windows (see rapidyaml#600).
  • PR#165: c4/std/span.hpp missing from amalgamate.py.

Release 0.2.12

Choose a tag to compare

@github-actions github-actions released this 06 May 14:58
eca89ea

PR#158:

  • dump.hpp: fix c4::dump_directly<T> to use remove_cvref<T> such that references and consts are transitively handled.
  • base64 formatting: add wrapper version of from_chars()

Release 0.2.11

Choose a tag to compare

@github-actions github-actions released this 26 Mar 17:18
18543ed
  • Fix #141: incorrect detection of clang-cl (PR#152). Also adds support for Visual Studio 2026.
  • Fix missing value of C4CORE_VERSION in c4coreConfig.cmake (reported in rapidyaml#584).

Release 0.2.10

Choose a tag to compare

@github-actions github-actions released this 13 Mar 14:25
c138727

PR#156:

  • Add traits class c4::is_writeable_string<>
  • c4/std/*.hpp adapters: add missing forward declarations of c4::is_string<>
  • Add default-less csubstr::copy_from() to simplify implementations of to_chars()/from_chars()
  • Minor internal changes in c4::substr
  • Add C++20 std::span<char> and std::span<const char> adapters in new header c4/std/span.hpp

Release 0.2.9

Choose a tag to compare

@github-actions github-actions released this 11 Mar 19:51

PR#154:

  • Add c4::is_string<T> trait in c4/substr.hpp, and appropriate definitions for std::string, std::string_view and std::vector<char>. Default c4::dump_directly<T> to c4::is_string<T>.
  • Minor cleanup to c4::srcloc in c4/error.hpp
  • Minor implementation changes in c4::mem_repeat()
  • Suppress false-positive null-dereference warnings for GCC >6
  • Update fast_float to 8.2.4

Release 0.2.8

Choose a tag to compare

@github-actions github-actions released this 26 Jan 15:05
828c552

Fixes

  • charconv: fix conversion warning (triggered in clang 21)

Release 0.2.7

Choose a tag to compare

@github-actions github-actions released this 30 Sep 07:37
  • enum symbols:
    • remove useless const in return value of c4::esyms()
    • add overload for building from ptr,len
  • dump.hpp: fix implicit typing in implementation of c4::format_dump()
  • utf.hpp: add missing C4_EXPORT to c4::decode_code_point()
  • fix warnings with cmake 4

Release 0.2.6

Choose a tag to compare

@github-actions github-actions released this 11 Apr 00:17
  • PR#150: fix configure with cmake 4.

Release 0.2.5

Choose a tag to compare

@github-actions github-actions released this 15 Feb 10:41
  • PR#149: Fix warnings from -Wundef