Skip to content

Releases: getml/reflect-cpp

v0.19.0

16 Apr 00:25
a70b4ec
Compare
Choose a tag to compare
  • Allow rfl::Box to be copyable, when desired. Thanks to @jmcken8 for this contribution.
  • Change back to tomlplusplus as this library now has a config.cmake on vcpkg.
  • Serialize byte strings as binaries. Thanks to @Altren for this contribution.
  • Add support for std::chrono::duration.
  • Allow the extension of the enum range support. Thanks to @jokla for this contribution.
  • Bugfix in tags. Thanks to @seashell11234455 .
  • Move optionals instead of copying them. Thanks to @jmcken8.

v0.18.0

16 Mar 14:19
c929d3f
Compare
Choose a tag to compare
  • Allow people to use C++-23 std::expected instead of our custom results. Special thanks to @jowillianto for this contribution!
  • Use toml11 instead of tomlplusplus. The reason for this change is that tomlplusplus is difficult to manage as a dependency in vcpkg.
  • Make the reader stricter: Do not allow floating point values to read integers and vice versa. The JSON reader always used to behave like this, but now all formats do.
  • Redesign rfl::Bytestring to better conform to the C++ standard and also as a workaround for a bug in LLVM 18. Thanks to @Altren for flagging and fixing this issue!
  • Support long integers in rfl::Generic. Thanks to @bjia56!
  • Make sure that the resulting JSON schema does not require any fields when rfl::DefaultIfMissing is used.
  • Make sure all textual formats support reading from std::string_view.
  • Bugfix: Added missing imports. Thanks to @AnsiV01 and @filippobrizz.

v0.17.0

06 Jan 18:16
b57a52a
Compare
Choose a tag to compare
  • Support for Avro
  • Support for Cap'n Proto
  • Closer integration with vcpkg and Conan
  • Use jsoncons instead of TinyCBOR for CBOR
  • Add operator== to TaggedUnion
  • Support MinGW
  • Better pointer casts
  • Read std::string_view in the JSON format
  • Add versioning to the shared library

v0.16.0

23 Nov 20:46
Compare
Choose a tag to compare
  • Added support for UBJSON
  • Added a new documentation based on mkdocs (https://rfl.getml.com/)
  • Fixes in the package dependencies
  • Minor changes to various containers

v0.16.0-rc3

23 Nov 20:05
Compare
Choose a tag to compare
v0.16.0-rc3 Pre-release
Pre-release

This is a pre-release.

v0.16.0-rc2

23 Nov 19:53
385241f
Compare
Choose a tag to compare
v0.16.0-rc2 Pre-release
Pre-release

This is a pre-release.

v0.16.0-rc1

23 Nov 15:14
e34440c
Compare
Choose a tag to compare
v0.16.0-rc1 Pre-release
Pre-release

This is a release candidate that is not ready for production use.

v0.15.0

09 Nov 19:50
716de7b
Compare
Choose a tag to compare
  • Speed-ups in compile time: Precompiled headers, more code in .cpp source files, fewer checks for duplicate fields
  • New processors: rfl::UnderlyingEnums, rfl::DefaultIfMissing, rfl::NoExtraFields, rfl::AllowRawPtrs, rfl::AddTagsToVariants
  • Increased maximum number of supported fields to 256
  • Added support for transforming structs to generics
  • More comprehensive testing pipeline
  • Various bugfixes

Thanks to everyone who contributed to this release: @dcorbeil, @Urfoex, @Harry-Chen, @BestITUserEUW, @danielmohansahu, @Altren, @dmikushin, @AnsiV01 (I hope I am not forgetting anyone)

v0.14.1

15 Aug 10:15
b661b61
Compare
Choose a tag to compare
  • Minor bugfixes: Added missing include; clarification in the README; better dependency management

v0.14.0

04 Aug 14:08
d796c8c
Compare
Choose a tag to compare
  • Added the Reflector. Shout out to @BjornSAIM , @DaedieCool and @m-mcgowan for this great contribution.
  • Added rfl::Tuple.
  • Added rfl::Variant.
  • Added support for std::system::filepath.
  • Added rfl::Binary, rfl::Hex and rfl::Oct.
  • Bugfix: Schema validation for size validated fields. Thanks, @Knyukua and @toporov.
  • Bugfix: Size check in the array reader.
  • Bugfix: MSVC support for structs with many fields.