[Python-Dev] public visibility of python-dev decisions "before it's too late"

"Martin v. Löwis" martin at v.loewis.de
Tue Mar 15 20:39:06 CET 2011


> I noticed the API change now because it's gone from 3.2. That's how
> most API changes gets noticed: Things stop working. And that's OK.
> Deprecation periods are there to help you support multiple versions at
> the same time.

That may be the source of misunderstanding. In my understanding, that's
*not* what deprecation periods are there. Instead, they are there to
give people time to adjust to the changes before their code will break
for good. So during the deprecation period, they should start using
the new way of doing things, so that the code is ready when the old
way goes away.

> Deprecation notices are helpful, of course, but in this
> case it doesn't help. Even if I had noticed the deprecation warning in
> 3.1, I wouldn't have been able to do anything about that

Of course you could have. You could have added a version of your code
that uses capsules (just as you are probably doing now). Then, the
could would not have been broken in 3.2.

> I could have (and still can) support it by using compatibility macros
> or #ifdefs, sure. But you can do that without a deprecation period.

Right - and that's why the deprecation period is not about supporting
multiple versions, but to reduce the need for people to adjust their
code on a quick notice.

> Could we please cool down with the backwards
> incompatibility?

That's another motivation for deprecation. It gives people a chance
to intervene and ask for an extension of the deprecation period, so that
they have more time to adjust.

Regards,
Martin


More information about the Python-Dev mailing list