23 hours ago/ctdl/f/ to get a list of all floors master
Art Cancro [Mon, 24 Jan 2022 20:40:45 +0000 (15:40 -0500)]
/ctdl/f/ to get a list of all floors

47 hours agoroom list renderer is now aware of which rooms are forum view:
Art Cancro [Sun, 23 Jan 2022 21:14:05 +0000 (16:14 -0500)]
room list renderer is now aware of which rooms are forum view:

47 hours agoMoved the room list from the sidebar to the main viewing pane.
Art Cancro [Sun, 23 Jan 2022 21:01:16 +0000 (16:01 -0500)]
Moved the room list from the sidebar to the main viewing pane.
This is going to turn into a "forum list" and we'll do something
else for mailboxes.

2 days agoTweaked the icons a bit
Art Cancro [Sun, 23 Jan 2022 06:28:23 +0000 (01:28 -0500)]
Tweaked the icons a bit

2 days agoThe "Post message" button in forum view is now active.
Art Cancro [Sat, 22 Jan 2022 21:56:29 +0000 (16:56 -0500)]
The "Post message" button in forum view is now active.

2 days agoSet up a "new item" dispatcher so it can be different for each view
Art Cancro [Sat, 22 Jan 2022 21:24:09 +0000 (16:24 -0500)]
Set up a "new item" dispatcher so it can be different for each view

2 days agoAdded a button to the screen that can be populated and brought into
Art Cancro [Sat, 22 Jan 2022 21:02:22 +0000 (16:02 -0500)]
Added a button to the screen that can be populated and brought into
view whenever a "new item" command is available, such as "Post message"
or "Enter mail" or "New calendar item"

9 days agoExplain in comments how the connection pool works.
Art Cancro [Sat, 15 Jan 2022 20:58:46 +0000 (15:58 -0500)]
Explain in comments how the connection pool works.

9 days agoI was able to simplify the login code too. ctdl_startup() is now called at landing...
Art Cancro [Sat, 15 Jan 2022 20:41:53 +0000 (15:41 -0500)]
I was able to simplify the login code too.  ctdl_startup() is now called at landing, at login, and logout.  It always does The Right Thing.

9 days agook, that function needed to be async
Art Cancro [Sat, 15 Jan 2022 20:37:44 +0000 (15:37 -0500)]
ok, that function needed to be async

10 days agoSimplified the logout javascript
Art Cancro [Sat, 15 Jan 2022 20:28:54 +0000 (15:28 -0500)]
Simplified the logout javascript

11 days agoA little more cosmetic work on the login modal.
Art Cancro [Fri, 14 Jan 2022 16:29:17 +0000 (11:29 -0500)]
A little more cosmetic work on the login modal.
Still not in its final ultra-pretty form but it looks semi-presentable now.

11 days agobanner change
Art Cancro [Fri, 14 Jan 2022 16:10:46 +0000 (11:10 -0500)]
banner change

11 days agoThis is a better version of detect_logged_in() for webcit-ng that
Art Cancro [Fri, 14 Jan 2022 16:08:55 +0000 (11:08 -0500)]
This is a better version of detect_logged_in() for webcit-ng that
checks the server cookie instead of clumsily attempting a command.
This works synchronously so it can be combined with other commands
without creating a race condition.  Also moved the login screen to
a modal.

11 days agoRemoved some debugs that are no longer needed now that the listsub rework is complete...
Art Cancro [Thu, 13 Jan 2022 23:38:34 +0000 (18:38 -0500)]
Removed some debugs that are no longer needed now that the listsub rework is complete.  Also updated the netconfig specification to remove the obsolete pending command.

12 days agoBig change to mailing list subscription/unsubscription!
Art Cancro [Thu, 13 Jan 2022 16:48:37 +0000 (11:48 -0500)]
Big change to mailing list subscription/unsubscription!

The old confirmation method involved generating a confirmation token
during the first opt, which was mailed to the user and saved to disk
so they could confirm it in the second opt.  In the new code, the
token can be re-generated persistently by the server using a
combination of the email address, the room name, and a host key that
is known only to the site operator (stored in the config db).  So
there is no longer a need to store the pending request, and the
confirmation links are valid forever (and reusable!).

Aside from being algorithmically nifty, this will also give us the
ability to implement "one click unsubscribe" in the near future.

