Relevant standards for public-inbox users and hackers
-----------------------------------------------------

Non-exhaustive list of standards public-inbox software attempts or
intends to implement.  This list is intended to be a quick reference
for hackers and users.

Given the goals of interoperability and accessibility; strict
conformance to standards is not always possible, but rather
best-effort taking into account real-world cases.  In particular,
"obsolete" standards remain relevant as long as clients and
data exists.

IETF RFCs
---------

rfc3977	- NNTP
	https://tools.ietf.org/html/rfc3977
	https://www.rfc-editor.org/errata_search.php?rfc=3977

rfc977	- NNTP (old)
	https://tools.ietf.org/html/rfc977
	https://www.rfc-editor.org/errata_search.php?rfc=977

rfc1036	- Standard for Interchange of USENET Messages
	https://tools.ietf.org/html/rfc1036
	https://www.rfc-editor.org/errata_search.php?rfc=1036

rfc5536	- Netnews Article Format
	https://tools.ietf.org/html/rfc5536
	https://www.rfc-editor.org/errata_search.php?rfc=5536

rfc5537	- Netnews Architecture and Protocols
	https://tools.ietf.org/html/rfc5537
	https://www.rfc-editor.org/errata_search.php?rfc=5537

rfc1738	- Uniform resource locators
	https://tools.ietf.org/html/rfc1738
	https://www.rfc-editor.org/errata_search.php?rfc=1738

rfc5092	- IMAP URL scheme
	https://tools.ietf.org/html/rfc5092
	https://www.rfc-editor.org/errata_search.php?rfc=5092

rfc5538	- NNTP URI schemes
	https://tools.ietf.org/html/rfc5538
	https://www.rfc-editor.org/errata_search.php?rfc=5538

rfc6048	- NNTP additions to LIST command (TODO)
	https://tools.ietf.org/html/rfc6048
	https://www.rfc-editor.org/errata_search.php?rfc=6048

rfc8054	- NNTP compression
	https://tools.ietf.org/html/rfc8054
	https://www.rfc-editor.org/errata_search.php?rfc=8054

rfc4642	- NNTP TLS
	https://tools.ietf.org/html/rfc4642
	https://www.rfc-editor.org/errata_search.php?rfc=4642

rfc8143	- NNTP TLS
	https://tools.ietf.org/html/rfc8143
	https://www.rfc-editor.org/errata_search.php?rfc=8143

rfc2980	- NNTP extensions (obsolete, but NOT irrelevant)
	https://tools.ietf.org/html/rfc2980
	https://www.rfc-editor.org/errata_search.php?rfc=2980

rfc4287	- Atom syndication
	https://tools.ietf.org/html/rfc4287
	https://www.rfc-editor.org/errata_search.php?rfc=4287

rfc4685	- Atom threading extensions
	https://tools.ietf.org/html/rfc4685
	https://www.rfc-editor.org/errata_search.php?rfc=4685

rfc2919	- List-Id mail header
	https://tools.ietf.org/html/rfc2919
	https://www.rfc-editor.org/errata_search.php?rfc=2919

rfc5064	- Archived-At mail header
	https://tools.ietf.org/html/rfc5064
	https://www.rfc-editor.org/errata_search.php?rfc=5064

rfc3986	- URI escaping
	https://tools.ietf.org/html/rfc3986
	https://www.rfc-editor.org/errata_search.php?rfc=3986

rfc1521	- MIME extensions
	https://tools.ietf.org/html/rfc1521
	https://www.rfc-editor.org/errata_search.php?rfc=1521

rfc2616	- HTTP/1.1 (newer updates should apply, too)
	https://tools.ietf.org/html/rfc2616
	https://www.rfc-editor.org/errata_search.php?rfc=2616

rfc7230	- HTTP/1.1 message syntax and routing
	https://tools.ietf.org/html/rfc7230
	https://www.rfc-editor.org/errata_search.php?rfc=7230

rfc7231	- HTTP/1.1 semantics and content
	https://tools.ietf.org/html/rfc7231
	https://www.rfc-editor.org/errata_search.php?rfc=7231

rfc822	- Internet message format (1982)
	https://tools.ietf.org/html/rfc822
	https://www.rfc-editor.org/errata_search.php?rfc=822

rfc2822	- Internet message format (2001)
	https://tools.ietf.org/html/rfc2822
	https://www.rfc-editor.org/errata_search.php?rfc=2822

rfc5322	- Internet message format (2008)
	https://tools.ietf.org/html/rfc5322
	https://www.rfc-editor.org/errata_search.php?rfc=5322

rfc3501	- IMAP4rev1
	https://tools.ietf.org/html/rfc3501
	https://www.rfc-editor.org/errata_search.php?rfc=3501

rfc2177	- IMAP IDLE
	https://tools.ietf.org/html/rfc2177
	https://www.rfc-editor.org/errata_search.php?rfc=2177

rfc2683	- IMAP4 Implementation Recommendations
	https://tools.ietf.org/html/rfc2683
	https://www.rfc-editor.org/errata_search.php?rfc=2683

rfc4978	- IMAP COMPRESS Extension
	https://tools.ietf.org/html/rfc4978
	https://www.rfc-editor.org/errata_search.php?rfc=4978

rfc2369	- URLs as Meta-Syntax for Core Mail List Commands
	https://tools.ietf.org/html/rfc2369
	https://www.rfc-editor.org/errata_search.php?rfc=2369

rfc8058	- Signaling One-Click Functionality for List Email Headers
	https://tools.ietf.org/html/rfc8058
	https://www.rfc-editor.org/errata_search.php?rfc=8058

rfc1081	- Post Office Protocol – Version 3
	https://tools.ietf.org/html/rfc1081
	https://www.rfc-editor.org/errata_search.php?rfc=1081

rfc1939	- Post Office Protocol – Version 3 (STD 53)
	https://tools.ietf.org/html/rfc1939
	https://www.rfc-editor.org/errata_search.php?rfc=1939

rfc2449	- POP3 extension mechanism
	https://tools.ietf.org/html/rfc2449
	https://www.rfc-editor.org/errata_search.php?rfc=2449

rfc2595	- STARTTLS for IMAP and POP3
	https://tools.ietf.org/html/rfc2595
	https://www.rfc-editor.org/errata_search.php?rfc=2595

rfc2384	- POP URL Scheme
	https://tools.ietf.org/html/rfc2384
	https://www.rfc-editor.org/errata_search.php?rfc=2384

Other relevant documentation
----------------------------

* IMAP capabilities registry and response codes:
  https://www.iana.org/assignments/imap-capabilities
  https://www.iana.org/assignments/imap-response-codes

* Documentation/technical/http-protocol.txt in git source code:
  https://public-inbox.org/git/9c5b6f0fac/s

* Various mbox formats (we currently emit and parse mboxrd)
  https://en.wikipedia.org/wiki/Mbox

* PSGI/Plack specifications (as long as our web frontend uses Perl5)
  git clone https://github.com/plack/psgi-specs.git

Copyright
---------

Copyright (C) all contributors <meta@public-inbox.org>
License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>