about summary refs log tree commit homepage
path: root/Documentation/design_www.txt
DateCommit message (Collapse)
2016-05-14rename most instances of "list" to "inbox"
A public-inbox is NOT necessarily a mailing list, but it could serve as an input point for zero, one, or infinite mailing lists :D
2016-04-15www: redirect /$MESSAGE_ID/f/ endpoints
Quote-folding was a major design mistake pre-1.0. Since this project is still in its infancy and unlikely to be in wide use at the moment, redirect the /f/ endpoints back to the plain message.
2016-04-15doc: update design notes on WWW development
Start documenting our anchors and CSS classes for in case users want to write their own CSS or even JavaScript for local usage.
2016-04-13www: stop generating /$MESSAGE_ID/f/ links
Quote-folding can be detrimental as it fails to hide the real problem of over-quoting. Over-quoting wastes bandwidth and space for all readers, not just WWW readers of the public-inbox. So hopefully removing quote-folding support from the WWW interface can shame those repliers into quoting only relevant portions of what they reply to.
2016-02-24www: support $MESSAGE_ID/R/ endpoint for replies
Setting the "In-Reply-To:" header via mailto: links is not well-supported and should probably not be encouraged unless the client situation improves. So instead, teach users more widely-supported ways of setting the In-Reply-To: header to ensure proper threading of replies.
2016-02-07support smart HTTP cloning
This requires POST and (small file) upload support from the PSGI/Plack web server. CGI.pm is currently not supported with this feature. We'll serve everything git can handle by default for performance in the general case. To avoid introducing cognitive overhead for sysadmins managing existing HTTP backends, we do not introduce new configuration directives. Thus, setting http.uploadpack=false in the relevant git config file for each public-inbox (ssoma) git repo will disable smart HTTP for CPU/memory-constrained systems. Technically we could support http.receivepack to allow posting messages to a public-inbox over HTTP(S), but that breaks the public-inbox model of encouraging users to Cc: everyone. Again, we encourage users to Cc: everyone to reduce the chance of a public-inbox becoming a centralized point of failure/censorship.
2016-02-01doc: misc cleanups and whitespace additions
Add a few newlines for readability (perhaps at the expense of economy). Stop mentioning "Open Source" as it is redundant and "Free Software" fits our goals, better.
2015-09-04doc: design_www: more accessibility guidelines
Despite best intentions, things like strike-throughs and italics won't render well and will harm accessibility.
2015-09-01completely revamp URL structure to shorten permalinks
This allows common /m/ links to be used without a prefix, saving 2 precious bytes for permalinks and raw messages. Old URLs continue to redirect.
2015-09-01www: root atom feed is "new.atom" and not "atom.xml"
The MIME type entry for Atom feed relies on "atom", so allow properly-configured static file servers to serve it with the correct Content-Type header.
2015-09-01implement per-thread Atom feeds
This allows users to subscribe to only a single thread with their feed reader without subscribing to the rest of the thread. Update our endpoint notes while we're at it.
2015-08-23.txt links return an mbox instead
This improves compatibility and allows individual messages to be concatenated into an existing mbox without further modifications. "git format-patch" does something similar (but does not do "From " line escaping(!))
2015-08-20misc documentation updates
Threading in Xapian is mostly supported by now; so start documenting things.
2015-08-20replace references to lynx
Table rendering in lynx is crap compared to w3m and links. However, we still use it for filtering HTML since the renderer is otherwise nice...
2015-02-09doc/design_www: remove item for auto-generated links
SpamAssassin queries URI blacklists, so it's probably OK to start generating links in the future...
2014-04-26huge refactor of encoding handling
Hopefully this simplifies and corrects our usage of Perl encoding APIs.
2014-04-22fix quoted URL generation in feeds
While we're at it, make sure strange characters are escaped properly in Message-IDs. We'll need tests for all this behavior.
2014-04-21feed: there is only one atom feed, with all messages
This is not a blog. All posts, whether replies or not, carry equal weight.
2014-04-21doc: update design_www and add HACKING file
Document some of the stranger choices I've made.
2014-04-19various documentation updates
We have an HTML homepage, OMG!
2014-04-19cgi: index pages allow iterating some pagination
This allows WWW readers to slowly page through the entire history of the mailing list.
2014-04-10doc/design_www: add 301 URLs
We'll probably support these so they're easier-to-type and share.
2014-04-10cgi: wire up index + tests
Remove the specified /all.html while we're at it, we only have /all.atom.xml because it's convenient for feed readers.
2014-04-09doc/design_www: shorten URLs as much as possible
Message-IDs are extremely long already, so try to keep them short here.
2014-04-06doc: design_www note /full/ namespace for messages
We serve the short, abridge-quote version by default since it is (unfortunately) common practice to over-quote on mailing lists.
2014-04-05doc: add design documentation for WWW interface
Mainly, start with URL routes since that's what users usually see, first.