12 days agoGenerate a random 100-byte string to be used as a host key for hashing various things.
Art Cancro [Wed, 12 Jan 2022 21:18:11 +0000 (16:18 -0500)]
Generate a random 100-byte string to be used as a host key for hashing various things.

12 days agoSeed the random number generator before the config system is initialized.
Art Cancro [Wed, 12 Jan 2022 21:04:12 +0000 (16:04 -0500)]
Seed the random number generator before the config system is initialized.

13 days agoRelease version 949 generated by v949
Art Cancro [Wed, 12 Jan 2022 19:29:10 +0000 (14:29 -0500)]
Release version 949 generated by

13 days agoChange TLS_server_method() to SSLv23_server_method() because people are still using...
Art Cancro [Wed, 12 Jan 2022 18:51:09 +0000 (13:51 -0500)]
Change TLS_server_method() to SSLv23_server_method() because people are still using older builds that don't have the new name.

13 days agomissed a few references to delete
Art Cancro [Tue, 11 Jan 2022 23:54:49 +0000 (18:54 -0500)]
missed a few references to delete

13 days agoRemoved APOP authentication from the text client. No one has ever used it and the...
Art Cancro [Tue, 11 Jan 2022 23:27:00 +0000 (18:27 -0500)]
Removed APOP authentication from the text client.  No one has ever used it and the server doesn't even support it anymore.

2 weeks agoMultiple invocations of HELO and/or EHLO from an SMTP client now replace, rather...
Art Cancro [Tue, 11 Jan 2022 05:00:59 +0000 (00:00 -0500)]
Multiple invocations of HELO and/or EHLO from an SMTP client now replace, rather than append to, the helo_node variable.

2 weeks agoRelease version 948 generated by v948
Art Cancro [Mon, 10 Jan 2022 23:03:11 +0000 (18:03 -0500)]
Release version 948 generated by

2 weeks agossl ciphers had to be set to its old value of
Art Cancro [Mon, 10 Jan 2022 22:42:26 +0000 (17:42 -0500)]
ssl ciphers had to be set to its old value of
instead of
even though the latter works just fine in WebCit, works just fine
in all protocols on the development host, but causes all sorts of
chaos on Uncensored.  I don't know why.

Art Cancro [Mon, 10 Jan 2022 22:37:52 +0000 (17:37 -0500)]

Art Cancro [Mon, 10 Jan 2022 21:58:00 +0000 (16:58 -0500)]

2 weeks agoTesting to see if SSLv23_server_method() is actually the one we want
Art Cancro [Mon, 10 Jan 2022 21:37:57 +0000 (16:37 -0500)]
Testing to see if SSLv23_server_method() is actually the one we want

Art Cancro [Mon, 10 Jan 2022 21:10:34 +0000 (16:10 -0500)]

2 weeks agoRelease version 947 generated by v947
Art Cancro [Mon, 10 Jan 2022 19:54:58 +0000 (14:54 -0500)]
Release version 947 generated by

2 weeks agoI got a little too eager in removing old cruft from the TLS code. Not setting the...
Art Cancro [Mon, 10 Jan 2022 19:54:54 +0000 (14:54 -0500)]
I got a little too eager in removing old cruft from the TLS code.  Not setting the correct cipher list broke production in a way that didn't fail in development.

2 weeks agoRelease version 946 generated by v946
Art Cancro [Mon, 10 Jan 2022 18:31:36 +0000 (13:31 -0500)]
Release version 946 generated by

2 weeks agoSwitch out the key/cert in a critical section (mutex wrapped). This will prevent...
Art Cancro [Mon, 10 Jan 2022 16:59:07 +0000 (11:59 -0500)]
Switch out the key/cert in a critical section (mutex wrapped).  This will prevent multiple threads from doing it at once and leaking memory (thanks zcw159357)

2 weeks agoUnified the openssl library initialization code
Art Cancro [Mon, 10 Jan 2022 16:28:03 +0000 (11:28 -0500)]
Unified the openssl library initialization code

2 weeks agoReplaced all instances of SSLv23_server_method() with TLS_server_method()
Art Cancro [Mon, 10 Jan 2022 16:16:43 +0000 (11:16 -0500)]
Replaced all instances of SSLv23_server_method() with TLS_server_method()
(thanks to zcw159357 for suggesting this)

2 weeks agoRelease version 945 generated by v945
Art Cancro [Sat, 8 Jan 2022 21:32:09 +0000 (16:32 -0500)]
Release version 945 generated by

