<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, May 23, 2018 at 12:06 PM, Matti Picus <span dir="ltr"><<a href="mailto:matti.picus@gmail.com" target="_blank">matti.picus@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">MaskedArray is a strange but useful creature. This NEP proposes to distribute it as a separate package under the NumPy brand.<br>
<br>
As I understand the process, a proposed NEP should be first discussed here to gauge general acceptance, then after that the details should be discussed on the pull request itself <a href="https://github.com/numpy/numpy/pull/11146" rel="noreferrer" target="_blank">https://github.com/numpy/numpy<wbr>/pull/11146</a>.<br>
<br>
Here is the motivation section from the NEP:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
MaskedArrays are a sub-class of the NumPy ``ndarray`` that adds<br>
masking capabilities, i.e. the ability to ignore or hide certain array<br>
values during computation.<br>
<br>
While historically convenient to distribute this class inside of NumPy,<br>
improved packaging has made it possible to distribute it separately<br>
without difficulty.<br>
<br>
Motivations for this move include:<br>
<br>
 * Focus: the NumPy package should strive to only include the<br>
   `ndarray` object, and the essential utilities needed to manipulate<br>
   such arrays.<br>
 * Complexity: the MaskedArray implementation is non-trivial, and imposes<br>
   a significant maintenance burden.<br>
 * Compatibility: MaskedArray objects, being subclasses of `ndarrays`,<br>
   often cause complications when being used with other packages.<br>
   Fixing these issues is outside the scope of NumPy development.<br></blockquote></blockquote><div><br></div><div>Hmm, I wouldn't say it's out of scope at all. Currently it's simply part of numpy.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
This NEP proposes a deprecation pathway through which MaskedArrays<br>
would still be accessible to users, but no longer as part of the core<br>
package.<br>
</blockquote>
<br>
Any thoughts?<br></blockquote><div><br></div><div>You're missing an important step I think. You're proposing to deprecate MaskedArray completely (or not?). IIRC this has not been decided or seriously discussed before. </div><div><br></div><div>The complexity is not going away if you intend to keep MaskedArray alive long-term, only in a separate package. It gets worse actually, because now we would need to cross-package regression testing.</div><div><br></div><div>Ralf</div><div><br></div><div><br></div></div></div></div>