All docsUpdates and notifications

Updates and notifications

How the notifier tells you about a new release or library, what it sends, and how to control it.

Every install of Venutian, whether from install.sh, install.ps1, or one of the direct downloads plus notify.sh or notify.ps1, carries a small notifier alongside the toolchain. It checks venutian.org at most once a day and tells you in your terminal when a new release or a new or updated library is out. It sends nothing about you.

What it checks, and how often

The notifier piggybacks on ordinary use of venutian: after the real command finishes and hands back its own exit code, if your terminal is interactive, you are not in CI, and you have not opted out, it checks whether the last check was more than a day ago, and if so refreshes in a background process with a five second limit. The very first run after an install is quiet, so installing never prints an update notice about the version you just installed.

What it sends

The request is a plain HTTPS GET of a static file with an ETag, nothing more. It carries no machine identifier, no install identifier, no cookie, no project name and no package list: comparing your project's locked package versions against the registry happens entirely on your machine, using the venutian.lock.json already sitting in your project. The server's own log keeps nothing beyond a standard access log entry.

What you see

A full notice, composed locally from the fetched, validated release and package data, looks like this:

output
  Venutian 1.1.0 is out (you have 1.0.1).
  New libraries: vgeo 0.1.0, vstats 0.1.0. Updated: vassert 0.2.0, vjson 0.3.1.
  This project: vjson 0.3.0 can go to 0.3.1.
  Upgrade:    curl -fsSL https://venutian.org/install.sh | sh
  Libraries:  venutian-notifier libraries
  Notes:      https://venutian.org/releases/1.1.0/
  Quiet:      venutian-notifier off

A library only notice, with no new toolchain release, shows the same shape without the version and Upgrade lines. The "This project" line only appears in a directory that has its own venutian.lock.json.

venutian-notifier

Command Does
venutian-notifier status shows the installed version, channel, last check time, what is waiting, and whether checks are on
venutian-notifier check --now checks immediately, in the foreground, and prints the result
venutian-notifier off turns checks off
venutian-notifier on turns checks back on
venutian-notifier channel stable or nightly switches the followed release channel
venutian-notifier libraries [--fetch <name>] lists every new and updated library since your last check; --fetch <name> downloads that library's archive, verifies its SHA 256 against the registry, and prints the venutian install line to add it
venutian-notifier desktop on and off turns an opt in daily desktop notification on or off, alongside the terminal notice
venutian-notifier rollback switches back to the version kept from before your last upgrade

Turning it off entirely

Set the environment variable before installing, and the notifier is never installed in the first place:

output
VENUTIAN_NO_UPDATE_CHECK=1

On Windows PowerShell, set it as a persistent user variable:

output
setx VENUTIAN_NO_UPDATE_CHECK 1

The same variable silences an already installed notifier too, alongside venutian-notifier off, a DO_NOT_TRACK=1 environment variable, and any recognized continuous integration environment, which the notifier detects and stays quiet in automatically.

If you downloaded directly

The install one liners set up the notifier automatically. If you took a file from the download page instead, running the matching one liner afterward installs only the wrapper and the notifier around the venutian you already have on your PATH: it never touches or replaces your toolchain.

shell
curl -fsSL https://venutian.org/notify.sh | sh
shell
irm https://venutian.org/notify.ps1 | iex

Email and push

For notices outside your terminal, subscribe on the releases page or the download page: email delivery is double opt in, with a one click unsubscribe link on every message, and Web Push is opt in per browser, with a Turn off control right next to it. Both follow the same releases and library updates the terminal notifier does, plus Project Mirage news if you choose that topic.

See the CLI for venutian install and the rest of the package manager, and the package manager for how a project's venutian.lock.json tracks what you have installed.