Proposal: Deprecate decodeUtf8

Yuras Shumovich shumovichy at gmail.com
Thu Aug 18 11:28:11 UTC 2016


Hi Niklas,

AFAIK `text` is not maintained by CLC:
https://wiki.haskell.org/Library_submissions#The_Core_Libraries
(Please correct me if I'm wrong)

You should probably work directly with the maintainer, e.g. open an
issue. I think it is OK to discuss it on the list, but it should be
clear that the maintainer is free to ignore any decision made here.

Thanks,
Yuras.

On Thu, 2016-08-18 at 17:08 +0800, Niklas Hambüchen wrote:
> I propose to add a deprecation pragma to the partial function
> Data.Text.decodeUtf8.
> 
> I see checks or decoding failure accidentally omitted from production
> code every week. I claim decodeUtf8 to be *the* most abused partial
> function in the current Haskell ecosystem (with `head` and `tail` at
> least everybody knows they should feel bad when typing them down).
> 
> decodeUtf8' with custom error message is a better solution in all
> cases
> I have seen and can come up with.
> 
> I therefore propose:
> 
>   * Add deprecation pragma to decodeUtf8
>   * Do it with Text.Lazy and *16/*32 functions too
>   * But keep them indefinitely (we don't want to break compiles)
> 
> I believe that deprecating decodeUtf8 will result in lots of useful
> warnings across the world every day and less software crashing at
> runtime.
> 
> Discussion period 2 months.
> 
> Thanks!
> _______________________________________________
> Libraries mailing list
> Libraries at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries


More information about the Libraries mailing list