about summary refs log tree commit homepage
DateCommit message (Collapse)
2016-07-01examples/README: update URL to point to our HTTPS backend
It's browseable, too!
2016-07-01t/watch_maildir: quiet down spam check warning
Probably better than bloating our own API with configurable warning streams and such...
2016-07-01www_stream: fix stupid typo :x
Note to self: remember to run tests Fixes: 52052329aced ("git: allow cloning from the URL root, too")
2016-07-01git: allow cloning from the URL root, too
This means we can still show non-git users a somewhat browseable URL with a link to the README.html file while allowing git users to type less when cloning. All of the following are supported: git clone https://public-inbox.org/ public-inbox git clone https://public-inbox.org/public-inbox git clone https://public-inbox.org/public-inbox.git torsocks git clone http://ou63pmih66umazou.onion/public-inbox
2016-07-01update git repo location to https:// using GitHTTPBackend.pm
Might as well eat our own dogfood...
2016-07-01githttpbackend: allow git to be a regular scalar string
No point in forcing users to pass a hashref/object to get a single git directory.
2016-07-01searchview: add missing newline in search results
Hrm... is there a more obvious way to do an internal API for this while still being streamable?
2016-07-01www_stream: fix search for new.html endpoint
We want to avoid the bare './' wherever possible, but it doesn't seem possible here.
2016-06-30view: fix permalink and raw links at the top
Oops :x I really need to whip check-inbox.perl into shape or at least start running it, again. Fixes: e29518088b3f ("view: fix up some HTML injection via Message-ID vectors")
2016-06-30view: move per-message anchor to top in conversation view
This fixes the '^' (up) link in the $INBOX/new.html endpoint for search-less displays.
2016-06-30searchview: show result count in thread index, for now
I'm not sure what to show here, actually; but it's better than triggering an uninitialized variable warning.
2016-06-30view: reference posting style article on Wikipedia
Storage is precious when it is forever and distributed. And public-inbox aims to not only end Eternal September(*), but to build a world less-centralized than Usenet ever was: forkable discussion groups (*) https://en.wikipedia.org/wiki/Eternal_September
2016-06-30view: improve readability of msg_reply with here-doc
This should make formatting more apparent since we can rely on <pre> semantics.
2016-06-30www_stream: add response wrapper sub
This encapsulates an entire PSGI response array, hopefully making it easier to generate responses and avoid typos when setting the Content-Type.
2016-06-30view: fixup bad reference to new_msgid
Oops, this endpoint needs testing :x
2016-06-30Merge branch 'thread-view-skel'
* thread-view-skel: view: show thread size when linking to summary view: default to flat/hybrid thread display view: fix up some HTML injection via Message-ID vectors www: reinstate old thread view as an option view: show more nearby messages in flat thread view view: tweak thread/index header slightly feed: add $INBOX/new.html endpoint view: merge $state hash with existing $ctx view: show thread context in the thread-aware flat view www: use WwwStream for dumping thread and search views www: implement hybrid flat+thread conversation view
2016-06-30view: show thread size when linking to summary
This should give readers a better idea of what to expect.
2016-06-30view: default to flat/hybrid thread display
This is friendlier for people on small screens and usually eliminates the need to scroll horizontally.
2016-06-30view: fix up some HTML injection via Message-ID vectors
Oops, these were only introduced during the hybrid flat thread view reworking and never deployed.
2016-06-30www: reinstate old thread view as an option
This hybrid view is better than the old flat, but can still fall down compared to the old threaded view in some cases.
2016-06-30Revert "view: update git-send-email URL"
This reverts commit a391cf5aaf7181b5e5e20eb240c7ce50cbdf8fa2 as kernel.org is updating again. Ref: http://mid.gmane.org/xmqqpor18a2n.fsf@gitster.mtv.corp.google.com
2016-06-30view: show more nearby messages in flat thread view
Context is important, but so is conserving precious screen space. Decisions :<
2016-06-30view: tweak thread/index header slightly
This makes the top permalink/raw as well as the In-Reply-To show up without search. While we're at it, try to make the links on the thread index from the "X siblings, Y replies" more obvious.
2016-06-30feed: add $INBOX/new.html endpoint
This acts like the Atom feed; but should be viewable directly from browsers.
2016-06-30view: merge $state hash with existing $ctx
This reduces the level of indirection to reach certain objects within the hash and there are no namespace or lifetime conflicts anyways.
2016-06-30view: show thread context in the thread-aware flat view
This lets user have a small window of the context of the current message relative to other threads.
2016-06-30www: use WwwStream for dumping thread and search views
This allows us the HTTP server to react to backpressure from slow clients when writing. As a side effect, this also makes it easier for us to maintain a consistent header/footer across our HTML.
2016-06-30www: implement hybrid flat+thread conversation view
This should be more accessible to readers on narrow terminals (or giant fonts) while providing a chronological view which is also aware of message threading relationships.
2016-06-27view: HTML escape mailto: link
Oops, we cannot have bare '&' in mailto: links, either.
2016-06-27view: attribute in parent link for permalink message
Oops, but apparently this does not trigger errors?
2016-06-26inbox: avoid trying s// on undef
Oops, I guess I'm trigger-happy today. Fixes: 31a6ff1221fe ("inbox: ensure we do not show leading "From " lines")
2016-06-26inbox: ensure we do not show leading "From " lines
Some messages will be misimported due to an old bug, clean them up and ensure we do not propagate the mistake. Followup-to: a0c07cba0e5d ("mda: drop leading "From " lines again")
2016-06-26mda: drop leading "From " lines again
Oops... While we're at it, drop blank lines before the "From ", too, since it could happen.
2016-06-26spamcheck/spamc: fix compatibility with Perl 5.14.2
This is necessary for Debian 7.x (wheezy), since GLOB objects do not seem responsive to the can("fileno") check (we do a similar check in GitHTTPBackend).
2016-06-26watch_maildir: warn on spam check failures
It would be nice to know about spamcheck failures.
2016-06-26www: unescape '+' in query parameter to space
Fixes: fbcb7de93884b ("www: remove a few more Plack::Request dependencies")
2016-06-25TODO: add a few Xapian-related items
"git cat-file --batch" seems expensive for big repos and loading 70K+ tree objects in git isn't all that fast. Ideas are cheap, time, code, and testing are not :P
2016-06-25www_stream: linkify cloneurl entries if they're HTTP/HTTPS
They may be other public-inbox instances which are browseable, so provide a link to them to encourage their use as clones.
2016-06-25view: safer and optional quoting for --in-reply-to arg
Angle brackets around the --in-reply-to= arg for git send-email has been optional since git v1.5.3.2, so strip them and make the command-line argument easier-to-type.
2016-06-25address: remove Address::from_name
Address::names is sufficient to handle what from_name did.
2016-06-25view: show To/Cc destinations in conversation view
It is important to show the decentralized nature of communication in our web views.
2016-06-25address: beef up the module with name list extaction
We may remove from_name in the future. ...And disallow quotes in email addresses. Technically I believe they're allowed, but they're definitely uncommon and unlikely to show up in legitimate mail.
2016-06-25inbox: do not weaken already-weak refs
This quiets a (hopefully harmless) warning when a ref remains alive through several expiry timeouts.
2016-06-25http: cork chunked responses for small savings
This only affects Linux users with MSG_MORE support. We can avoid extra TCP overhead for sub-optimal chunk sizes by using MSG_MORE even with chunk trailers under Linux. This breaks real-time apps which require <= 200ms latency for streaming small packets (e.g. implementing "tail -F"), but the public-inbox WWW code does not (and will never) do such things.
2016-06-24mbox: reduce small packets for gzipped mboxes
We want to avoid sending 10 or 20-byte gzip headers as separate TCP packets to reduce syscalls and avoid wasting bandwidth.
2016-06-24githttpbackend: shallow clone workaround
Apparently git-http-backend exits with a non-zero status on shallow clones (due to git-upload-pack), so there is a to-be-fixed bug in git.git http://mid.gmane.org/20160621112303.GA21973@dcvr.yhbt.net http://mid.gmane.org/20160621121041.GA29156@sigill.intra.peff.net
2016-06-24evcleanup: micro-optimize asap function
Instead of relying on a timer with immediate callback, arm a pipe to watch for writability, ensuring the callback always fires.
2016-06-24http: always yield on getline/body
We want to maximize fairness for large responses which may download the entire mbox.
2016-06-24watch_maildir: ignore Trash and Drafts, support Dovecot
Trashed messages and drafts are probably not intended for importing, so do not import them. Dovecot uses extra flags via lowercase letters, so we must support those (as that's the server I use).
2016-06-24watch_maildir: implement optional spam checking
Mailing lists I watch and mirror may not have the best spam filtering, and an extra layer should not hurt.