2 weeks agoRelease version 944 generated by v944
Art Cancro [Sat, 8 Jan 2022 21:18:08 +0000 (16:18 -0500)]
Release version 944 generated by

2 weeks agoNew ctx change semantics in WebCit-NG
Art Cancro [Sat, 8 Jan 2022 21:17:18 +0000 (16:17 -0500)]
New ctx change semantics in WebCit-NG

2 weeks agoNew ctx change semantics in WebCit-classic
Art Cancro [Sat, 8 Jan 2022 21:14:08 +0000 (16:14 -0500)]
New ctx change semantics in WebCit-classic

2 weeks agoWhen a new certificate is installed, allocate a new ssl_ctx and bind to it; then...
Art Cancro [Sat, 8 Jan 2022 18:42:27 +0000 (13:42 -0500)]
When a new certificate is installed, allocate a new ssl_ctx and bind to it; then wait a moment before freeing the old one to let any in-progress binds complete.

2 weeks agoSignificant cleanup of the code that generates a self-signed certificate. There...
Art Cancro [Sat, 8 Jan 2022 18:30:23 +0000 (13:30 -0500)]
Significant cleanup of the code that generates a self-signed certificate.  There is no need to keep the CSR around so we don't do that anymore.  The remainder of the code contains only what is needed; the rest I had copied from OpenSSL example code 20 years ago and never looked at again.

2 weeks agoremoved some unused variables
Art Cancro [Fri, 7 Jan 2022 21:20:39 +0000 (16:20 -0500)]
removed some unused variables

2 weeks agoRemoved the local implementation of snprintf() and vsnprintf() that we hacked in...
Art Cancro [Fri, 7 Jan 2022 16:54:54 +0000 (11:54 -0500)]
Removed the local implementation of snprintf() and vsnprintf() that we hacked in two decades ago to work around broken or missing system libraries.  Not needed anymore.

2 weeks agossl_ctx = SSL_CTX_new(SSLv23_server_method()) instead of using a temporary variable...
Art Cancro [Fri, 7 Jan 2022 16:38:19 +0000 (11:38 -0500)]
ssl_ctx = SSL_CTX_new(SSLv23_server_method()) instead of using a temporary variable f or the server method.  (Changed in Citadel Server, WebCit Classic, and WebCit-NG)

2 weeks agorandom acts of style cleanup
Art Cancro [Thu, 6 Jan 2022 04:41:41 +0000 (23:41 -0500)]
random acts of style cleanup

2 weeks agoWhile hunting for an internet address bug, cleaning up more style.
Art Cancro [Wed, 5 Jan 2022 21:52:23 +0000 (16:52 -0500)]
While hunting for an internet address bug, cleaning up more style.

2 weeks agoI was checking something in serv_user.c and just couldn't help myself -- style cleanup
Art Cancro [Wed, 5 Jan 2022 21:10:06 +0000 (16:10 -0500)]
I was checking something in serv_user.c and just couldn't help myself -- style cleanup

2 weeks agoWhen checking to see whether we have to rebind a new key and/or
Art Cancro [Wed, 5 Jan 2022 18:49:17 +0000 (13:49 -0500)]
When checking to see whether we have to rebind a new key and/or
certificate, the stored "previous value" is now the sum of the
existing key *and* certificate modification times.  This causes a
rebind to occur if either file's modification time is touched.
It does not matter if this rolls over on 32-bit systems because
we are only checking to see if the value changed, not for any
particular date comparison.

3 weeks agoMore of me not being able to look at code without poking around changing everything...
Art Cancro [Tue, 4 Jan 2022 14:49:35 +0000 (09:49 -0500)]
More of me not being able to look at code without poking around changing everything to C99 style comments

3 weeks agothe crufty code, it stings...
Art Cancro [Mon, 3 Jan 2022 22:56:01 +0000 (17:56 -0500)]
the crufty code, it stings...

3 weeks agoI went looking for something in the text client, and was reminded
Art Cancro [Mon, 3 Jan 2022 22:33:19 +0000 (17:33 -0500)]
I went looking for something in the text client, and was reminded
how absolutely rubbish my coding style was in the late 1980s.  I did
a few bits of cleanup but most of that code ought to be rewritten.
The good news is that unlike WebCit, I believe we can redo the text
client in place over a period of time.

