Commit graph

25 commits

Author SHA1 Message Date
48dd285cd0 Removes use of stream-interactive-p. 2026-07-25 22:54:08 -03:00
0228f32cb1 Reduces the use of memory when reading articles. 2026-07-20 00:09:03 -03:00
5a176692db Optimizes procedures for posting the 100 MiB article.
But we're not yet ready to send such an article back to a client.  The
reason is most likely the fact that we read the entire article into
memory in fetch-article.  The new sensible idea is to not read the
body of articles into memory, but delay the body reading until the
last moment---of sending it out to the client.

Nevertheless, we're getting needlessly ambitious here because we don't
intend to support file attachments anyway.  We might do it just as an
exercise, if the end result looks good.  I think it's a good exercise
and I think we should do it.
2026-07-15 22:49:22 -03:00
6a9fcc1ffc Optimizes procedures for passing the 10 MiB article. 2026-07-15 21:50:54 -03:00
47e29139de Goes low-level for fast reading. 2026-07-15 19:33:38 -03:00
94d2e78447 Rewrites conforms? and post. All checks are done in conforms? now. 2026-06-11 01:30:06 -03:00
efa5ee3ccd Uses polymode in the GNU EMACS, not noweb-mode any longer. 2026-06-09 23:15:44 -03:00
Circling Skies
4412496fb6 Shortens the release command. 2024-12-21 18:47:23 -03:00
Circling Skies
eb2bd3cb36 Incorporates format-def, make-release into loop.nw. 2024-12-21 16:35:49 -03:00
Circling Skies
3850c72b6d Disables the NNTP repl command when --disables-nntp-repl is given. 2024-12-21 15:24:31 -03:00
Circling Skies
a89e088212 Remakes the binary if we said ``make release'' earlier. 2024-12-20 13:38:51 -03:00
Circling Skies
afe7d0e809 Doesn't post unless the article goes only to existing newsgroups. 2024-12-20 13:35:37 -03:00
Circling Skies
77c411756d Identifies each binary with a version tag.
It also includes scripts for formating Lisp code for people who will
read Lisp code directly.  It doesn't cost us much to organize the Lisp
output a bit.  In a similar spirit, I'm not including NOWEB as part of
the build process.  (Most users will not have NOWEB around to use it.)
So while the Makefile is pretty short because there's little to do,
Anyfile is the ANYWEB makefile.  ANYWEB is my modified, personal
version of NOWEB for Windows.  (The way I use this second makefile is
to make a shell alias called /amake/ that automatically invokes ``make
-f Anyfile'' for me.)
2024-12-19 19:53:48 -03:00
Circling Skies
de6c586755 Makes small adjustments et cetera. 2024-12-17 15:09:26 -03:00
Circling Skies
63d78f0e56 Improves the look of the error mesages in the REPL. 2024-12-16 10:34:58 -03:00
Circling Skies
6d5aebc361 Adjusts words et cetera. 2024-12-15 23:19:32 -03:00
Circling Skies
006fa693d3 Replaces tail-call with loop. 2024-12-15 23:09:39 -03:00
Circling Skies
bff30b9443 Clears input after quitting the REPL. 2024-12-15 23:09:10 -03:00
Circling Skies
e0c686774c Implements a REPL for Lisp hackers. 2024-12-15 23:08:21 -03:00
Circling Skies
643f64cb74 Nullifies the anonymous account password. 2024-12-15 23:06:34 -03:00
Circling Skies
e8b57771f5 Rewrites loop.lisp so that SBCL is happier. 2024-12-13 21:15:23 -03:00
Circling Skies
15d69d863a Fixes small typo. 2024-12-13 08:01:18 -03:00
Circling Skies
764258ca58 Uses SHA256 instead of sxhash from now on.
Notice that if a user doesn't change his password, we'll keep using
sxhash forever, which I think is quite okay.  The problem with sxhash
is not only that it's not cryptographic, but different systems will
produce different hashes.  For instance, Windows will produce one hash
and FreeBSD will produce another.  We're better off with something
more deterministic such as SHA256.
2024-12-12 20:00:19 -03:00
Circling Skies
2b5a21310a Makes lots of changes. (See full log.)
- Converts Makefile to UNIX line termination.

Makefiles cannot be formatted with DOS CRLF because, otherwise, we
could not escape \n to continue on a second line.  We end up escaping
\r and not \n.

- Fixes remove-account!

Procedure delete-if ``may modify sequence'', but we cannot be sure it
will modify it.  There are cases in which it does and there are cases
in which it doesn't.  Seeing it did modify in one case, I incorrectly
assumed it would modify in all cases---such is life.  Since I do want
to modify it always, I wrote delete-if*, which in calls setf to be
sure the list is overwritten.

- Avoids (load'ing "~/.sbclrc") and, instead, does what Quicklisp does.

It's not always the case that ~/.sbclrc exists.  But Quicklisp in each
installation knows what to do.  So we do what Quicklisp does in each
script that we use.

- Frees us from using sb-ext:{file-exists,file-does-not-exist}

Turns out SBCL 1.2.4.debian doesn't have these symbols.

- Adds command-line parsing.
- Adds install target to Makefile.
- Rewrites Makefile with a new strategy.
- Adds the daemon-tls/ service example.
- Adds the daemon service example.
- Convers all text files to LF instead of CRLF.
2024-12-12 13:21:43 -03:00
Circling Skies
a104a2d865 Fiat lux! 2024-12-05 18:23:19 -03:00