about summary refs log tree commit homepage
DateCommit message (Collapse)
2015-08-16view: hoist out index_walk function
We will reuse it for thread views when powered by Xapian.
2015-08-16view: reply threading adjustment
Give changes in subject their own line to reduce line wrapping, but avoid showing any redundant subjects by maintaining a hash of subjects already displayed.
2015-08-15thread: common sorting code
We'll be sharing the same threading, so it makes sense to sort replies using the same code and message headers without repeating ourselves. This also standardizes on sorting on X-PI-TS (Unix epoch in seconds) instead over using X-PI-Date differently in two different places
2015-08-15view: display replies in per-message view
This can be used to quickly scan for replies in a message without displaying an entire thread.
2015-08-15search: make search results more OO
This will relieve callers of the need to decode the data we store internally in Xapian
2015-08-15extract redundant Message-ID handling code
Quit repeating ourselves and use a common MID module instead.
2015-08-15search: implement index_sync to fixup indexer
We need to make the indexer executable and installable while we're at it.
2015-08-13initial search backend implementation
This shall allow us to search for replies/threads more easily.
2015-08-12view: consistent ordering of Cc: addresses
This fixes a minor test failure in t/cgi.t Tested with perl 5.18.2-2ubuntu1 on Ubuntu 14.04.3 LTS
2015-08-05view: remove unused $enc_mime Encoding object
Unneeded since commit e022d3377fd2c50fd9931bf96394728958a90bf3 ("huge refactor of encoding handling")
2015-08-05view: pass fallback encoding to enc_for
This fixes the fallback to message encoding if the message itself was not UTF-8
2015-08-02public-inbox-learn: preserve headers for ham injection
We must inject headers properly for injecting ham, otherwise List-Id headers get dropped.
2015-07-29view: simplify timestamp generation
It's seems less ambiguous to parse a consistent in quiet lists where messages are sparse.
2015-07-20feed: extract subroutines for threading
We'll be using this in the future for displaying per-thread views.
2015-07-14scripts/dc-dlvr.pre: ensure stderr gets back to the MTA
We want to be able to reject errors back to the MTA.
2015-07-14reject HTML loudly and automatically
This should hopefully reduce the delay between when a user fails to send plain-text to when an admin such as myself notices the HTML mail in a sea of spam. Unfortunately, this can lead to backscatter, so avoid doing it until its passed through spamc, at least.
2015-07-06feed: compile regexps only once
This avoids some runtime penalties associated with recompiling a regexp based on a constant local variable.
2015-07-06view: reduce empty <a>, use "id" instead of "name" attributes
This is probably more compliant, and saves us a few bytes on the uncompressed HTML.
2015-07-06feed: close body tag correctly in index
Oops, noticed by manual inspection. One day we'll run tidy in tests to validate.
2015-06-05public-inbox-mda: preserve SpamAssassin headers in spam
We want to be able to prioritize spam downstream to check for borderline cases.
2015-03-04view: fix linkification and quote-folding conflicts
We can't add newlines to links, unfortunately, because quote-folding is line-based and (being regexp-based) needs to happen after linkification.
2015-02-09view: generate links for common protocols in browsers
SpamAssassin queries URI blacklists, so it's probably OK to enable this without being used as a linkfarm.
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...
2015-01-12import_slrnspool: fork a process for each message
This prevents process growth when importing large messages. Memory growth could be due to the sliding sbrk window in glibc malloc or a circular reference in the Email::* Perl code somewhere.
2015-01-11import_slrnspool: load private config key
PublicInbox::Config->lookup won't return unknown keys
2015-01-11import_slrnspool: graceful exit for interruptibility
This should alleviate fears of interrupting the process.
2015-01-11import_slrnspool: make filtering optional
2015-01-11import_slrnspool: use ssoma-mda instead
Some mailing lists (e.g. git@vger.kernel.org) accept messages via Bcc: and possibly other things which get rejected by the strict PublicInbox::Filter rules. So rely on ssoma-mda instead. This prefers a recent revision of ssoma-mda (commit 7fce38e9 onwards) to display subject/author/date information in the commit message.
2015-01-11.gitignore: relax MYMETA pattern
Newer systems may use .json instead of .yml
2015-01-11filter: handle missing Content-Type
Some mailers may omit the Content-Type header entirely, so do detection and try to get the message through.
2015-01-11*slrnspool* old gmane archives set Original-To
Apparently it's not a problem with recent archives.
2015-01-11import_slrnspool: fix off-by-one error
We start with zero and only store the next valid ID.
2015-01-11scripts/import_slrnspool: new incremental importer
This allows incremental imports of slrn spools, ideal for tracking lists via gmane.
2014-12-22doc: generate README.html instead of index.html
This allows us to generate links without caring about discoverability and remains reasonably WYSIWYG for folks editing our documentation in their favorite $EDITOR
2014-12-22Documentation/txt2pre: support #fragments and ftp://
Occasionally we'll use these for links.
2014-11-13-learn: nuke HTML portions when training as ham
Sometimes people send HTML email and I forget to fixup in my MUA during moderation. Automatically strip out HTML portions instead.
2014-11-13view: account for filter bugs which leak HTML into the repo
Ugh, apparently there's a (yet-to-be-fixed) bug in the Filter code which caused an HTML message portion of a multipart message to be displayed on the web UI. Account for that and nuke it.
2014-11-02view: add time to entries older than one day
This is occasionally useful and we're not as starved for screen space now now that sender+timestamps are on a separate line.
2014-11-02view: rename "permalink" to "threadlink"
These may not be permanent, after all. Better threading support can be done for message views, so and the current index layout is still too busy and suboptimal.
2014-10-26examples/public-inbox.psgi: add usage to comments
I often forget how to run this
2014-10-26view: show raw message link as "raw"
"original" is a bit misleading, since we strip needless junk like HTML from messages before it ever hits git.
2014-10-05TODO: add mlmmj integration item
Because some folks will want to receive email.
2014-10-05doc: add TODO to the website
2014-10-05TODO: add a placeholder for search
While we're at it, fix up a typo.
2014-10-05view: tweak attribution line
This reduces unnecessary white space and consistently places the attribution under the Subject.
2014-10-04view: make the thread index less claustrophobic
At the cost of some vertical whitespace. More bikeshedding...
2014-10-04public-inbox-init: fix multi-address setup
We must support multi-address mailing lists, so we do not clobber existing addresses. However, we need to ensure idempotency and ensure existing addresses are not reset. Furthermore, we were not parsing the existing config correctly due to a leaking $/.
2014-09-22view: relax line break detection
Often times any succession of "---" denotes the rest of the message is too long to review at once.
2014-09-22public-inbox-init: manages the config files
This hopefully allows easier setup.
2014-09-15filter: ensure CRs do not show up in lynx conversions
Unix line endings are LF-only, so do not introduce or preserve CRLF line endings when reading from lynx.