3 weeks agoReplyQuoted works now.
Art Cancro [Mon, 3 Jan 2022 22:04:37 +0000 (17:04 -0500)]
ReplyQuoted works now.

3 weeks agoCleaned up the editor-div-replacement thing
Art Cancro [Mon, 3 Jan 2022 21:47:43 +0000 (16:47 -0500)]
Cleaned up the editor-div-replacement thing

3 weeks agoThe current local date and time now displays in the message entry div.
Art Cancro [Mon, 3 Jan 2022 20:21:00 +0000 (15:21 -0500)]
The current local date and time now displays in the message entry div.

3 weeks agoMessage date/time is now sent to the browser in unix timestamp format
Art Cancro [Mon, 3 Jan 2022 20:13:44 +0000 (15:13 -0500)]
Message date/time is now sent to the browser in unix timestamp format
and converted to a displayable date/time in the local timezone by the

3 weeks agossl error handling
Art Cancro [Sat, 1 Jan 2022 23:23:47 +0000 (18:23 -0500)]
ssl error handling

3 weeks agoRemoved some comments
Art Cancro [Sat, 1 Jan 2022 23:15:00 +0000 (18:15 -0500)]
Removed some comments

3 weeks agominor comment change
Art Cancro [Sat, 1 Jan 2022 22:50:37 +0000 (17:50 -0500)]
minor comment change

3 weeks agoSet up a proper favicon.ico in both webcit-classic and webcit-ng with a version of...
Art Cancro [Sat, 1 Jan 2022 22:32:03 +0000 (17:32 -0500)]
Set up a proper favicon.ico in both webcit-classic and webcit-ng with a version of the Citadel logo in it

3 weeks agoThe "reply" function in webcit-ng now correctly replaces the editor div with
Art Cancro [Sat, 1 Jan 2022 20:49:08 +0000 (15:49 -0500)]
The "reply" function in webcit-ng now correctly replaces the editor div with
the final rendered version of the message that came back from the server.
It looks nice.

3 weeks agorandomString() is now always the same length and always begins with "ctdl_"
Art Cancro [Sat, 1 Jan 2022 20:31:31 +0000 (15:31 -0500)]
randomString() is now always the same length and always begins with "ctdl_"

3 weeks agoIt's 2022 ... updating all of the copyright notices in webcit-ng
Art Cancro [Sat, 1 Jan 2022 20:20:21 +0000 (15:20 -0500)]
It's 2022 ... updating all of the copyright notices in webcit-ng

3 weeks agoRelease version 943 generated by v943
Art Cancro [Thu, 30 Dec 2021 17:38:21 +0000 (12:38 -0500)]
Release version 943 generated by

3 weeks agoList-Unsubscribe: header is now being generated and is correct!
Art Cancro [Thu, 30 Dec 2021 17:38:11 +0000 (12:38 -0500)]
List-Unsubscribe: header is now being generated and is correct!

3 weeks agomore idle style-cleanup work
Art Cancro [Thu, 30 Dec 2021 17:24:53 +0000 (12:24 -0500)]
more idle style-cleanup work

3 weeks agolistsub.c: style cleanup
Art Cancro [Thu, 30 Dec 2021 17:13:13 +0000 (12:13 -0500)]
listsub.c: style cleanup

3 weeks agoExtend the source_room field all the way into the SMTP delivery loop.
Art Cancro [Wed, 29 Dec 2021 22:53:59 +0000 (17:53 -0500)]
Extend the source_room field all the way into the SMTP delivery loop.
Tested adding SMTP headers directly into the outgoing message at the
moment of transmission -- it worked really well.  Temporarily adding
an "X-Citadel-Room:" header as a placeholder, but in the next couple
of commits we will make it a "List-Unsubscribe:" header.

3 weeks agoWhen delivering mailing list messages, populate the sending_room
Art Cancro [Wed, 29 Dec 2021 19:47:34 +0000 (14:47 -0500)]
When delivering mailing list messages, populate the sending_room
field of the recipient list.  This in turn populates the source_room
directive in the SMTP delivery list, which we will use soon.

3 weeks agoFucking hell. We actually HAVE a "Allow non-subscribers to mail to
Art Cancro [Wed, 29 Dec 2021 16:28:48 +0000 (11:28 -0500)]
Fucking hell.  We actually HAVE a "Allow non-subscribers to mail to
this room" flag.  I was confused by the poor wording of this option
in the text client, and screwed up the server's behavior when I
rewrote the mailing list server.  It's fixed now, and once again
has the correct behavior: anyone can email a room when the flag is
set, and subscribers can email the room regardless of the flag.

