Updating
Your data, settings and .env file are never touched by an update.
One click from the dashboard
Sign in as an administrator and open Account settings → Updates. Tidemark asks GitHub for the latest release (refreshing the daily check) and, if it is newer than the version you are running, shows its release notes and a Download and install button.
Tidemark then:
- Downloads the release zip from the project's GitHub releases.
- Verifies its SHA-256 checksum against the checksum published with the release. A mismatch discards the download.
- Checks that the zip really is a Tidemark release and that its version matches what GitHub announced.
- Backs up the current code to
storage/app/updates/backups/(the last three backups are kept). - Replaces the application files and removes obsolete code files the new release no longer has.
- Runs the database migrations on the next request, with the new code.
When it finishes, choose Reload to use the new version.
Note:
Tidemark looks for new releases daily from a scheduled task, and every few hours while an administrator is using the app, so it works without cron. It contacts
api.github.com, asks only for the latest version number, and sends nothing about your sites or visitors. When a newer release exists, a dot appears on your profile menu, next to Account settings and next to Updates once you're there. Turn the daily check off withTIDEMARK_UPDATE_CHECK=false; the Updates page still checks when you open it. To follow a fork, setTIDEMARK_UPDATE_REPO.
Upload a release zip
No internet access from your host, or want to review a build first? On the same page choose a tidemark-x.y.z.zip file. It is sent in small pieces, so low PHP upload limits don't matter. Tidemark validates it and then installs it exactly as above. A zip that isn't newer than the installed version needs Install anyway.
In-app updates need PHP's zip extension and a project folder that PHP can write to.
Over FTP
If the dashboard can't write to the folder, upload the new release over the old files as usual (keep .env , storage/ and any SQLite file). The next request, from any visitor or tracked page, notices the new VERSION file and runs the migrations once. Open the dashboard to confirm.
Which version am I running?
The installed version is shown under Account settings → Updates.
Rolling back
Restore the backup from storage/app/updates/backups/ : unzip it over the project folder. Migrations are not reversed automatically, so for a major jump take a database backup first.
Tip:
Updates from before the in-app updater existed (0.8.x and earlier) have to be installed by hand once. From 0.9.0 on, Tidemark can update itself.