Is deprecation as bad as removal?

Ben Millwood haskell at benmachine.co.uk
Tue Feb 24 23:35:04 UTC 2015


I'm going to grab this quotation from a recent thread discussing removal 
of fromJust:

On Tue, Feb 24, 2015 at 02:32:08PM -0500, Edward Kmett wrote:
>I'm personally pretty strongly against removing this function on mere
>proscriptive grounds and a deprecation is effectively removal for most
>users who care about warnings.

This strikes me as troubling. Are we considering deprecations to be 
equivalent to removals, in terms of stability impact? I've heard more 
than one person suggest that we are, or should. The argument for it is 
reasonably clear: with -Werror enabled, as many people do, as many would 
encourage, even, either removal or deprecation of something you use will 
break your build.

But surely the *entire purpose* of deprecations is to be *less* damaging 
than removals, and so if we're implicitly considering them equally bad, 
that suggests to me that our deprecation mechanism is totally broken, 
and needs to be fixed.

I can think of several potential fixes, but I'd first like to see if 
others agree that there is a problem :)


More information about the Libraries mailing list