Skip to content

v2.7.3 — the app finally says who made it

Choose a tag to compare

@maxg10 maxg10 released this 14 Sep 13:19
· 41 commits to main since this release

An installation of MeshPulse was oddly anonymous. Unless an update happened to
be pending, nothing in the app said what it was, who wrote it, which licence it
carries or where the project lives — so a Pi someone else had set up left its
user with no way back to any of that. This release fixes it, and fixes what
looking closely at the top bar turned up.

The top bar says where you are

The wordmark is a link. 📶 MeshPulse opens meshpulse.app.

The version opens the release notes. Clicking v2.7.3 opens a dialog with
the notes for the version that is actually running — not the newest one — and
underneath them an About block: version, GPL-3.0, copyright, and links to the
site, the plugin store and the repository.

The dialog is not new code. showUpdateBanner() already built one and threw it
away in every case except a pending update; it is now a standalone
showReleaseModal() that the banner and the version chip both call.

The details that matter on a mapper in a shed:

  • Notes come from the release tagged with the running version and are cached per
    version in sessionStorage, so clicking around does not burn the anonymous
    GitHub rate limit.
  • Everything from ## Updating onwards is cut. Install instructions belong on
    GitHub, not in a "what's new" box.
  • With no internet the dialog still opens and still shows the About block. An
    offline mapper is the normal case, not an error.
  • The notes are Markdown shown as plain text, so heading hashes are stripped and
    list dashes become bullets. No Markdown renderer was added and nothing reaches
    the page unescaped.

Phones

The bar used to hide the whole version string to make room — which would also
have hidden the new dialog's only entry point. Now only the page name is
dropped: v2.7.3 stays, and its tap area is larger than the text.

Stats stops pushing the page sideways

On a 320px screen the Stats page dragged the document 53px to the right. It was
not the box-sizing bug it resembled: a grid item's automatic minimum size is its
content's min-content width, so a Chart.js canvas reporting 300px stopped even a
single 1fr track from shrinking, and the Most Active Nodes table is 343px wide
on its own. Grid children may now shrink, canvases are capped at the card width,
and a card scrolls content that genuinely is wider than the screen.

Smaller things

  • The telemetry notice in Config still said "Meshtastic Mapper" — the last
    string left from the rename, sitting in the one place where a user reads about
    privacy.
  • backend/meshpulse.py carried its shebang on line 17, below the licence
    header, where a shebang does nothing at all, next to a #ver 2.3.0 comment
    from another era.

Updating

cd ~/meshpulse && git pull origin main && ./install.sh && sudo systemctl restart meshpulse

Docker

docker compose pull && docker compose up -d

Fresh Install

git clone https://github.com/maxg10/meshpulse.git
cd meshpulse
./install.sh