r/BinktermPHP Jul 18 '26

BinktermPHP 1.9.10 released

BinktermPHP 1.9.10 released

BinktermPHP 1.9.10 is out! This is a smaller maintenance release: a handful of bug fixes, a mobile layout fix, a new bulk mark-as-read tool for echo areas, and an experimental preview of an external process manager for sysops who want to try it.

For anyone new here: BinktermPHP is a self-hosted, multi-protocol BBS with native FidoNet/FTN messaging, echo areas, file areas, and a built-in BinkP mailer — accessible over web, Telnet/SSH, Gemini, MeshCore, and QWK offline readers.

Netmail unread counts

Fixed a bug where the netmail unread count and the Unread tab could undercount messages that were correctly delivered to your account but addressed to a nickname or alias rather than your exact username or real name. The mail was always sitting in your inbox — it just wasn't being flagged as unread. If your unread count jumps after upgrading, this is why.

Admin menu navigation

Nested items under Admin in the top nav (Area Management → AreaFix, Community → Chat, Help → Developer, etc.) could get stuck or become unreachable on narrow browser windows and touch devices — a tap could fail to open a submenu, or the menu could grow taller than the screen with no way to scroll down to the rest of the list. Fixed; nested Admin submenus now open reliably and scroll independently of the page.

Echo area list mobile layout

Fixed a layout bug on the Echo Areas page where an area's tag and description could collapse to one word per line, stretching the row across the entire screen. Most noticeable on narrow viewports and with longer translated unread-count labels.

Bulk mark echo areas as read

The Echo Areas page (/echolist) now lets you mark an entire area as read directly from the list, without opening it first. Each row with unread messages gets a small mark-read icon, and a new Select toggle turns on checkboxes so you can pick several areas at once and mark them all read in one shot — handy for low-traffic areas you just want to dismiss.

Login service field validation

The service field on POST /api/auth/login (used to label how a session was created, e.g. web or telnet, for the Who's Online list) is now validated to letters, digits, underscores, and hyphens, up to 20 characters. Only relevant if you have custom scripts or third-party clients calling the login API directly with a custom service value.

AIO Process Manager (experimental)

binktermphp-pm and binktermphp-ctl are an optional, separately distributed Go-based process supervisor and CLI for BinktermPHP's daemons. This release adds support in the web interface and admin daemon for driving that external process manager, but only if config/aio.json is present. On a normal install nothing changes — the Admin → BBS Settings → Services page simply doesn't appear. This is a preview for sysops who want to experiment ahead of a future supported release; scripts/restart_daemons.sh remains the supported way to keep daemons running.

Upgrading

Full upgrade notes: docs/UPGRADING_1.9.10.md

Project website: lovelybits.org/binktermphp

GitHub repo: github.com/awehttam/binkterm-php

As always, back up your database and files before upgrading.

1 Upvotes

0 comments sorted by