[stdlib-sig] standardizing the deprecation policy (and how noisy they are)

Antoine Pitrou solipsis at pitrou.net
Tue Nov 10 00:00:43 CET 2009


> I don't quite follow that. If they hit deprecation warnings on a new
> release and warnings are silent by default, how does that force an
> emergency release?

Because nobody ran the code with warnings on (or they just ran the test
suite and it didn't test all code paths), so that when the Python
version removing the deprecated constructs goes out, the library or app
is suddenly broken.

> Right, while I have to put up with them. As a user I don't want that.
> If a Ruby app was spitting warnings out I would have to be searching
> Google on how to turn them off and that's annoying.

I don't know about Ruby but "ruby --help" or "man ruby" should be
sufficient, shouldn't it? Looking up command-line options in the bundled
documentation is pretty standard, and shouldn't pass as an annoyance.

> At the moment. I know Paul Moore has said he wished more apps were
> released this way as it is much easier to launch command-line apps
> that way on Windows.

End users are even less likely to use the command-line under Windows
than they are under Linux... Such an option is obviously for power users
only, and it is quite reasonable to tell them to use "-Wwhatever" if
they want to switch off warnings.

Please remember that warnings are /not/ the common situation, they are
the exception. Your argument makes it sound like all applications will
print out warnings and annoy their command-line users, which is /not/
true.

> But reporting a bug is not going to turn the warnings off. They still
> have to be savvy enough to know to switch them off.

It is still much better to let people report a bug than to hide the
problem until it becomes critical. That's how we help developers; not by
making them blind to the issues they may be facing ten months from now.

> I never claimed we had 100% coverage. But I would expect us all to be
> running off of trunk for some things with warnings turned on.

For me, I usually don't run any third-party app or library using trunk.
And if I do, I certainly accept the existence of deprecation warnings;
after all, it's better than having the app totally break because of
whatever issue ignored by the developers.

> > Actually, it doesn't make the situation significantly better for users,
> > or even for developers, it just satisfies our own little egoistical
> > comfort as power users who don't like the annoying sight of warnings in
> > a terminal.
> 
> I obviously disagree.

Certainly, but that proposal still does not seem to be solving a serious
problem. How many people have asked for this to be changed? Do we have
regular reports about it on the bug tracker? Or perhaps people are
complaining about it on the mailing-lists or on other public fora? Is
Python renowned for making the command-line a painful experience?

I don't reckon so, but perhaps I've missed something. Bringing such
evidence would be helpful, and not only for my own edification :)





More information about the stdlib-sig mailing list