Repository navigation
Home
NewsCache is a caching server for Usenet news (NNTP). To newsreaders it looks like an ordinary news server; to the upstream news server it looks like a newsreader. It stores only what at least one client has asked for: when a client requests an article, NewsCache answers from its spool if it can, and otherwise fetches the article from the upstream server, stores it and passes it on.
Typical uses:
- A cache in front of a news server, to take load off it.
- A small "leaf node" that shows clients a full feed but stores only the groups and articles people actually read.
- One server for several upstreams: each newsgroup can be read from, and posted to, a different upstream server; clients configure just one.
-
Offline reading, with groups prefetched by
updatenews.
NewsCache is free software under the GNU General Public License, version 2 or later.
The current release is 1.3.21 (2026-10-20). Releases, with tarballs and checksums: https://github.com/go-while/NewsCache/releases.
The next release, 1.3.22, is in preparation on main. The main changes
(the full list is in the Unreleased section of
NEWS):
- Large groups: NewsCache fetches overview data only for the article numbers a client asks for, in steps of 10000, instead of the whole group. Binary groups with numbers above 6×10^10 work; article numbers are 64-bit everywhere. See Caching and Large Groups.
-
Articles by message-ID from the spool with the new option
History on(off by default). -
New commands:
HDR,LIST HEADERS,XPAT,XHDR <message-id>,LISTGROUPwith a range;CAPABILITIESnow shows what the client may actually do. See NNTP Commands. -
Security fixes: read rights were not enforced for
LISTGROUPand for message-ID requests; several stack buffer overflows; upstream passwords are no longer printed bynewscache -p. - Robustness: damaged spool files are moved aside and rebuilt instead of crashing NewsCache.
-
New options:
AuthFailureDelay,History;ListenTo DEFAULTnow listens on IPv6 and IPv4. -
Build:
configure.inis nowconfigure.ac, and the build runs without autotools warnings.
| Page | What it covers |
|---|---|
| Installation | Building from a tarball or git, Debian/Ubuntu package, Fedora, container image, systemd and inetd |
| Configuration | A minimal config, the global options, NewsServerList
|
| Access and Authentication |
AccessList, rights, logins (auth file, PAM, unix) |
| Upstream Servers and TLS | Several upstream servers, group patterns, TLS and certificates |
| Caching and Large Groups | How the cache works, large groups, the message-ID history, cleaning the spool, prefetching |
| NNTP Commands | The commands NewsCache answers, and how |
| Troubleshooting | Logs, checking the config, common problems, reporting bugs |
| Development | Tests, CI, branches, how changes and releases are made |
The full reference is in the manual pages
(newscache.conf(5),
newscache(8),
updatenews(8),
newscacheclean(8))
and the Texinfo manual
doc/NewsCache.texi
(installed as info NewsCache). The annotated sample configuration is
etc/newscache.conf-dist.
| Years | Who | What |
|---|---|---|
| 1995–2001 | Thomas Gschwind, TU Wien | Idea and prototype as a master's thesis; NewsCache 0.99.x |
| 2000–2008 | Herbert Straub | 1.1.x and 1.2rc6 (2004): access lists with PAM, newscacheclean
|
| 2008–2024 | Christof Meerwald | The 1.3 line in Subversion: IPv6, TLS with GnuTLS, systemd |
| since 2026 | this repository | Maintained here since 2026-10-18, with Christof Meerwald's agreement; releases from 1.3.17 on |
This repository is now the upstream. It holds the complete history:
Herbert Straub's GitHub import of 1.2rc6, with Christof Meerwald's
Subversion history on top (branch trunk). Details and the original
websites are in the
README.
- Bugs and questions: https://github.com/go-while/NewsCache/issues
- Before reporting, see Troubleshooting.
NewsCache is free software under the GNU General Public License, version 2 or (at your option) any later version — see COPYING. © 1996–1998 Thomas Gschwind, © 2001–2004 Herbert Straub, © 2008–2024 Christof Meerwald.