Skip to content
HDCharts

How HDCharts Ships

Every change goes through the same path: a pull request is checked, merged changes are published as a nightly snapshot, and a maintainer promotes a tested snapshot to a release. All workflows live in HDCharts/charts.

Loading diagram…
StageWorkflowWhat it publishes
Pull requestpull-request.yml, pull-request-api.yml, pull-request-gif-validation.ymlNothing; it gates the merge.
Snapshotnightly.yml → snapshot-release.ymlMaven snapshot, snapshot API reference and demo, snapshot Android APK, snapshot docs.
Releaserelease.ymlMaven release and tag, versioned API reference and demo, release Android APK, versioned docs, GitHub release.

What validates main

The pull-request checks. The nightly snapshot publishes main as those checks left it when the last 24 hours brought code changes, and a maintainer starts release.yml by hand.

That makes the pull-request checks the tests that gate every commit. See Pull Requests for the jobs they run and Validation Matrix for what each one covers.

warm-gradle-cache.yml runs on main when build files change and twice a week. It runs lint, the JVM tests and the API diff, compiles the other Linux and iOS CI targets, and saves the Gradle caches that pull-request jobs restore. Other workflows on main restore those caches read-only. The playground job keeps its own cache, and release jobs start fresh. Pull requests use the cache from its latest passing run.