This is not cool; AFAIK the preferred behaviour is to fail on sparse input if it can't be handled without densifying.  Explicit is better than implicit, especially when it can lead to memory blowup and swapping.  The user should densify if they really know what they're doing.  @GaelVaroquaux am I right here?