Description
Famously, in the Julia docs, it states:
The only interfaces that are stable with respect to SemVer of julia version are the Julia Base and standard libraries interfaces described in the documentation and not marked as unstable (e.g., experimental and internal)
Base.dataids
and Base.mightalias
are neither in the documentation, nor are they exported. However, the docstring of dataids
state:
Custom arrays that would like to opt-in to aliasing detection of their component parts can specialize this method to return the concatenation of the dataids of their component parts
Custom arrays, of course, should not extend internal Base methods that are subject to change or deletion. So either the encouragement to extend dataids
should be removed, or dataids
and mightalias
should be documented.
However, see #50820 : I believe the current implementation of mightalias
is a huge footgun. So if it's not possible to actually make this work reliably, maybe it's better to have this be explicitly marked internal, to avoid confusion.