about summary refs log tree commit homepage
DateCommit message (Collapse)
2014-05-23spamassassin/user_prefs: do not favor paid whitelist services
Paid reputation management services are not encouraged.
2014-05-23spamassassin/user_prefs: disable non-English
Too much spam arrives without any readable English, and I (the server administrator) cannot easily tell if a non-English message is spam or not.
2014-05-21slrnspool2maildir: fix help and dir creation
Any existing directory should do.
2014-05-21MDA: cleanse headers in case of delivery
We nuke DKIM headers because we modify headers and sometimes the body, which may invalidate the message. We'll also nuke whatever Mailman nukes from messages to avoid phishing and leaking information.
2014-05-08mda: drop RFC2369 support for now
That should be use down stream by delivery agents.
2014-05-07www: attempt to improve formatting of footer
This looks nicer to me (totally subjective and open to bikeshedding :P)
2014-05-07consistently whitespace wrap on <pre> sections
Horizontal scrolling is a usability problem for GUI browsers, so help them avoid it. I love GUI users, really! :)
2014-05-06INSTALL: update support status
We probably won't bother with FastCGI until there is interest.
2014-05-05examples/apache2_perl.conf: set PI_CONFIG
This is easier and lower-impact than setting HOME anywhere.
2014-05-05www: set charset=UTF-8 in full message view
Oops, this was an oversight.
2014-05-05learn: set_list_headers on training
This is idempotent, and should actually/really prevent training loops.
2014-05-05mda: attempt to prevent training loops
2014-05-05feed: add atom feed link to the bottom
This should improve navigation as browsers may not make it obvious there is an Atom feed.
2014-05-05view: add newline before list-wide footer
Otherwise the reply link gets squished.
2014-05-05www: multi-line cloneurl maps to multiple lines
URLs may be long, so give each its own line.
2014-05-05www: add footers to HTML index and message views
Some advertising is necessary.
2014-05-04add various TODO items
Screen space is precious, and we do not need it in the abbreviated view.
2014-05-02view: API cleanup, remove "as_" prefix
These views are not OO, so the "as_" prefix makes little sense and "as_html" conflicts with Hval, which is OO.
2014-05-02reduce copies by passing string refs to Email::MIME
This should reduce data copies and memory usage, according to Email::Simple documentation.
2014-05-02git cat-file wrapper uses syswrite for writes
The requests we make to git cat-file --batch are guaranteed to be smaller than the 512 bytes required by PIPE_BUF, so there will be no partial writes. Bypass Perl IO layers and write directly to the pipe to avoid needing IO::Handle here.
2014-05-01thread: limit scope of monkey patch
Future versions of Mail::Thread may be released to fix this bug. However, since it's been about 8 years since the bug was reported..
2014-05-01workaround Mail::Thread memory leak
Thanks to Ask for the patch in https://rt.cpan.org/Public/Bug/Display.html?id=22817
2014-05-01purge Email::Address cache
This prevents memory bloat in case we're serving many requests with a large, diverse set of email addresses (potentially from malicious spammers).
2014-05-01split out WWW package and CGI/PSGI-specific parts
This should allow us to more-easily test with Plack.
2014-04-30examples: make web configs consistent and add README
Hopefully this is enough to get some folks started.
2014-04-30cgi: set charset in responses
This ought to prevent browsers from misguessing/misdetecting things.
2014-04-30add example configs for Apache2 mod_perl and CGI
These are probably still popular configurations in some settings, so include sample configurations to get folks started. These are trickier than an average CGI script to setup because we rely on pretty URLs from PATH_INFO and not ugly query parameters.
2014-04-30"git cat-file --batch" wrapper really mod_perl-compatible
IPC::Open* does not work well under mod_perl (probably because it does funky things with stdout/stderr). So use the POSIX dup2 functions instead, which work reliably on all POSIX-like platforms.
2014-04-30cgi: avoid warning after exec
Found with mod_perl2 (as it overrides exit).
2014-04-30cgi: remove dependency on IPC::Run in CGI
We may not have PATH available on some servers (e.g. webrick) and must rely on the hardcoded system PATH. My installation of IPC::Run does not seem to work without PATH set in the env, however normal Perl "open" calls work fine.
2014-04-30config: avoid double-slash in expand_path output
It looks ugly in error messages to have redundant slashes.
2014-04-30cgi: disable warnings for CGI::NOSTICKY
We probably know what we're doing, here...
2014-04-30favor "--git-dir=..." over "--git-dir ..."
This might improve grep-ability slightly and reduce allocations while we're at it.
2014-04-30feed: unset GIT_DIR and use "git --git-dir=.. log"
This should elimate all of our %ENV dependencies in the WWW portion of our code.
2014-04-29cgi: mid2blob does not depend on $ENV{GIT_DIR}
ENV changes do not propagate to child processes under mod_perl
2014-04-29implement our own cat-file --batch wrapper
We use --git-dir=... instead of $ENV{GIT_DIR} because ENV changes do not propagate easily with mod_perl.
2014-04-29config: use "git config --file" to avoid changing %ENV
%ENV changes do not propagate by default under a mod_perl2 environment, and we might as well work towards being thread-safe.
2014-04-28cgi: make CGI optional for Plack users
CGI.pm is on its way out, so do not make it a hard requirement for Plack users. We still support CGI-only installations because some sysadmins and distros may be very conservative.
2014-04-28cgi: wrap self_uri calls for Plack::Request
We should be adding automated tests for this, soon.
2014-04-28feed: call URI->as_string explicitly
Implicit string conversion is more confusing.
2014-04-28use relative URLs in HTML index
Browsers know how to follow relative URLs, so we may generate smaller HTML pages.
2014-04-28cgi: do not decode path_info
We only generate URI-escaped URLs, so we should not be decoding this into octets.
2014-04-28feed: swap order of "next" and "head" links
This is one less key stroke for somebody paging through the list history.
2014-04-28feed: avoid redirect on permalink
This saves one round-trip request response so reduces latency over slow links. The redirect only exists for convenience and isn't 100% reliable in case the Message-ID terminates with a .(html|txt) suffix.
2014-04-28feed: dead code elimination around dropped endpoints
public-inbox is for discussion, so top-level posts do not get special treatment.
2014-04-28mda: support aliased addresses
This mimics functionality found in -learn. Originally the design allowed for only one address per-list, but when migrating/hijacking existing mailing lists, having multiple addresses map to the same inbox is useful.
2014-04-28feed: disable navigation to previous page
This is unfortunately needed for scalability to long histories. The design of git requires it to traverse full history to walk forward in time, since commits can only record past history. Instead, replace "prev" with a "head" link to zip us back to the most recent page. Users who wish to go backwards can use browser history, which should always work on our old-fashioned HTML pages.
2014-04-28feed: pedantically quote HTML attributes
This is more correct, although it costs us 4 bytes.
2014-04-28allow running as a Plack app without CGI emulation
This might be slightly cleaner, though generating the base URL now has an ugly condition in it.
2014-04-28uri_escape => uri_escape_utf8
We should be able to deal with URIs with non-ASCII characters in them. I only found this problem when looking at archives with non-English spam :x