Skip to main content

Release and Support Policy

This page describes the release and support model that the Artemis project follows today, so that institutions can plan their own operations around it. It states current practice, not a contractual commitment.

Versioning

Artemis versions are canonically two-part, MAJOR.MINOR (for example 9.9). A third component is only used for hotfix releases and is always 1 or higher (for example 9.8.1); X.Y.0 is not a valid Artemis version.

The version is defined in build.gradle and is the single source of truth. A CI gate verifies that build.gradle, the OpenAPI specification, and the README agree on it.

IncrementMeaning
MAJORConsolidates the database changelogs of the previous release cycle and may require a specific intermediate version before upgrading. See the upgrade guide.
MINORRegular feature and bugfix release from the develop branch.
Hotfix (X.Y.Z)Targeted fix on top of an existing release, published from a release/X.Y.x branch.

Release cadence

Artemis publishes a minor release with improvements and bug fixes every two weeks. Bugfix releases are published whenever they are necessary, without waiting for the next minor release.

Releases are published as GitHub releases with notes generated from pull request titles. Development happens on develop, a minor release is cut from it, and hotfixes are prepared on the corresponding release/X.Y.x branch.

Supported versions

The latest released version is the supported version. It is the version that receives improvements, bug fixes, and security fixes by default, and the version every institution should aim to run.

Artemis does not currently offer a long-term support (LTS) release. What it does offer instead:

  • Older releases are supported on request. If an institution cannot upgrade immediately, get in touch and the team will work with you.
  • Bug fixes and security fixes are backported to older releases on request. Backports are prepared on the release/X.Y.x branch of the affected version.
  • Upgradeability from older releases is deliberately kept as high as possible. The upgrade guide documents the intermediate versions required between major releases, and that path is maintained rather than dropped.

Requests for backports and for support on an older release go to artemis@xcit.tum.de.

Security support

  • Vulnerabilities are reported privately to the address published in the security policy, which also documents encrypted reporting.
  • Fixes are released as part of the next regular or bugfix release of the latest version, and are backported to an older release on request.
  • Dependency vulnerabilities are monitored continuously, and a scheduled weekly scan notifies the configured administrator address of the running instance.
  • No response-time or resolution-time service level is offered.

Upgrade expectations

Upgrading a running instance means deploying a new artifact and letting Artemis apply its database migrations at startup. Two points deserve planning attention:

  1. Major upgrades may require an intermediate version. Because each major release consolidates the previous cycle's database changelogs, the target version assumes all earlier incremental migrations have been applied. If the required intermediate version was never deployed, Artemis refuses to start and exits with a message naming the version to deploy first. The upgrade guide contains the upgrade path table.
  2. Take a backup first. Migrations are applied automatically and are not designed to be rolled back. Backup and recovery are the responsibility of the operating institution.

For deployments with multiple Artemis nodes, see running multiple Artemis instances.

Compatibility expectations

AreaExpectation
DatabasePostgreSQL and MySQL are supported. Migrations run automatically at startup through Liquibase.
REST APIThe API is documented through an OpenAPI specification generated from the server. It is primarily an interface for the Artemis clients and can change between releases.
Mobile appsThe Android app and the iOS app live in their own repositories and are released separately. Artemis CI runs the Android app's tests against server changes.
AI servicesArtemis integrates with the EduTelligence services. Their compatibility matrix states which service versions match which Artemis versions.
Build agentsBuild agents run the same Artemis artifact and are expected to be upgraded together with the server.

Deprecations and migrations

Behavioral changes that require operator action are documented where administrators will look for them: the upgrade guide for version-specific migration steps, the known issues page, and the release notes of the individual release. There is no separate deprecation calendar.

Support model

Artemis is open-source software that institutions deploy and operate themselves. Support is community support:

There is no commercial support offering and no support contract associated with the project. See Community for the channels that exist today.

Hosting

Institutions normally run their own Artemis instance. For smaller deployments, such as schools, and for institutions that want to try Artemis before committing to their own infrastructure, the Artemis team at TUM can host an instance. Write to artemis@xcit.tum.de to discuss it.

Search documentation