This repository has been archived on 2026-08-31. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
donglora/vendor/embedded-graphics/doc/releasing.md
T
swaitsandClaude Opus 4.6 3102fc747a feat: add display UI with splash screen, dashboard, and RSSI sparkline
Implement full SSD1306 OLED display support:
- Splash screen on boot (1.5s) with project name, version, board
- Dashboard showing radio state, config, counters, RSSI/SNR
- RSSI history sparkline (64-sample ring buffer, 2px-wide bars)
- DisplayOn/DisplayOff host commands routed via dedicated channel
- Pure render functions against generic DrawTarget (no hardware coupling)
- Display on/off control bypasses radio task entirely

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 20:42:54 -06:00

4.2 KiB

Release process

Target audience: crate maintainers who wish to release embedded-graphics or embedded-graphics-core.

Please take a cautious approach to this. If any step doesn't feel right or doesn't succeed smoothly, stop and rectify any issues before continuing.

On GitHub

  • Check that all desired PRs are merged and all desired issues are closed/resolved.
  • Check that the latest master build passed in CircleCI.

On your local machine

  • cd to the repository root

  • Use the crate MSRV of 1.71.1 by running rustup override set 1.71.1

  • Check that just and cargo-release are installed and available in $PATH.

    • just --version
    • cargo release --version
  • Ensure you have the latest changes with git switch master and git pull --rebase

  • Check that your local repository is clean with no uncommitted changes and no unpushed commits. Ideally, use git reset --hard origin/master to ensure your local state is up to date with origin/master. You may need to change origin to the name of the remote pointing to https://github.com/embedded-graphics/embedded-graphics.

  • Before a stable release:

    • Search the repository for any TODO or FIXME comments. If any need resolving before release, stop this process and fix them with one or more PRs.
    • Ensure the RELEASES.md file is up to date with any new features added between the previous stable release and the current one.
  • Check that the crate version in Cargo.toml and core/Cargo.toml match the latest released versions on https://crates.io/crates/embedded-graphics and https://crates.io/crates/embedded-graphics-core respectively.

  • Run just build to ensure the build passes locally.

    • If the build fails for any reason, stop the release process and fix any issues by creating PRs. The upstream master branch must remain the source of truth. Restart this checklist once just build passes.
  • Double check the release level (major, minor, patch)

  • Release the crates in the following order:

    1. For embedded-graphics-core if there are changes to release: just release-core --push-remote <push-remote> <level>

      a. When the above command completes, check the embedded-graphics-core version in Cargo.toml in the project root. It should have been updated automatically to the just-released core version.

    2. For embedded-graphics: just release-e-g --push-remote <push-remote> <level>

    Where <level> is major, minor, patch, or a specific SemVer version number, and where <push-remote> is the git remote for the upstream repository embedded-graphics/embedded-graphics.

Post release