27/09/2019 18:54, Ray Kinsella:
> TL;DR abbreviation:
> A major ABI version that all DPDK releases during a one year period
> support. ABI versioning is managed at a project-level, in place of 
> library-level
> management. ABI changes to add new features are permitted, as long as ABI
> compatibility with the major ABI version is maintained.
> 
> Detail:
> This patch introduces major ABI versions, supported for one year and released
> aligned with the LTS release. This ABI version is then supported by all
> subsequent releases within that one year period. The intention is that the one
> year support period, will then be reviewed after the initial year with the
> intention of lengthing the support period for the next ABI version.

For the record, I would prefer a v7 saying it is a fixed period of time,
being one year at first and should be longer next.
Please don't state "supported for one year", which can be understood as a 
general truth.

> ABI changes that preserve ABI compatibility with the major ABI version are
> permitted in subsequent releases. ABI changes, follow similar approval rules 
> as
> before with the additional gate of now requiring technical board approval. The
> merging and release of ABI breaking changes would now be pushed to the
> declaration of the next major ABI version.
> 
> This change encourages developers to maintain ABI compatibility with the major
> ABI version, by promoting a permissive culture around those changes that
> preserve ABI compatibility. This approach begins to align DPDK with those
> projects that declare major ABI versions (e.g. version 2.x, 3.x) and support
> those versions for some period, typically two years or more.
> 
> To provide an example of how this might work in practice:
> 
>  * DPDK v20 is declared as the supported ABI version for one year, aligned 
> with
>    the DPDK v19.11 (LTS) release. All library sonames are updated to reflect 
> the
>    new ABI version, e.g. librte_eal.so.20, librte_acl.so.20...
>  * DPDK v20.02 .. v20.08 releases are ABI compatible with the DPDK v20 ABI. 
> ABI
>    changes are permitted from DPDK v20.02 onwards, with the condition that ABI
>    compatibility with DPDK v20 is preserved.
>  * DPDK v21 is declared as the new supported ABI version for two years, 
> aligned
>    with the DPDK v20.11 (LTS) release. The DPDK v20 ABI is now depreciated,
>    library sonames are updated to v21 and ABI compatibility breaking changes 
> may
>    be introduced.

OK I agree with these explanations.


Reply via email to