degski wrote:
Robert Ramey gave a presentation (Cppcon15 (16?)) regarding the process people go through picking a library. I though it was interesting, because (at the time I did not know RR was the author of the serialization lib), I went through this process and rejected his library for exactly the reasons he pointed out in his presentation, picking cereal (https://uscilab.github.io/cereal/index.html) in stead. A one page manual, header only. I solved my problem 5 minutes later. I've never looked back.
Cereal looks like a very competent rewrite of Serialization in C++11, minus support for raw pointers plus support for shared_ptr from day one, which is a big structural advantage. At the time Boost.Serialization was written, support for raw pointers and arbitrary object graphs using new/delete was all the rage. It didn't age well. boost::shared_ptr wasn't standard too, just some ordinary user-defined type, much less important than raw pointers. :-)