Scryer 0.16.3 released - recommended maintenance release
Headlines
- Root folder ergonomics
- Root folders are now considered a domain object
- Root folders can no longer be typed in or bespoke per title, they must be configured at the Library level and linked at the title
- API rework
- Lots of internal API rework to make the GraphQL API more ergonomic for 3rd party integrators
- The Scryer GraphQL API is now safe. I will not make any more breaking changes, this is verified and validated on every release by my tooling. Breaking changes will be put into a v2 API as they arise.
- Recycle bin + deletion safety
- Restore conflicts: If a title is restored and there's another file with the same name, the new file gets a `-restored` suffix
- Fail-closed root check: deletes/recycles are rejected if the file isn't under a configured media root (or if the root list is empty/unknown).
- Unauthenticated public-access allowlist
SCRYER_UNAUTHENTICATED_PUBLIC_ACCESS_ALLOWLISTnarrows auth-disabled access to specific IPs, CIDRs, or DNS hostnames (comma-separated, e.g.8.8.8.8,203.0.113.0/24,home.example.test).
- File logging
- New
--log-file <path>/SCRYER_LOG_FILEwrites logs to a file (in addition to console + in-app buffer). Windows defaults to%LocalAppData%/scryer/logs/scryer.log.
- New
- Anonymous (authless) OAuth
- OAuth now works when you don't have form login enabled. The actions all get recorded as the
Anonymoususer that gets used elsewhere for unauthenticated Scryer
- OAuth now works when you don't have form login enabled. The actions all get recorded as the
- Recovery mode hardened (behavior change):
SCRYER_RECOVERY_ADMIN_PASSWORDnow forces form login on and suppresses local-IP bypass (previously it disabled auth).
- Post-upgrade auto-backup
- After a version upgrade, if auto-backup is enabled and keyed, a backup is triggered automatically on next startup (tracked via a pending marker, cleared on success).
- Post-processing hardening (security)
- Inline shell scripts require
inlineShellAcknowledged: trueon create/update/enable; file scripts must use absolute paths; configuration-change events are emitted for every script mutation.
- Inline shell scripts require
Posted Jun 23, 2026, 9:09 PM UTC
30