mirror of
https://github.com/MeshEnvy/lobbs.git
synced 2026-10-31 02:11:59 +01:00
6.8 KiB
6.8 KiB
Changelog
LoBBS product history for lobbs-meshtastic-firmware. Meshtastic upstream release notes live in meshtastic/firmware; the [VERSION] section in version.properties tracks that base.
LoBBS semver is the [LOBBS] section in version.properties when present. Builds inject LOBBS_VERSION / LOBBS_VERSION_SHORT (see repo root bin/readprops.py, bin/platformio-custom.py). Until LoBBS 2.0.0 ships, dev builds may show a pre-release [LOBBS] value on branch lobbs.
Release tags use:
lobbs-{lobbsSemVer}.{lobbsSha7}-meshtastic-{mtSemVer}.{mtSha7}
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
Planned major release 2.0.0 (not tagged yet).
Added
- Stateless slash CLI:
/[id] command args…, replies optionally prefixed<id>. No menu stack. The last successful reply is cached for/pNpaging. - Plugin command IoC: Auth, Mail, News, Help, Status, Wall, Yarn apps register via filters.
- Long replies page with
/p2,/p3, … against the cached last reply, with or without a request id. /wall: shared 12×12 ASCII canvas, batch paint, erase tokens, paint quota, new/seen on/statuswhen logged in./news: announcement feed (list, read, post, unread, sysop delete)./yarn: collaborative word tail and sysop quotas.- Public
/statusand/hi; all-time totals when logged out; unread mail/news when logged in. - Machine replies echo the request id and mark pages separately:
<id>ok [n:max](single-page replies are<id>ok). - SysOp
/cdand/pwd: per-session working directory for/ls,/catand/hex./rm,/rmdirand/rmtreetake absolute paths only. - LoFS mount table (
/flash, optional/sdand/extra), virtual/,/installblank-node setup, and SysOp/cp,/mv,/mkdir,/stat,/df. - SysOp chunked upload:
/upload(offset base62 chunks) and CRC-checked/commit; host script bin/lobbs_chunkify.py. /passwd(self and sysop reset) and/time(show Unix time; sysop set clock).- Logins are held in RAM and end on reboot or after an idle timeout. SysOp
/configsetssession.max,session.idle, wall/yarn quotas,pager.ttl, andpassword.min./help config keyexplains a setting. Overrides live in one LoDBconfigtable. Logging in never writes flash. - Ignore non-slash DMs and self-originated loopback (
from= local node). - nRF52840: LoBBS gets its own 100 KB
/flash2partition between the app and Meshtastic's filesystem./installoffersflash2there instead of/flash. Install points come from theinstall_mountsfilter, in preference ordersd,extra,flash2,flash. - Seeed XIAO nRF52840 kit and SenseCAP Solar:
/extraon 2 MB onboard QSPI (LoFSQspi, JEDEC-gated mount). - All LoBBS files live under
/<mount>/lobbs(install.ls,db/, reservedapps/andhome/). Boot finds the install by scanning install mounts forlobbs/install.ls; nothing is kept on/flash./installon an installed node repliesAlready installed at /<mount>. - SysOp
/format <mount> [code]erases any mount butsdafter a 2-minute confirmation code./flashre-saves radio settings; the install mount leaves LoBBS blank./lsshowsdir/and file sizes./dfreadsextra: 1.8M free of 2.0M (12% used) [lobbs]. - LoBBS writes keep a free-space reserve on
/flash(16 KB on nRF52, 128 KB elsewhere) so Meshtastic can still save its own files. Writes that would cut into it replyDisk full../dfshows the reserve.
Changed
- LoFS: cross-mount
move, streamingcrc32File, andmoveIfCrc32Matches; glob helpers inlofs/Glob. FsCommands maps results to CLI replies; upload gap check unchanged in/upload. - Operator role renamed from admin to SysOp in CLI text, help, and user records (
is_sysopin auth proto, field 4 unchanged). - LoBBS protos and DALs split into per-app modules; LoDB hardening for nRF52.
/loginfor sign-in; build-time LoBBS versioning fromversion.properties.- Topic commands for mail, news, and users (development on branch; superseded by stateless CLI for 2.0.0).
Removed
- Numbered menu stack and session page buffer from the shipping 2.0.0 line (experimental on branch only).
1.3.0 - 2026-10-01
Added
- LoBBS integrated in the Meshtastic firmware tree (fork of meshtastic/firmware on branch
lobbs). - LoBBS enabled on ESP32 builds; nRF52 compatibility and LoFS path fixes.
Changed
- Canonical product home moved from archived MeshEnvy/lobbs plugin monorepo to this repository.
1.2.1 - 2025-12-09
Released from the archived MPM plugin monorepo (MeshEnvy/lobbs).
Changed
- Updated module registration from
#pragma MPM_MODULEtoMPM_REGISTER_MESHTASTIC_MODULEcomment directive. - Renamed module variable from
lobbsPlugintolobbsModulefor consistency.
1.2.0 - 2025-12-09
Added
- Logo assets with logo.pxd and logo.webp files.
- Admin user functionality: first registered user automatically becomes administrator.
Changed
- Walkthrough video link in README.
- Updated README with improved documentation, license information, and links.
- Replaced manual memory management with LoDb::freeRecords() in LoBBSModule.
- Added extern declaration for lobbsPlugin and updated MPM module pragma.
1.1.1 - 2025-12-05
Changed
- Refactored header structure: removed LoBBS and meta headers, updated include paths, introduced new plugin header.
1.1.0 - 2025-12-05
Added
- MPM plugin compatibility.
Changed
- Direct messages now properly filter out broadcasts.
1.0.1 - 2025-12-05
Changed
- Enhanced installation documentation with MeshForge method.
- Updated installation instructions for MPM integration.
1.0.0 - 2025-11-28
Added
- Initial release of LoBBS (LoDB Bulletin Board System).
- User registration and authentication.
- Bulletin board messaging system.
- Direct messaging between users.
- Session management.
- User directory and search functionality.