Skip to content

Latest commit

 

History

History
35 lines (22 loc) · 1.51 KB

PROCESS.md

File metadata and controls

35 lines (22 loc) · 1.51 KB

Process

This document describes the practices we use when developing and maintaining Apso.

Pull requests

We encourage contributions to be in the form of pull requests. We keep track of a Changelog but it's not expected for pull requests to eagerly update it. The Changelog should instead be updated prior to a release.

Versioning

We try to adopt MAJOR.MINOR.PATCH Semantic Versioning 2.0.0:

  • PATCH version Z (x.y.Z) is incremented if only backwards compatible bug fixes are introduced.
  • MINOR version Y (x.Y.z) is incremented if new, binary backwards compatible functionality is introduced to the public API. A source breaking but binary compatible change is allowed between MINOR versions.
  • MAJOR version X (X.y.z) is incremented if new binary backward breaking changes are introduced.

Releasing

Updating the Changelog

Before releasing, create, if it doesn't exist yet, a Changelog entry for the version you're releasing, following the template.

It's recommended to open a PR with the Changelog changes so that they can be reviewed by someone else from the team.

Releasing artifacts

To release the artifacts in the Sonatype's release repository, which eventually gets synced to Maven Central, simply use sbt to run release.

This will result in the releasing of all the apso-* libraries. Please ensure you are using Java 11 when releasing new versions.