Software/systemd/InterfaceStabilityPromise

systemd provides various interfaces developers and programs might rely on. Starting with version 26 (the first version released with Fedora 15) we promise to keep a number of them stable and compatible for the future. The stable interfaces are:

The following interfaces will not necessarily be kept stable for now, but we will eventually make a stability promise for these interfaces too. In the meantime we will however try to keep breakage of these interfaces at a minimum:

The following interfaces are considered private to systemd, and are not and will not be covered by any stability promise:

One of the main goals of systemd is to unify basic Linux configurations and service behaviors across all distributions. For facilities systemd provides a replacement for the various distribution specific configuration flavors, the current #ifdef TARGET_XXX style compatibility will eventually be removed from the systemd code in the future. In such case, there will be releases with warnings added, and later the entire code be removed. Distributions are expected to convert over time their individual configurations to the systemd Linux version, or they will need to carry and maintain these as patches in their package if they still decide to stay different.

What does this mean for you? When developing with systemd, don't use any of the latter interfaces, or we will tell your mom, and she won't love you anymore. You are welcome to use the other interfaces listed here, but if you use any of the second kind (i.e. those where we don't yet make a stability promise), then make sure to subscribe to our mailing list, where we will announce API changes, and be prepared to update your program eventually.

Note that this is a promise, not an eternal guarantee. These are our intentions, but if in the future there are very good reasons to change or get rid of an interface we have listed above as stable, then we might take the liberty to do so, despite this promise. However, if we do this, then we'll do our best to provide a smooth and reasonably long transition phase.