Date | Commit message (Collapse) |
|
Unlinked threads with similar (but not identical) subjects
could be hidden as a result.
|
|
Hopefully this gives new hackers a better overview of
how the components relate to each other.
|
|
The "by" on the message page and "-" in the index are
unnecessary and readers should have no trouble figuring out
what the attribution/timestamp line means.
|
|
They increase HTML size and add to visual noise without telling
enough useful information.
|
|
Oops, there is no longer a 3rd element.
Fixes: 759efc037728a766ee80f1b0d3c1fd7b8c76a05f
("view: remove attribution for topics in top-level view")
|
|
It clutters up the page unnecessarily, as identity of the topic
starter/updater probably doesn't matter if there's no exact
message to attribute the message to.
|
|
Having per-thread Atom feeds and downloadable mboxen is powerful
and should be more easily visible/accessible to casual readers.
|
|
We use it as a general compressor for identifiers such as
subject paths, so using the "mid_" prefix probably is not
appropriate.
|
|
The last message in a thread _display_ is not necessarily the
latest message in the thread. We must go by the Date: header
on the messages themselves as a best-guess. Of course Date:
headers may lie, but most mail clients trust them by default,
so we will, too.
|
|
'+' is more shoter and more readable in query parameters than '%20'
|
|
The thread root is usually the most important, and should
be displayed in full.
|
|
Otherwise it could be a bit disorienting to jump to the
first message in the thread without navigation context.
|
|
It's a waste of space and potentially confusing.
|
|
Email::MIME will call the header_obj each time anyways, avoid
the extra method lookups and hit header_obj directly for the
header lookup.
|
|
It might be helpful if user agents do not display the <link>
element in <head>.
|
|
Some user agents will advertise the presence of a feed this
way for users to subscribe to individual topics.
|
|
This hopefully makes it easy to perform queries to display
an entire thread. Raise the limit in the threaded view to
display more results and hopefully improve the output of
thread display.
|
|
This will be reused for search views.
|
|
Filter and View should reject X?HTML the same way.
|
|
The expanded thread view is generally more useful. Having links
to more links at the bottom seems to a waste of navigation time.
However, keep the '#r' anchor in case people rely on it for
links.
|
|
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
|
|
Once again, the regression was introduced in
commit 16ca6b7a57266fcb466ffff005bc1d644bad14c1
(view: avoid attempting to find "subject dummy")
|
|
Non-top-level messages still deserve to be shown in full
if they're the message in the URL.
|
|
This makes the layout between the permalink threads and
index threads more consistent; hopefully.
|
|
No point in repeating authorship when PATCH messages are
threaded and it's obvious from the top message who the author
is of the series:
[this message] - John Smith @ 2015-09-04 00:04:20 UTC
` [PATCH 1/4] view: eliminate redundant [threaded|flat] link
` [PATCH 2/4] view: one line for thread subjects
` [PATCH 3/4] view: adjust spacing and indentation of index threads
` [PATCH 4/4] view: add missing newline to inline dump
|
|
This fixes a regression introduced in
commit 16ca6b7a57266fcb466ffff005bc1d644bad14c1
(view: avoid attempting to find "subject dummy")
|
|
Avoid wasting precious horizontal space by indenting children
excessively relative to the top-level parent.
|
|
We truncate subjects in the Xapian document anyways,
so lines should not be too long and it hopefully won't
throw off the vertical display.
|
|
We do not need to waste space with that link when
we have it conveniently placed where every message
is located.
|
|
They're unused, and they can have namespace conflicts if
there's multiple full messages in the thread view.
|
|
This is an internal Message-ID used by Mail::Thread, to group
messages with identical subjects but common parent. Don't
attempt to redirect users to external sites when we cannot
find it.
|
|
This is a display subroutine so it should not be in our thread
monkey-patching package, but instead in the view package.
Hopefully one day in the future, Mail::Thread will be maintained
again and we'll no longer need PublicInbox::Thread at all.
|
|
This lets us merge topics with different subjects with a common parent
(common in "[PATCH 0/X]" threads). This also lets us avoid forking for
the HTML index page, too.
|
|
Provide a fallback for legacy SHA-1 messages, but do not
advertise shorter URLs anymore for data portability concerns.
This fixes a regression introduced in
commit 81a9c1b476987d845b340ab9013d26cf4487cb9a
("search: disable Message-ID compression in Xapian")
which ended up breaking thread-related endpoints for
large Message-IDs, as lookups on the SHA-1 message no longer
worked.
|
|
We'll be expanding our ghost message lookup facilities, so
it makes sense to generate links to them even if they are
currently unknown.
|
|
Currently, this looks at other public-inbox configurations
served in the same process. In the future, it will generate
links to other Message-ID lookup endpoints.
|
|
Compressed Message-IDs are irreversible and may not be used
at other sites. So avoid compressing Message-IDs we do not
know about so users have a chance of finding the message in
other archives by doing a Message-ID lookup.
|
|
This will allow users to navigate the flat view without making extra
HTTP requests.
|
|
This will make things easier for the next commit to pre-populate
the `$seen' hash for linking within the flat view of a thread.
|
|
Some mail clients do not generate In-Reply-To headers,
but do generate a proper References header.
This matches the behavior of Mail::Thread as well
as our SearchIdx code to link threads in the Xapian DB.
|
|
For still-active threads, it will likely be easier to follow
them chronologically, especially if we have links to parent
messages.
|
|
It's possible that the Xapian index and git HEAD can be out-of-sync
and a message which existed when we did the search is no longer
accessible by the time we get to rendering it.
|
|
We cannot allow memory in the cache to grow at an unbounded
rate in between HTTP requests.
|
|
Hopefully make it more obvious we're downloading or following
just one thread and not everything else.
|
|
This fixes a regression introduced in
commit 1b4b2c7b8b2f2df8f114617d2e875eaf5c839ce0
("completely revamp URL structure to shorten permalinks")
|
|
We must avoid double-escaping in cases where we have URLs anchored
by "<>" in the plain-text as is common (and AFAIK recommended)
convention. So we must use a two step linkification process
to prevent double-escaping.
|
|
Oops.
|
|
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.
|
|
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.
|
|
Redundant document data increases our database size, pull the
smsg->mid off the unique term, the smsg->ts off the value, and
only generate the formatted display date off smsg->ts.
|