Skip to content

cereal v 1.3.0

Compare
Choose a tag to compare
@AzothAmmo AzothAmmo released this 25 Oct 04:45
· 35 commits to master since this release

This is a feature and bug fix release for cereal.

This release contains a few new features, numerous quality of life improvements, and bug fixes. Many of these come from community contributions.

With this release, the develop branch is being removed in favor of a single default branch. This means that tagged releases should be used in favor of trusting the master branch as being stable. The development branch for documentation, gh-pages-develop, is also being removed. This change comes with two small side benefits: pull requests will always be against the correct branch, and it will be easy to see development activity at a glance.

New features include:

  • Deferred serialization for smart pointers (#185)
  • Initial support for C++17 standard library variant and optional (thanks to @arximboldi, #448)
  • Support for std::atomic (thanks to @bluescarni, #277)

Fixes and enhancements include:

  • Vastly improved continuous integration testing (#568, #569)
  • Fixed several issues related to compilation on newer compilers (#579, #587, #515)
  • Fixed warnings with -Wconversion and -Wdocumentation (thanks to @WSoptics, #423)
  • Performance improvements for polymorphic serialization (#354)

Minor fixes and enhancements include:

  • Fixed a bug related to CEREAL_REGISTER_DYNAMIC_INIT with shared libraries (thanks to @m2tm, #523)
  • Avoid unnecessary undefined behavior with StaticObject (thanks to @erichkeane, #470)
  • New version.hpp file describes cereal version (#444)
  • Ability to disable size=dynamic attribute in the XML archive (thanks to @hoensr, #401)

Other Notes

  • The static checking for minimal serialization has been relaxed as there were many legitimate cases it was interfering with (thanks to @h-2, #565)
  • The vs2013 directory has been removed in favor of generating solutions with CMake (#574)

This is not an exhaustive list of changes or individual contributions. See the closed issues for more information.

Want to contribute to cereal?

Open source projects take a considerable amount of time to maintain! Contributions are always appreciated, especially when they can be easily integrated.