diff options
Diffstat (limited to 'Documentation/RelNotes')
-rw-r--r-- | Documentation/RelNotes/v1.6.1.eml | 57 | ||||
-rw-r--r-- | Documentation/RelNotes/v1.7.0.eml | 101 | ||||
-rw-r--r-- | Documentation/RelNotes/v1.7.0.wip | 16 | ||||
-rw-r--r-- | Documentation/RelNotes/v1.8.0.eml | 47 | ||||
-rw-r--r-- | Documentation/RelNotes/v1.9.0.eml | 68 | ||||
-rw-r--r-- | Documentation/RelNotes/v2.0.0.wip | 193 |
6 files changed, 466 insertions, 16 deletions
diff --git a/Documentation/RelNotes/v1.6.1.eml b/Documentation/RelNotes/v1.6.1.eml new file mode 100644 index 00000000..49d2ade0 --- /dev/null +++ b/Documentation/RelNotes/v1.6.1.eml @@ -0,0 +1,57 @@ +From: Eric Wong <e@80x24.org> +To: meta@public-inbox.org +Subject: [ANNOUNCE] public-inbox 1.6.1 +Date: Thu, 31 Dec 2020 23:45:56 +0000 +Message-ID: <20201231234556.public-inbox-1.6.1-rele@sed> +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Disposition: inline + +A small, bugfix release on top of 1.6.0 from September 2020. + +Bug fixes: + +* MIME header decoding no longer warns on undefined variables, + with Perl <5.28. Thanks to a bug report by Ali Alnubani. + https://public-inbox.org/meta/DM6PR12MB49106F8E3BD697B63B943A22DADB0@DM6PR12MB4910.namprd12.prod.outlook.com/ + +* Fixed a message threading bug thanks to a report from Kyle Meyer. + "public-inbox-index --rethread --reindex" will be necessary + in case of certain messages arrive out-of-order. + Link: https://public-inbox.org/meta/87360nlc44.fsf@kyleam.com/ + +* WWW: per-inbox grokmirror manifests no longer return info + for all inboxes, only the root /manifest.js.gz includes all + inboxes. This regression appeared in 1.6. + +* public-inbox-mda matches List-Id headers insensitively, + matching public-inbox-watch behavior. Similarly, List-Id + is always indexed lower-cased for boolean matches to avoid + matching an incorrect term. + +* Newsgroup and Path NNTP headers are now emitted in conformance + with RFC 5536 3.1.[45]. Thanks to Andrey Melnikov for the report: + https://public-inbox.org/meta/CA+PODjpUN5Q4gBFQhAzUNuMasVEdmp9f=8Uo0Ej0mFumdSwi4w@mail.gmail.com/ + +* Inotify fixes for public-inbox-imapd users relying on SIGHUP + reloads and thousands of watches. + +* Read-only daemon fixes around TLS and Linux <4.5 systems + +Bugfixes with minor behavior changes: + +* The X-Status mbox header is now excluded from imports, + just like the Status: header has been for many years. + They have no place in public archives and can be privacy + concern for people sharing archives. + +* WWW prevents deep-linking to attachments to limit abuse + vectors. Noticed by Leah Neukirchen: + https://public-inbox.org/meta/87imagyap9.fsf@vuxu.org/ + +There are also several ocumentation fixes from Uwe Kleine-König +and Kyle Meyer. + +Please report bugs via plain-text mail to: meta@public-inbox.org + +See archives at https://public-inbox.org/meta/ for all history. diff --git a/Documentation/RelNotes/v1.7.0.eml b/Documentation/RelNotes/v1.7.0.eml new file mode 100644 index 00000000..45fd0fa6 --- /dev/null +++ b/Documentation/RelNotes/v1.7.0.eml @@ -0,0 +1,101 @@ +From: Eric Wong <e@80x24.org> +To: meta@public-inbox.org +Subject: [ANNOUNCE] public-inbox 1.7.0 +Date: Thu, 04 Nov 2021 07:52:00 +0000 +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Message-ID: <2021-11-04-public-inbox-1.7.0-finally-rele@sed> +Content-Disposition: inline + +Another big release focused on multi-inbox search and scalability. + +Special thanks to Konstantin Ryabitsev and Kyle Meyer for +numerous bug reports and documentation help. + +* general changes + + - config file parsing is 2x faster with 50K inboxes + + - deduplication ignores whitespace differences within address fields + + - "PRAGMA optimize" is now issued on commits for SQLite 3.18+ + +* public-inbox-extindex + + A new Xapian + SQLite index able to search across several inboxes. + This may be configured to replace per-inbox Xapian DBs, + (but not per-inbox SQLite indices) and speed up manifest.js.gz + generation. + + See public-inbox-extindex-format(5) and + public-inbox-extindex(1) manpages for more details. + + Using it with "--all" speeds up various multi-inbox operations in + PublicInbox::WWW, public-inbox-nntpd, and public-inbox-imapd. + +* read-only public-inbox-daemon (-httpd, -nntpd, -imapd): + + libgit2 may be used via Inline::C to avoid hitting system pipe + and process limits. See public-inbox-tuning(7) manpage + for more details. + +* various memory usage reductions and workarounds for leaks in + Encode <3.15, these mainly affect PublicInbox::WWW + +* public-inbox-nntpd + + - startup is 6x faster with 50K inboxes if using -extindex + +* PublicInbox::WWW + + - mboxrd search results are returned in reverse Xapian docid order, + so more recent results are more likely to show up first + + - d: and dt: search prefixes allow "approxidate" formats supported + by "git log --since=" + + - manifest.js.gz generation is ~25x faster with -extindex + + - minor navigation improvements in search results HTML page + +* lei - local email interface + + An experimental, subject-to-change, likely-to-eat-your-mail tool for + personal mail as well as interacting with public-inboxes on the local + filesystem or over HTTP(S). See lei(1), lei-overview(7), and other + lei-* manpages for details. This is only ready-to-use w.r.t. external + public-inbox instances, but mail synchronization for personal mail + remains clunky. + +* public-inbox-index + + - non-strict (Subject-based) threading supports non-ASCII characters, + reindexing is necessary for old messages with non-ASCII subjects. + + - --batch-size is now 8M on 64-bit systems for throughput improvements, + higher values are still advised for more powerful hardware. + +* public-inbox-watch + + - IMAP and NNTP code shared with lei, fixing an off-by-one error + in IMAP synchronization for single-message IMAP folders. + + - \Deleted and \Draft messages ignored for IMAP, as they are for + Maildir. + + - IMAP and NNTP connection establishment (including git-credential + prompts) ordering is now tied to config file order. + +Compatibility: + +* Rollbacks all the way to public-inbox 1.2.0 remain supported + +Internal changes + +* public-inbox-index switched to new internal IPC code shared + with lei + +Please report bugs via plain-text mail to: meta@public-inbox.org + +See archives at https://public-inbox.org/meta/ for all history. +See https://public-inbox.org/TODO for what the future holds. diff --git a/Documentation/RelNotes/v1.7.0.wip b/Documentation/RelNotes/v1.7.0.wip deleted file mode 100644 index a35ff227..00000000 --- a/Documentation/RelNotes/v1.7.0.wip +++ /dev/null @@ -1,16 +0,0 @@ -To: meta@public-inbox.org -Subject: [WIP] public-inbox 1.7.0 -MIME-Version: 1.0 -Content-Type: text/plain; charset=utf-8 -Content-Disposition: inline - -TODO: gcf2, detached indices, JMAP, ... - -Compatibility: - -* Rollbacks all the way to public-inbox 1.2.0 remain supported - -Please report bugs via plain-text mail to: meta@public-inbox.org - -See archives at https://public-inbox.org/meta/ for all history. -See https://public-inbox.org/TODO for what the future holds. diff --git a/Documentation/RelNotes/v1.8.0.eml b/Documentation/RelNotes/v1.8.0.eml new file mode 100644 index 00000000..d835f8d8 --- /dev/null +++ b/Documentation/RelNotes/v1.8.0.eml @@ -0,0 +1,47 @@ +From: Eric Wong <e@80x24.org> +To: meta@public-inbox.org +Subject: [ANNOUNCE] public-inbox 1.8.0 +Date: Sat, 23 Apr 2022 08:22:59 +0000 +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Disposition: inline +Message-ID: <2022-04-23-public-inbox-1.8.0-released@finally> + +A minor release focused on bugfixes and minor improvements. +Upgrades should happen transparently, but downgrading back to +1.7.0 will likely cause problems for lei users (and only lei +users). + +lei users may experience duplicate messages in Maildirs if attempting to +downgrade from 1.8.0 to 1.7.x. public-inbox-* tools are unaffected and +may downgrade freely. + +Bugfixes: + + Numerous test fixes thanks to NixOS developers. + + Long-running daemons are more robust in case of corrupt blobs + or crashes of git-cat-file processes + + PublicInbox::WWW: all CR are removed before LF, fixing display of + CR-CR-LF messages. + + Solver supports SHA-256 code repositories (inbox and lei store support + is still pending). + +Internal updates: + + Reduced dependencies on Inline::C for Linux users; Linux users may + now use lei with neither Inline::C nor Socket::MsgHdr installed. + +New features: + + The --dangerous flag is now supported in public-inbox-index and + public-inbox-extindex to use the Xapian::DB_DANGEROUS flag for initial + indexes. This may reduce SSD/HDD wear at the expense of disallowing + concurrency and data integrity in case of an unexpected shutdown. + +Please report bugs via plain-text mail to: meta@public-inbox.org + +See archives at https://public-inbox.org/meta/ for all history. +See https://public-inbox.org/TODO for what the future holds. diff --git a/Documentation/RelNotes/v1.9.0.eml b/Documentation/RelNotes/v1.9.0.eml new file mode 100644 index 00000000..08e16a66 --- /dev/null +++ b/Documentation/RelNotes/v1.9.0.eml @@ -0,0 +1,68 @@ +From: Eric Wong <e@80x24.org> +To: meta@public-inbox.org +Subject: [ANNOUNCE] public-inbox 1.9.0 +Date: Sun, 21 Aug 2022 02:36:59 +0000 +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Disposition: inline +Message-ID: <2022-08-21T023659Z-public-inbox-1.9.0-rele@sed> + +Upgrading: + + lei users need to "lei daemon-kill" after installation to load + new code. Normal daemons (read-only, and public-inbox-watch) + will also need restarts, of course, but there's no + backwards-incompatible data format changes so rolling back to + older versions is harmless. + +Major bugfixes: + + * lei no longer freezes from inotify/EVFILT_VNODE handling, + user interrupts (Ctrl-C), nor excessive errors/warnings + + * IMAP server fairness improved to avoid excessive blob prefetch + +New features: + + * POP3 server support added, use either public-inbox-pop3d or + the new public-inbox-netd superserver + + * public-inbox-netd superserver supporting any combination of HTTP, + IMAP, POP3, and NNTP services; simplifying management and allowing + more sharing of memory used for various data structures. + + * public-inbox-httpd and -netd support per-listener .psgi files + + * SIGHUP reloads TLS certs and keys in addition to config and .psgi files + + * "lei reindex" command for lei users to update personal index + in ~/.local/share/lei/store for search improvements below: + +Search improvements: + + These will require --reindex with public-inbox-index and/or + public-inbox-extindex for public inboxes. + + * patchid: prefix search support added to WWW and lei for + "git patch-id --stable" support + + * text inside base-85 binary patches is no longer indexed + to avoid false positives + + * for lei users, "lei reindex" now exists and is required + to take advantage of aforementioned indexing changes + +Performance improvements: + + * IMAP server startup is faster with many mailboxes when using + "public-inbox-extindex --all" + + * NNTP group listings are also faster with many inboxes when + using "public-inbox-extindex --all" + + * various small opcode and memory usage reductions + +Please report bugs via plain-text mail to: meta@public-inbox.org + +See archives at https://public-inbox.org/meta/ for all history. +See https://public-inbox.org/TODO for what the future holds. diff --git a/Documentation/RelNotes/v2.0.0.wip b/Documentation/RelNotes/v2.0.0.wip new file mode 100644 index 00000000..794d7956 --- /dev/null +++ b/Documentation/RelNotes/v2.0.0.wip @@ -0,0 +1,193 @@ +To: meta@public-inbox.org +Subject: [WIP] public-inbox 2.2.0 +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Disposition: inline + +This release includes several new features and fixes; mostly +around improved integration between inboxes and coderepos for +solver. Portability and reliability is also improved, especially +in the internal process management of lei. + +public-inbox-cindex is a new command to index coderepos for +WWW search and perform automatic associations between +coderepos and inboxes. This makes solver vastly more useful +for the WWW UI as admins will no longer have to manually +associate coderepos with inboxes. + +public-inbox-clone gains the ability to mirror entire (or partial) +grokmirror-compatible manifests. + +Internal process and object management data structures are vastly +simplified throughout and error handling made more robust. + +git SHA-256 support remains a work-in-progress for inboxes and +extindex due to the need to interoperate with SHA-1 epochs. + +Upgrading: + + lei users need to "lei daemon-kill" after installation to load + new code. Normal daemons (read-only, and public-inbox-watch) + will also need restarts, of course, but there's no + backwards-incompatible data format changes so rolling back to + older versions is harmless. + +Compatibility: + + Uppercase newsgroup names were always broken with IMAP, POP3, and + -extindex. Uppercase names will now be lowercased by default and + warnings will be emitted. Conflicting newsgroup names (and `inboxdir' + entries if `newsgroup' isn't specified) will also generate warnings + since they break -extindex and the new -cindex (coderepo index). + +New users + hackers: + + The install/ directory includes tools to automate installation and + removal of dependencies for stripped-down or full setups. See + install/README for more details. + +treewide + + * support raw UTF-8 headers from SMTPUTF8 hosts + + * standardize on `#' prefix for stderr diagnostics (previously `I:') + + * SHA-256 coderepos are fully supported (but not inboxes, yet) + + * for daemons serving public traffic, MALLOC_MMAP_THRESHOLD_=131072 is + recommended to reduce fragmentation in glibc malloc, while jemalloc + (tested as an LD_PRELOAD) is another option. + +PublicInbox::WWW + + * support `+' in inbox names + + * support coderepo displays for systems without cgit + + * improve display of git tags, commits and trees in $INBOX/$OID/s/ endpoint + + * numerous memory usage reductions by avoiding Perl scratchpads + + * add #related anchor and search form to find related patches + based on blob OIDs (IOW, exposing `lei p2q' to the web) + + * fix footer in listing of >200 inboxes + + * support dumb HTTP clones of SHA-256 git repos + + * add /$INBOX/$MSGID/d/ endpoint to show diffs in reused Message-IDs + (`lei mail-diff' for the web) + + * support POST /$INBOX/$MSGID/?x=m&q= to limit mbox results to a thread + + * add topics_(new|active).(html|atom) endpoints + + * linkify peer public-inbox addresses in To/Cc headers + +public-inbox-watch: + + * watching MH folders is now supported + +lei + + * use http.proxy / http.<remote>.proxy from system-wide git-config if + unconfigured for lei + + * improve IMAP and NNTP error reporting + + * reduce default IMAP connections to avoid overloading servers + + * compatibility with SQLite <3.8.3 on CentOS 7.x + + * fix `lei q -tt' on locally indexed messages (still broken for remotes: + https://public-inbox.org/meta/20230226170931.M947721@dcvr/ ) + + * `lei import' now sets labels+keywords consistently on all + already imported messages + + * fix `lei up' on saved local queries which previously used -t/--threads + + * `lei convert' output to v2 public-inboxes is now idempotent + + * improved bash completion for labels (see contrib/completion) + + * support for reading (but not writing) MH folders + + * `lei index' accepts `+L:$LABEL' like `lei import' does + +solver (used by lei (rediff|blob), and PublicInbox::WWW) + + * handle copies in patches properly + + * no longer redundantly parallelized within each WWW process + +portability + + * SIGWINCH is handled properly on less common architectures and OSes + + * fix EINTR handling for kqueue users + + * various fixes for CentOS 7.x + + * fix excessive pipelining to `git cat-file' on systems with small + getdelim(3) buffers (mainly affects musl) + + * support Alpine Linux, Dragonfly, NetBSD and OpenBSD. This resulted + not only in bugfixes to our code, but also to Dragonfly and OpenBSD. + + * Inline::C||Socket::MsgHdr no longer required for SCM_RIGHTS + with sendmsg/recvmsg on supported *BSDs. + + * inotify support no longer requires Linux::Inotify2 XS package + for most architectures + +public-inbox-pop3d + + * support `limit=NUM' and `initial_limit=NUM' query parameters + in mailbox names to limit results + +public-inbox-nntpd + + * fix LISTGROUP with range (affects neomutt) + +public-inbox-clone / public-inbox-fetch / `lei add-external --mirror' + + * mtime of downloaded manifest preserved + +public-inbox-clone: + + * parallel mirroring of multiple inboxes/coderepos via manifest, + public-inbox-fetch is not used in this mode + + * new flags to support manifest mirroring include: + --dry-run, --inbox-config=, --project-list=, --prune, --purge, + --keep-going, --jobs, --include=, --exclude=, --objstore=, + --manifest=, --remote-manifest= + See public-inbox-clone(1) man page for more details. + +PublicInbox::SaPlugin::ListMirror + + * List-ID handling special-cased according to RFC 2919 rules + +Search improvements (lei and PublicInbox::WWW) + + * quoted text inside base-85 binary patches is no longer indexed + + * `public-inbox-cindex --join' prefers using Xapian's C++ API + directly to avoid Perl method dispatch overhead to get usable + performance associating ~300 inboxes with over 1K coderepos + (and vice versa). Users requiring such performance will need + 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. + +Thanks to all the bug reporters and users who made this release +possible, and thanks for bearing with my anxiety over making releases. + +Please report bugs via plain-text mail to: meta@public-inbox.org + +See archives at https://public-inbox.org/meta/ for all history. +See https://public-inbox.org/TODO for what the future holds. |