The Erlang external term format has changed at least once (but this change appears to predate the history stored in the Erlang/OTP github repository); clearly, it could change in the future.
However, as a practical matter, is it generally considered safe to assume that this format is stable now? By “stable,” I mean specifically that, for any term T, term_to_binary will return the same binary in any current or future version of Erlang (not merely whether it will return a binary that binary_to_term will convert back to a term identical to T). I’m interested in this property because I’d like to store hashes of arbitrary Erlang terms on disk and I want identical terms to have the same hash value now and in the future.
If it isn’t safe to assume that the term format is stable, what are people using for efficient and stable term serialization?
it’s been stated that erlang will provide compatibility for at least 2 major releases. that would mean that BEAM files, the distribution protocol, external term format, etc from R14 will at least work up to R16.