about summary refs log tree commit homepage
path: root/t/plack.t
DateCommit message (Collapse)
2019-01-08view: fix wrong date for non-Xapian/SQLite v1 users
We need to parse the MIME object in order to get the datestamp for those sites. Fixes: 7d02b9e64455 ("view: stop storing all MIME objects on large threads")
2019-01-04t/cgi.t: move expected failure tests to t/plack.t
No point in implementing these slowly with the CGI wrapper when PSGI is sufficient for testing.
2019-01-04t/cgi.t: move dumb HTTP git clone/fetch tests to plack.t
No need to test this via CGI .cgi is a wrapper around PSGI and PSGI tests are way faster.
2019-01-04t/cgi.t: remove atom.xml test
It is redundant with what is in t/plack.t
2019-01-04t/cgi.t: remove redundant redirect check
t/plack.t already has the same test.
2018-03-29www: cleanup expensive fallback for legacy URLs
Back in the day, we compressed long Message-IDs to SHA-1 hexdigests for the URL. This now redirects to a 301 in the hopes we can remove these checks some day to reduce overhead.
2018-02-07update copyrights for 2018
Using update-copyrights from gnulib While we're at it, use the SPDX identifier for AGPL-3.0+ to ease mechanical processing.
2017-06-26tests: deal with the removal of '.' from @INC in newer Perl
Oops, this is needed for Perl 5.22 (tested 5.24.1) since '.' was removed due to security problems. Fwiw, I consider this change to Perl an overreaction and do not agree with it.
2016-10-05thread: remove Mail::Thread dependency
Introduce our own SearchThread class for threading messages. This should allow us to specialize and optimize away objects in future commits.
2016-08-14www: do not unecessarily escape some chars in paths
Based on reading RFC 3986, it seems '@', ':', '!', '$', '&', "'", '; '(', ')', '*', '+', ',', ';', '=' are all allowed in path-absolute where we have the Message-ID. In any case, it seems '@' is fairly common in path components nowadays and too common in Message-IDs.
2016-07-07www: remove old footer generation code and normalize new.html
We now generate all of our HTML using WwwStream which forces us to have consistent headers and footers in the HTML itself. This also makes the search-capable vs search-less installs go to the new.html endpoint to maintain consistency (in case an admin decides to enable Xapian).
2016-07-02www: remove Plack::Request dependency entirely
Lighter and ever-so-slightly faster! Most importantly, this won't do non-obvious stuff behind our backs like trying to parse a POST request body for a query string param.
2016-05-28t/plack: ensure we can cascade on common endpoints
We don't serve things like robots.txt, favicon.ico, or .well-known/ endpoints ourselves, but ensure we can be used with Plack::App::Cascade for others.
2016-05-27config: fix NewsWWW fallback for newsgroups in HTTP URLs
Oops, added a test to prevent regressions while we're at it.
2016-05-02t/*.t: reduce -mda calls
Process startup times are atrocious for fast tests and there's far too much setup involved. Rely on git-fast-import instead; but more work is needed in this area.
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-03-03t/*.t: use identifiable tempdir names
This should make identifiying leftover directories due to SIGKILL-ed tests easier.
2016-01-09www: fix redirection loops
Sometimes users forget trailing slashes; but we should not punish them with infinite loops.
2015-12-27t/plack.t: fix test *with* plack installed... oops
Fixes commit 83fedde4cde6539386c9d3ecf37fb99d74af8d93 ("tests: fixup requirements for tests")
2015-12-26tests: fixup requirements for tests
We should be able to run tests on bare bones systems more easily.
2015-12-25examples/public-inbox.psgi: make output chunky by default
HTTP/1.1 clients will want persistent connections and need to know response terminations.
2015-09-06update copyright headers and email addresses
In the future, it should be possible to use this: git ls-files | UPDATE_COPYRIGHT_HOLDER='all contributors' \ UPDATE_COPYRIGHT_USE_INTERVALS=2 \ xargs /path/to/gnulib/build-aux/update-copyright
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-08-27implement legacy redirects for old URLs
We should not break existing URLs. Redirect them to the newer, less-ambiguous URLs to improve cache hit ratios.
2015-08-27wire up to display non-suffixed Message-ID links
These URLs are preferable in case somebody decides to get cute and use a suffix we would've used to prevent others from linking to their message. The common /m/$MESSAGE_ID/ URLs are now 4 characters shorter so may fit better on terminals.
2015-08-27wire up shorter, less ambiguous URLs
We will prefer URLs without suffixes for now to avoid ambiguity in case a Message-ID ends with ".html", ".txt", ".mbox.gz" or any other suffix we may use. Static file compatibility is preserved by using a trailing slash as most servers can/will fall back to an index.html file in this case. For raw text files, we will follow gmane's lead with "/raw"
2014-09-13line-wrap generated HTML source around attrs for readability
It's important to keep HTML source readable to folks who prefer to read raw HTML. This should improve readability of the HTML source by keeping line length in check without wasting bytes.
2014-05-01split out WWW package and CGI/PSGI-specific parts
This should allow us to more-easily test with Plack.