about summary refs log tree commit diff
Commit message (Collapse)AuthorAge
* Use SEARCH for a subset of thread rootsJune McEnroe2021-06-12
| | | | | | This does way less duplicate work by fetching all threads and all thread root envelopes once, then doing searches for subsets of thread roots.
* Add margin between header navsJune McEnroe2021-06-11
|
* Generate navigation for search pagesJune McEnroe2021-06-11
|
* Generate arbitrary search pages and feedsJune McEnroe2021-06-11
| | | | | | First export ALL threads, then generate search pages. Skip search threads that weren't exported by the ALL search, i.e. non-root threads.
* Generalize index.{atom,html} to search pagesJune McEnroe2021-06-11
|
* Ignore test directoryJune McEnroe2021-06-11
| | | | Nothing generates this but I always use it for ./bubger -C test.
* Remove -t truncate flagJune McEnroe2021-06-11
| | | | | | It can't actually be used correctly: two updates in quick succession can truncate the output before it is read, causing files to be missed.
* Fix decoding adjacent encoded-wordsJune McEnroe2021-06-10
| | | | | | | | | | | RFC 2047 6.2. Display of 'encoded-word's: > When displaying a particular header field that contains multiple > 'encoded-word's, any 'linear-white-space' that separates a pair of > adjacent 'encoded-word's is ignored. (This is to allow the use of > multiple 'encoded-word's to represent long strings of unencoded text, > without having to separate 'encoded-word's where spaces occur in the > unencoded text.)
* Limit number of entries in index Atom feedJune McEnroe2021-06-09
|
* Use LDADD variables and BINDIRJune McEnroe2021-06-09
|
* Don't output "0 replies" at all 1.0aJune McEnroe2021-04-26
|
* Fix address group spacingJune McEnroe2021-04-25
|
* Only highlight the direct target message headerJune McEnroe2021-04-22
|
* Handle trailing comments in message IDsJune McEnroe2021-04-22
| | | | Apparently some clients put a comment after the <messageID> (like this).
* Don't URL-encode fragment linksJune McEnroe2021-04-22
| | | | | Seems that actually makes them not work correctly when they contain weird things.
* Fix handling groups in address listsJune McEnroe2021-04-22
|
* Omit HTML nav from nested messagesJune McEnroe2021-04-21
| | | | | We don't output mbox for nested messages, nor do we necessarily have a parent message on the same page.
* Parse dates in a hopefully more portable fashionJune McEnroe2021-04-11
| | | | | | | | | On GNU, struct tm doesn't have tm_gmtoff and %z or %Z in strptime do nothing. mktime(3) interprets the struct as local time, regardless of any tm_gmtoff, except on FreeBSD. Parse the zone portion of the date manually, subtract it from the struct tm fields, and call timegm(3). While here, correctly parse the optional seconds portion of the time.
* Remove unnecessary capture group in URL regexJune McEnroe2021-04-09
| | | | | | | | That capture group actually makes the regex ambiguous, it seems, since apparently some implementations backtrack to match the . branch rather than the $ branch, leaving off a trailing character from the second capture group. Regardless, that trailing capture group is totally unnecessary and I don't know why it was there.
* Exit on getopt failureJune McEnroe2021-03-13
| | | | Oops, missed this!
* Respect DESTDIR 1.0June McEnroe2021-03-08
|
* Remove mention of SORT extensionJune McEnroe2021-03-08
| | | | | The SORT and THREAD extensions are specified together, but need not both be implemented, I don't think. We don't use SORT.
* Port to LinuxJune McEnroe2021-03-08
|
* Reference "Mailing List" post in READMEJune McEnroe2021-03-04
|
* Remove DEPLOYMENT sectionJune McEnroe2021-03-03
| | | | | There's not enough detail for it to be useful, and not enough room to provide enough detail either.
* Add -t flag to truncate stdout before writing pathsJune McEnroe2021-03-03
|
* Output updated pathsJune McEnroe2021-03-03
|
* Sandbox with unveil(2) and pledge(2) on OpenBSDJune McEnroe2021-03-03
|
* Target OpenBSDJune McEnroe2021-03-03
|
* Expand READMEJune McEnroe2021-03-02
|
* Generate properly populated reply Cc listsJune McEnroe2021-03-01
|
* Match any non-context diff lines as "head"June McEnroe2021-01-18
| | | | | The explicit state between Patch and Diff also allows applying markup to the diffstat in the future, perhaps.
* Alphabetize STANDARDS sectionJune McEnroe2021-01-18
|
* Fix MANDIR defaultJune McEnroe2020-12-14
|
* Free threads and envelopes after concatJune McEnroe2020-12-11
| | | | Kind of important for the idle loop huh.
* Add -i to idleJune McEnroe2020-12-11
| | | | | And rewrite the entire main flow as separate loops with labels. I think it's much clearer and, importantly, much less indented.
* Add imapIdleJune McEnroe2020-12-11
| | | | | Handles re-IDLE-ing every 29 minutes and returns the first response it gets.
* Add FILES section to READMEJune McEnroe2020-12-09
|
* Handle mail with no trailing newline correctlyJune McEnroe2020-12-08
| | | | Embarrassing that my mail client produced such a thing.
* Condense getservinfo and bounds checkJune McEnroe2020-12-07
|
* Remove RCODE and ANCOUNT checkJune McEnroe2020-12-07
| | | | res_query already checks these.
* Correctly handle . in nameStringJune McEnroe2020-12-07
|
* Remove use of AI_DEFAULTJune McEnroe2020-12-07
| | | | | This just causes getaddrinfo(3) to return EAI_BADFLAGS on FreeBSD, strangely.
* Infer hostname from usernameJune McEnroe2020-12-04
|
* Add DNS and SRV RFCs to STANDARDSJune McEnroe2020-12-04
|
* Add -lresolv on macOSJune McEnroe2020-12-04
|
* Implement getservinfo for SRV lookupJune McEnroe2020-12-04
|
* Refactor patch markup generationJune McEnroe2020-12-03
|
* Switch to inline default stylesheetJune McEnroe2020-12-02
|
* Be even less weird about HTMLJune McEnroe2020-12-01
|