Release train 🚂¶

The release train consists of six repositories that are released every two to three months:

Release Candidate¶

The powsybl-core repository is the repository on which every other repository of the release train depends. For this reason, a release candidate is released about two weeks before the release train starts so that maintainers of the five other repositories can run tests before the “real” version is out.

Release candidates versions follow this pattern: v[X].[Y].[Z]-RC[A] with X.Y.Z the version number to come and A the number of the release candidate (there may be several release candidates if bugs are found during testing).

Release train course¶

After the testing period, the release train starts with powsybl-core followed by the five other repositories in an order that takes into account the internal dependencies.

Those dependencies are pictured in the diagram below.

release-train

For each released repository:

  • A release note is written by one of the repository’s committer;

  • In case of breaking changes, a migration guide is written by one or several of the repository’s developers.

The powsybl-dependencies artifact¶

After the six repositories have been released, a new version of powsybl-dependencies is created. The powsybl-dependencies artifact helps projects with dependency management by gathering a set of compatible versions for the release train repositories.

The powsybl-starter and powsybl-distribution artifacts¶

Following powsybl-dependencies, powsybl-starter is released. This artifact is meant for beginners. By including this sole dependency in their pom.xml, new users get access to the main features of the library. They can start exploring very quickly without bothering about specific dependencies.

The powsybl-distribution artifact is then released. It allows users to download a .zip file that allows them to use PowSyBl from the command line.

Communication¶

Finally, a communication on the LFE mailing list powsybl-announce is done by one of PowSyBl’s committers to announce the new release train and its main features.