Skip to content

Latest commit

 

History

History

croiseur-spi

croiseur-spi

This folder gathers the definitions of the SPIs – Service Provider Interfaces, i.e. the plugin interfaces – used by the core croiseur library. These are:

These interfaces are designed to be implemented by any module willing to extend the capabilities of the croiseur library.

In order to allow the sustainable development of such extensions, SPIs are designed to be as stable as possible and respect the following rules:

  • SPIs should not depend on other libraries; In particular:
    • SPIs shall not depend on the croiseur library API: This ensures that extension implementations remain compatible with newer versions of the croiseur library;
    • SPIs may depend on croiseur-common, as croiseur-common strives for backward compatibility;
  • SPIs shall have their own versioning scheme.

Note: Until a first stable version of Croiseur is made, the above rules are not strictly enforced. SPIs may break, and the SPI versions follow the Croiseur API version.