]> git.ipfire.org Git - thirdparty/public-inbox.git/commitdiff
doc: TODO and release notes updates
authorEric Wong <e@80x24.org>
Wed, 2 Apr 2025 20:17:54 +0000 (20:17 +0000)
committerEric Wong <e@80x24.org>
Fri, 4 Apr 2025 19:52:43 +0000 (19:52 +0000)
Documentation/RelNotes/v2.0.0.wip
TODO

index f04d814411121155f86e882ade9125e4bd4d8423..6dfc47b88bc3dd6ca0cfd0821f0b107f278ce7d6 100644 (file)
@@ -46,6 +46,9 @@ New users + hackers:
   removal of dependencies for stripped-down or full setups.  See
   install/README for more details.
 
+  devel/try-lei now exists for testing out an empty lei instance
+  without writing to an existing one.
+
 treewide
 
   * support raw UTF-8 headers from SMTPUTF8 hosts
@@ -58,6 +61,8 @@ treewide
     recommended to reduce fragmentation in glibc malloc, while jemalloc
     (tested as an LD_PRELOAD) is another option (at least for 64-bit).
 
+  * embrace ->DESTROY in more places for control flow and reliability
+
 PublicInbox::WWW
 
   * support `+' in inbox names
@@ -115,12 +120,16 @@ lei
 
   * `lei index' accepts `+L:$LABEL' like `lei import' does
 
+  * fix several reliability problems with `lei import'
+
 solver (used by lei (rediff|blob), and PublicInbox::WWW)
 
   * handle copies in patches properly
 
   * no longer redundantly parallelized within each WWW process
 
+  * improve ambiguous OID debug messages
+
 portability
 
   * SIGWINCH is handled properly on less common architectures and OSes
@@ -180,9 +189,29 @@ Search improvements (lei and PublicInbox::WWW)
     a C++ compiler, pkg-config, and the Xapian development files
     (see INSTALL).
 
-    This C++ helper will be used more heavily in the future
-    to enable query parser customizations and other functionality
-    unavailable from the Xapian SWIG or XS bindings.
+  * -X/--xapian-helpers may be specified for public-facing daemons
+    to use aforementioned C++ helper (or SWIG/XS fallback) to avoid
+    expensive searches blocking non-search HTTP and IMAP requests.
+
+  * the aforementioned C++ helper supports `thread:{SUBQUERY}' and
+    queries `thread:MSGID' like notmuch(1)
+
+  * --reindex and long-running (ext)index operations will auto
+    checkpoint every 5s to avoid SQLite timeouts in public-facing
+    frontends where SQLite WAL isn't possible.
+
+public-inbox-daemon (-netd, -imapd, -httpd, -nntpd, -pop3d)
+
+  * per-listener servername=, serverport=, and multi-accept=
+    parameters, --multi-accept= is also supported globally for
+    all listeners.
+
+  * listen(2) backlog no longer overridden when inheriting listeners
+    at startup, respecting `Backlog=' in systemd.socket(5)
+
+  * premature HTTP client disconnects are detected on expensive
+    requests (e.g. solver) and can be logged as 499 (like nginx)
+    using Plack::Middleware::AccessLog(::Timed).
 
 Thanks to all the bug reporters and users who made this release
 possible, and thanks for bearing with my anxiety over making releases.
diff --git a/TODO b/TODO
index 36a7f0cf441ac6cdd7ec4a50ab5dd5a6b83877d4..78f0158d3e27286fd50f4842d676cdbd36deb443 100644 (file)
--- a/TODO
+++ b/TODO
@@ -111,16 +111,6 @@ all need to be considered for everything we introduce.)
 * imperfect scraper importers for obfuscated list archives
   (e.g. obfuscated Mailman stuff, Google Groups, etc...)
 
-* improve performance and avoid head-of-line blocking on slow storage
-  (done for most git blob retrievals, Xapian needs work)
-
-* allow optional use of separate Xapian worker process to implement
-  timeouts and avoid head-of-line blocking problems.  Consider
-  just-ahead-of-time builds to take advantage of custom date parsers
-  (approxidate) and other features not available to Perl bindings.
-
-* integrate git approxidate parsing into Xapian w/o spawning git
-
 * HTTP(S) search API (likely JMAP, but GraphQL could be an option)
   It should support git-specific prefixes (dfpre:, dfpost:, dfn:, etc)
   as extensions.  If JMAP, it should have HTTP(S) analogues to
@@ -161,3 +151,7 @@ all need to be considered for everything we introduce.)
 * git SHA-256 migration/coexistence path
 
 * decode RFC 3676 format=flowed + DelSp properly (see mflow (mblaze), mutt, ...)
+
+* ActivityPub support
+  https://public-inbox.org/meta/20240428175814.M304854@dcvr/
+  https://public-inbox.org/meta/20250327224143.M385019@dcvr/