3 weeks agoWebCit-NG:
Art Cancro [Tue, 28 Dec 2021 21:31:53 +0000 (16:31 -0500)]
* Force webcit to be on the same host as citserver
* Remove local keys directory, use the ones from citserver directory
* Auto re-bind key and cert if either one changes
* Support .well-known directory for static content, supporting HTTP-01

4 weeks agosetup was still in the makefile , oooops
Art Cancro [Mon, 27 Dec 2021 22:49:01 +0000 (17:49 -0500)]
setup was still in the makefile , oooops

4 weeks agoWe have to push the changes *and* the tags
Art Cancro [Mon, 27 Dec 2021 22:43:02 +0000 (17:43 -0500)]
We have to push the changes *and* the tags

4 weeks agoRelease version 942 generated by
Art Cancro [Mon, 27 Dec 2021 22:40:40 +0000 (17:40 -0500)]
Release version 942 generated by

4 weeks agoCitadel Server and WebCit (classic) now both reload the key and cert if the modificat...
Art Cancro [Mon, 27 Dec 2021 22:30:09 +0000 (17:30 -0500)]
Citadel Server and WebCit (classic) now both reload the key and cert if the modification time of either one changes.  This should allow us to replace or renew the certificate during normal operation without restarting.

4 weeks agoNot sure what the point of that second call to SSL_accept() was for, but it was alway...
Art Cancro [Mon, 27 Dec 2021 20:51:58 +0000 (15:51 -0500)]
Not sure what the point of that second call to SSL_accept() was for, but it was always failing, and removing it seems to be fine

Art Cancro [Mon, 27 Dec 2021 20:49:38 +0000 (15:49 -0500)]
1. WebCit must now run on the same host as Citadel Server, which is how everyone runs it anyway.
2. WebCit now uses the SSL key and Certificate from the Citadel Server directory.

4 weeks agoRemoved the unused 'selenium' directory
Art Cancro [Mon, 27 Dec 2021 19:31:57 +0000 (14:31 -0500)]
Removed the unused 'selenium' directory

4 weeks agoRemoved the obsolete 'setup' utility. It is not used by any currently supported...
Art Cancro [Mon, 27 Dec 2021 19:27:08 +0000 (14:27 -0500)]
Removed the obsolete 'setup' utility.  It is not used by any currently supported installation method.
Removed the unfinished 'setup wizard'.
Removed the unused 'tests' directory.

4 weeks agoFinally removed the cached/hashed static directory stuff. This should put us into...
Art Cancro [Mon, 27 Dec 2021 16:09:11 +0000 (11:09 -0500)]
Finally removed the cached/hashed static directory stuff.  This should put us into a position to get the http-01 challenge working.

4 weeks agoRemoved vestiges of the epic editor
Art Cancro [Sun, 26 Dec 2021 15:54:02 +0000 (10:54 -0500)]
Removed vestiges of the epic editor

4 weeks agoRemoved the epic editor from the tree. Why was it even there? It wasn't being used.
Art Cancro [Sun, 26 Dec 2021 15:49:33 +0000 (10:49 -0500)]
Removed the epic editor from the tree.  Why was it even there?  It wasn't being used.

4 weeks agoI need to make the static web server just a static web server. I hate working in...
Art Cancro [Wed, 22 Dec 2021 21:46:50 +0000 (16:46 -0500)]
I need to make the static web server just a static web server.  I hate working in webcit classic because it's such a tangled mess.  The present commit just cleans up some old cruft; there is no actual change in functionality yet.  The next couple of commits will attempt to only cache the templates while using a regular file open for everything else.  There's no need to cache everything else because the operating system can do it better than we can.  KISS principle.  Coming soon to a webcit near you.

5 weeks agoCleanup of crypto.c in wc-classic to prepare for certificate updates during runtime
Art Cancro [Tue, 21 Dec 2021 18:45:33 +0000 (13:45 -0500)]
Cleanup of crypto.c in wc-classic to prepare for certificate updates during runtime

5 weeks agoRemoved more legacy cruft no longer needed when OpenSSL>=v1.1
Art Cancro [Tue, 21 Dec 2021 18:35:27 +0000 (13:35 -0500)]
Removed more legacy cruft no longer needed when OpenSSL>=v1.1

