Application Compatibility

From The Linux Foundation
Jump to: navigation, search

The LSB provides backward compatibility at both the source and binary level beginning with LSB 3.0. In other words, applications that target version X.Y of the LSB (where X.Y >= 3.0) will run on distributions certified to or compliant with LSB version X.Y and newer. For example, applications that target LSB 3.0 will run not only on LSB 3.0 certified/compliant distributions but also LSB 3.1, LSB 3.2, LSB 4.0 etc. certified/compliant distributions.

To achieve backward compatibility, each subsequent version is purely additive--in other words, interfaces are only added, not removed (our interface deprecation policy does provide us with a mechanism for removing interfaces, but only after the interfaces have been marked "deprecated" for at least three major versions, or roughly six years).

This policy allows application vendors to certify to the version of the LSB that provides the interfaces they need and not require them to recertify to newer versions unless the newer versions provide functionality the applications require.

Please note that the application compatibility policy has changed with LSB 3.0: previously, in LSB 1.x and 2.x, binary compatibility was only provided within a major version--now application compatibility is provided between major versions.