Skip to content

Releases: KonanM/tser

Base class serialization and QOL features

04 Feb 22:49
Compare
Choose a tag to compare

With this release I covered some more use cases, namely the serialization of base classes and I added some convience features.

struct Object : public Point
{
    int idx = 0;
    DEFINE_SERIALIZABLE(Object, tser::base<Point>(this), idx)
}

The first convience feature is being able to directly initialize a BinaryArchive<T>(t) with an object.
The second one to a load an object directly in one line using auto t = tser::load<T>("base64EncodedString") .

Furthermore the tests for the base64encoding were improved and now cover all possible input values.

v1.1

23 Nov 16:41
Compare
Choose a tag to compare

It was requested by PR 5 to only include only <ostream> instead of <iostream> for embedded projects, which totally makes sense. This means you have to include iostream yourself when using std::cout with tser.
Thanks to PR 6 the project is now correctly installable, namespaced and better consumable as CMake project.
Thanks to a nice PR 7 some UB with regards to shifting signed integers was fixed and much better tests added for the varint encoding. This caught also a rare bug that occured when the BinaryArchive buffer was not correctly resized with a bigger than 8 byte varint. On top of that you can now have spaces in the DEFINE_SERIALIZABLE macro.

v1.0

16 Nov 19:29
Compare
Choose a tag to compare
Support streaming operators for the BinaryArchieve