5 weeks agoOpenSSL no longer requires thread locking callbacks. REMOVED FROM WEBCIT-NG
Art Cancro [Mon, 20 Dec 2021 20:50:00 +0000 (15:50 -0500)]
OpenSSL no longer requires thread locking callbacks.  REMOVED FROM WEBCIT-NG

5 weeks agoOpenSSL no longer requires thread locking callbacks. REMOVED FROM WEBCIT CLASSIC
Art Cancro [Mon, 20 Dec 2021 20:47:01 +0000 (15:47 -0500)]
OpenSSL no longer requires thread locking callbacks.  REMOVED FROM WEBCIT CLASSIC

5 weeks agoOpenSSL no longer requires thread locking callbacks. REMOVED FROM CITSERVER
Art Cancro [Mon, 20 Dec 2021 20:42:51 +0000 (15:42 -0500)]
OpenSSL no longer requires thread locking callbacks.  REMOVED FROM CITSERVER

5 weeks agoRemoved SSL cleanup function. Let the operating system do this for us.
Art Cancro [Sun, 19 Dec 2021 22:39:01 +0000 (17:39 -0500)]
Removed SSL cleanup function.  Let the operating system do this for us.

5 weeks agoserv_pop3.c: updated to latest style guidelines
Art Cancro [Sun, 19 Dec 2021 21:58:01 +0000 (16:58 -0500)]
serv_pop3.c: updated to latest style guidelines

5 weeks agoNew functions to activate and deactivate the Loading... modal
Art Cancro [Wed, 15 Dec 2021 05:03:15 +0000 (00:03 -0500)]
New functions to activate and deactivate the Loading... modal

5 weeks agoIf div names are random strings, they don't need to start with "ctdl_"
Art Cancro [Wed, 15 Dec 2021 00:31:21 +0000 (19:31 -0500)]
If div names are random strings, they don't need to start with "ctdl_"

5 weeks agoSlowly becoming a good JavaScript developer. :) Don't pass around div names when...
Art Cancro [Wed, 15 Dec 2021 00:14:51 +0000 (19:14 -0500)]
Slowly becoming a good JavaScript developer.  :)    Don't pass around div names when we can actually pass around references to the divs themselves.  This should shave off a few cycles because we don't have to keep calling document.getElementById()

5 weeks agoscroll_to works again
Art Cancro [Tue, 14 Dec 2021 23:23:39 +0000 (18:23 -0500)]
scroll_to works again

5 weeks agoAppend messages to the DOM tree as div elements instead of as text. This preserves...
Art Cancro [Tue, 14 Dec 2021 22:48:31 +0000 (17:48 -0500)]
Append messages to the DOM tree as div elements instead of as text.  This preserves the document tree's integrity when a malformed message arrives.

5 weeks agoMajor change to the javascript forum view. We now wait for all messages to be loaded...
Art Cancro [Tue, 14 Dec 2021 21:17:53 +0000 (16:17 -0500)]
Major change to the javascript forum view.  We now wait for all messages to be loaded before rendering them all in one shot.  Rendering works, opening the reply box works, saving a message works, but we still have to figure out how to render a message in the location where it was entered.  Or maybe that's not a good idea?  Also the scroll_to semantics are broken but we are in a better position to redo this in a simpler way.

6 weeks agoopen the reply box with .append() instead of tweaking outerHTML
Art Cancro [Mon, 13 Dec 2021 20:18:54 +0000 (15:18 -0500)]
open the reply box with .append() instead of tweaking outerHTML

6 weeks agonew div name
Art Cancro [Mon, 13 Dec 2021 19:25:48 +0000 (14:25 -0500)]
new div name

6 weeks agobeautiful
Art Cancro [Mon, 13 Dec 2021 01:10:35 +0000 (20:10 -0500)]

6 weeks now generates more meaningful descriptions of tags
Art Cancro [Mon, 13 Dec 2021 00:40:44 +0000 (19:40 -0500)] now generates more meaningful descriptions of tags

6 weeks agoHow about that ... we're now correctly handling the reply-references and carrying...
Art Cancro [Sat, 11 Dec 2021 02:11:13 +0000 (21:11 -0500)]
How about that ... we're now correctly handling the reply-references and carrying over the subject, and Wes is on the way here with a burger for me.