Add py::pickle() adaptor for safer __getstate__/__setstate__ bindings
This is analogous to `py::init()` vs `__init__` + placement-new.
`py::pickle()` reuses most of the implementation details of `py::init()`.
diff --git a/docs/changelog.rst b/docs/changelog.rst
index 23d5563..478b7d7 100644
--- a/docs/changelog.rst
+++ b/docs/changelog.rst
@@ -91,6 +91,11 @@
return std::make_unique<Example>(std::to_string(n));
}));
+* Similarly to custom constructors, pickling support functions are now bound
+ using the ``py::pickle()`` adaptor which improves type safety. See the
+ :doc:`upgrade` and :ref:`pickling` for details.
+ `#1038 <https://github.com/pybind/pybind11/pull/1038>`_.
+
* Builtin support for converting C++17 standard library types and general
conversion improvements: