[RFC] pop3: support `?limit=$NUM' parameter in mailbox name

2023-09-12 Thread Eric Wong
Konstantin Ryabitsev wrote: > Hello: > > I've been playing around with pop3, and I'm wondering if we can improve its > usability by adding a "last NNN messages" pseudo-folder. Currently, if someone > wants to access the git mailing list archive via pop3, they have to do the > following: > > -

pop3 usability thoughts

2023-09-12 Thread Konstantin Ryabitsev
Hello: I've been playing around with pop3, and I'm wondering if we can improve its usability by adding a "last NNN messages" pseudo-folder. Currently, if someone wants to access the git mailing list archive via pop3, they have to do the following: - know that the username should be

[PATCH 1/2] tests: favor IO::Socket::IP for IPv6 listeners

2023-09-12 Thread Eric Wong
IO::Socket::IP is bundled with Perl 5.24+ so it's more likely to be available than IO::Socket::INET6. --- lib/PublicInbox/TestCommon.pm | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/PublicInbox/TestCommon.pm b/lib/PublicInbox/TestCommon.pm index

[PATCH 0/2] test fixes for optional deps

2023-09-12 Thread Eric Wong
More corner-cases uncovered... Eric Wong (2): tests: favor IO::Socket::IP for IPv6 listeners tests: allow more tests to pass without xapian-compact lib/PublicInbox/TestCommon.pm | 11 --- t/extsearch.t | 2 +- t/nntpd.t | 4 ++--

[PATCH 2/2] tests: allow more tests to pass without xapian-compact

2023-09-12 Thread Eric Wong
--- lib/PublicInbox/TestCommon.pm | 3 ++- t/extsearch.t | 2 +- t/nntpd.t | 4 ++-- t/xcpdb-reshard.t | 2 +- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/PublicInbox/TestCommon.pm b/lib/PublicInbox/TestCommon.pm index

[PATCH 1/3] gcf2: detect libgit2 version changes

2023-09-12 Thread Eric Wong
We need to force Inline::C to rebuild if libgit2 is updated; otherwise dynamic linking can be broken. Adding the output from the `--modversion' of pkg-config(1) along with the existing `--libs' and `--cflags' output seems appropriate for this task. To force Inline::C into a rebuild, neither

[PATCH 0/3] just-ahead-of-time build improvements

2023-09-12 Thread Eric Wong
Our just-ahead-of-time builds need to detect upgrades to libgit2 and libxapian and rebuild+relink as necessary. This needs to happen for the FUSE-3 component, as well (post-2.0) Eric Wong (3): gcf2: detect libgit2 version changes xap_helper: (C++) detect libxapian version changes gcf2:

[PATCH 3/3] gcf2: switch build phase to use autodie

2023-09-12 Thread Eric Wong
This simplifies much of our code since much of it is error-handling. --- lib/PublicInbox/Gcf2.pm | 29 ++--- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/lib/PublicInbox/Gcf2.pm b/lib/PublicInbox/Gcf2.pm index 9ca99d00..0f4d2bf0 100644 ---

[PATCH 2/3] xap_helper_cxx: detect libxapian version changes

2023-09-12 Thread Eric Wong
As with libgit2, Xapian can be upgraded and break linkage with the xap_helper binary. For now, save the result of `pkg-config --modversion xapian-core' to a file and compare it with the current output. Perhaps portable some make(1) can be used for this... --- lib/PublicInbox/XapHelperCxx.pm |

[PATCH 8/7] provide select(2) backend for PublicInbox::DS

2023-09-12 Thread Eric Wong
This is safer than relying on an internal API of IO::Poll and doesn't create extra references to IO globs like the public one. --- Not sure if this is redundant or not, or if perhaps dropping DSPoll would be preferable, even... MANIFEST | 2 ++ lib/PublicInbox/DS.pm | 6