+use PublicInbox::Syscall qw(EPOLLONESHOT);
+use PublicInbox::DS qw(dwaitpid);
+# fields:
+# async_cat => GitAsyncCat ref (read-only pipe)
+# sock => writable pipe to Gcf2::loop
+# in => pipe we read from
+# pid => PID of Gcf2::loop process
+# owner_pid => process which spawned {pid}
+sub new {
+ my ($rdr) = @_;
+ my $self = bless {}, __PACKAGE__;
+ # ensure the child process has the same @INC we do:
+ my $env = { PERL5LIB => join(':', @INC) };