| 1 |
Subtext: a multi-user BBS server for Macintosh |
| 2 |
Written by joshua stein <jcs@jcs.org> - http://jcs.org/subtext |
| 3 |
|
| 4 |
Subtext is free software; see the LICENSE file for copyright/licensing. |
| 5 |
|
| 6 |
Introduction |
| 7 |
================================================================== |
| 8 |
Subtext is a multi-user BBS server that is developed and runs on Macintosh |
| 9 |
System 6 and above. It supports dialin access through a serial modem and |
| 10 |
Telnet access through MacTCP. For full documentation, see the GUIDE file. |
| 11 |
|
| 12 |
Support |
| 13 |
================================================================== |
| 14 |
Updates to Subtext are published on the Kludge BBS and can be downloaded |
| 15 |
on the World Wide Web at http://jcs.org/subtext |
| 16 |
|
| 17 |
For questions and support running a Subtext BBS, connect to the |
| 18 |
Kludge BBS by Telnet/Web at klud.ge, or modem at +1-312-654-0090. |
| 19 |
|
| 20 |
The source code for Subtext can also be found on AmendHub at |
| 21 |
http://amendhub.com/jcs/subtext |
| 22 |
|
| 23 |
Release History |
| 24 |
================================================================== |
| 25 |
4.0 - 2024-02-19 |
| 26 |
- Move views out of database to flat files in a "views" directory, allowing |
| 27 |
them to be edited by other text editors and backed up; views are cached |
| 28 |
at startup and can be reloaded through the sysop menu |
| 29 |
- Speed up telnet IAC negotiation to avoid delay after connect, avoid doing |
| 30 |
NEWENV unless talking to the trusted proxy |
| 31 |
- Add BSD Syslog (RFC3164) support, sending all logged events to a |
| 32 |
configured syslog server |
| 33 |
- When opening the last-opened database at startup, if the Command key |
| 34 |
is held down, do not open it and prompt for a different one |
| 35 |
- Add support for {{center_XX}} template variable |
| 36 |
- Remove ATQ0 from default modem init string to be able to handle when |
| 37 |
the modem responds to init with an error |
| 38 |
- When tossing FTN packets, log failures and move files to the "bad" |
| 39 |
directory, then send local mail to sysop |
| 40 |
- Add page number to prompt in boards menus |
| 41 |
- Prevent running daily pruning jobs if system clock year is less than 2024, |
| 42 |
to avoid pruning all mail and sessions if the clock gets reset |
| 43 |
- Fix 'new'/'signup' logins not going directly to the signup menu |
| 44 |
- Fix bug in modem handling where a session wasn't properly disassociated |
| 45 |
when the session was forcefully closed |
| 46 |
- Fix location lookup when connecting through the trusted proxy |
| 47 |
|
| 48 |
3.1 - 2023-11-21 |
| 49 |
- In "who" command, show which area of the BBS each user is currently in |
| 50 |
- Add a "logged_in_time" template variable, helpful for signoff template |
| 51 |
showing how long the user was logged in for |
| 52 |
- Find proper per-message originating and destination net/zone numbers |
| 53 |
from FTN messages when different than FTN packet header |
| 54 |
- Properly handle skip commands received from binkp servers to end the |
| 55 |
session and retry later |
| 56 |
- Abort idle binkp connections in case of server issues |
| 57 |
- Set the software major version in outgoing FTN packets and use the |
| 58 |
proper code for software that has not been assigned an id such as Subtext |
| 59 |
- Include the actual timestamp of FTN packet files when sending through |
| 60 |
binkp |
| 61 |
- Fix a bug encoding FTN packets with the wrong termination |
| 62 |
- Fix a bug where tossing FTN packets was adding messages for areas |
| 63 |
not subscribed to into the previously used board |
| 64 |
- Fix a bug in the console where an assertion was erroneously triggered |
| 65 |
when the cursor was at the far corner but in bounds |
| 66 |
|
| 67 |
3.0 - 2023-11-11 |
| 68 |
- Add support for using an IP geolocation database to lookup connecting |
| 69 |
telnet IP addresses and log their location, storing it in the session |
| 70 |
log and making it available in 'who' and 'last' menus |
| 71 |
- Dynamically apply config changes made from the sysop menu without |
| 72 |
requiring a restart |
| 73 |
- Add a config setting to change the number of rings to wait before |
| 74 |
answering the modem, possibly to allow for caller ID information to |
| 75 |
come through after the first ring which will get logged |
| 76 |
- Add '&D2' (hangup on DTR flash) to default modem initialization string |
| 77 |
to make it clear we need it for proper hangup |
| 78 |
- Do faster sorting in many places |
| 79 |
- Allow "guest", "new", and "signup" logins to be made in mixed-case |
| 80 |
- Add 'l' key in post view in boards to list posts, and 's' to show the post |
| 81 |
again |
| 82 |
- In sysop settings menu, make 'q' stop pagination at the 'more' prompt |
| 83 |
- Fix a bug in sysop settings editor that could have caused config |
| 84 |
corruption if the sesion was disconnected before exiting/saving the |
| 85 |
editor |
| 86 |
- Do more TCP connection status checks during binkp connections to detect |
| 87 |
dropped connections |
| 88 |
- Fix a bug in pagination that caused extra newlines to be shown in certain |
| 89 |
terminals, and a bug that caused incorrect wrapping when the first |
| 90 |
character of a post was a newline |
| 91 |
- Fix a bug in boards that was causing '>' not to work in some cases |
| 92 |
- Fix text selection and copying in the logger window |
| 93 |
|
| 94 |
2.0.1 - 2023-05-02 |
| 95 |
- Fix corrupted default menu options that prevented first launch |
| 96 |
- Minor telnet and ZMODEM compatibility fixes |
| 97 |
|
| 98 |
2.0 - 2023-05-01 |
| 99 |
- Add support for FTN (FidoNet) EchoMail and NetMail, with support for |
| 100 |
fetching from and sending to a Binkp hub, including PKZIP archives |
| 101 |
of packets |
| 102 |
- Move mail to a separate database file for easier backup and less |
| 103 |
chance of corrupting the user database |
| 104 |
- Implement sysop paging/answering, which displays the user's message |
| 105 |
on the screen with a beep |
| 106 |
- Implement custom "NoModem" protocol for file transfers, used when a |
| 107 |
host is connecting through the trusted host assuming this is a web |
| 108 |
gateway |
| 109 |
- List more items per screen in boards, files, and sysop, and change |
| 110 |
input handler to collect multiple digits |
| 111 |
- List newest mail first and a global setting to automatically prune |
| 112 |
mail after a configurable amount of days |
| 113 |
- Add option to sysop menu to forcefully hangup/reset the modem, and |
| 114 |
an option to reboot the system |
| 115 |
- Add timezone UTC offset setting, use to convert timestamps in FTN |
| 116 |
messages to local timezone, and add a "timezone" template variable |
| 117 |
- Add setting for separate maximum idle time for sysops (which can be |
| 118 |
set to 0 to disable idling out sysop sessions) |
| 119 |
- Mask password fields in sysop settings menu |
| 120 |
- Add BOARD_LIST_BOARDS command for main menu, which lists all local |
| 121 |
boards |
| 122 |
- Faster session log pruning, and fix a bug where failed logins were |
| 123 |
still being written to the session log |
| 124 |
- Fix SHA1 checksum calculation for uploaded files and show occasional |
| 125 |
progress during calculation |
| 126 |
- Implement folder file description/notes editing and add an option for |
| 127 |
sysop to recalculate SHA1 checksum before saving |
| 128 |
- Try to handle malloc failures gracefully everywhere rather than exiting |
| 129 |
|
| 130 |
1.1 - 2022-12-01 |
| 131 |
- Fix crash that could occur when more than one user is in chat, one user |
| 132 |
quits chat, and then remaining users continue to chat |
| 133 |
- Fix problem when running under non-MultiFinder where subsequent |
| 134 |
runs would fail with errors opening board and folder databases because |
| 135 |
they were not properly closed on the first run |
| 136 |
|
| 137 |
1.0 - 2022-11-22 |
| 138 |
- Initial release! |