Deprecation of stuff

Richard Levitte levitte at openssl.org
Mon Sep 2 06:38:41 UTC 2019


The dispute in PR https://github.com/openssl/openssl/pull/7853 has
made it quote obvious that we have some very different ideas on when
and why we should or shouldn't deprecate stuff.

What does deprecation mean?  Essentially, it's a warning that at some
point in the future, the deprecated functionality will be removed.  I
believe that part of the issue surrounding this is uncertainty about
when that removal will happen, so let me just remind you what's
written in our release strategy document:

  * No existing public interface can be removed until its replacement
    has been in place in an LTS stable release. The original interface
    must also have been documented as deprecated for at least 5 years.
    A public interface is any function, structure or macro declared in
    a public header file.

Ref: https://www.openssl.org/policies/releasestrat.html

I'd like to get this thread started with the following four questions,
for as many of us to answer as possible:

1. Why should we deprecate stuff

2. Why should we not deprecate stuff

3. When should we deprecate stuff

4. When should we not deprecate stuff

Cheers,
Richard

-- 
Richard Levitte         levitte at openssl.org
OpenSSL Project         http://www.openssl.org/~levitte/


More information about the openssl-project mailing list