From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Mon, 26 Jan 2026 13:45:22 +0000 (+0100) Subject: [3.13] gh-143928: Remove outdated comparison between pickle and marshal regarding... X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=01c18767f0efc531873b06c5a747282e9e62aa2c;p=thirdparty%2FPython%2Fcpython.git [3.13] gh-143928: Remove outdated comparison between pickle and marshal regarding recursion (GH-144025) (#144247) gh-143928: Remove outdated comparison between pickle and marshal regarding recursion (GH-144025) (cherry picked from commit 923d9d2ac23b583a7fb66e2867d8dcc07fec9a40) Co-authored-by: Yashraj --- diff --git a/Doc/library/pickle.rst b/Doc/library/pickle.rst index bacc4b9c59da..82c1db8cc686 100644 --- a/Doc/library/pickle.rst +++ b/Doc/library/pickle.rst @@ -56,19 +56,6 @@ files. The :mod:`pickle` module differs from :mod:`marshal` in several significant ways: -* The :mod:`pickle` module keeps track of the objects it has already serialized, - so that later references to the same object won't be serialized again. - :mod:`marshal` doesn't do this. - - This has implications both for recursive objects and object sharing. Recursive - objects are objects that contain references to themselves. These are not - handled by marshal, and in fact, attempting to marshal recursive objects will - crash your Python interpreter. Object sharing happens when there are multiple - references to the same object in different places in the object hierarchy being - serialized. :mod:`pickle` stores such objects only once, and ensures that all - other references point to the master copy. Shared objects remain shared, which - can be very important for mutable objects. - * :mod:`marshal` cannot be used to serialize user-defined classes and their instances. :mod:`pickle` can save and restore class instances transparently, however the class definition must be importable and live in the same module as