commit 869505e1d8661c69f75c5803724621895ba10135 Author: Nick Morrott <nickm@debian.org> Date: Sat Feb 24 06:32:32 2024 +0000 Update changelog Gbp-Dch: Ignore commit 9ca53c4a51f34462ad311e621faa866c8ef5403b Author: Nick Morrott <nickm@debian.org> Date: Sat Feb 24 06:19:39 2024 +0000 dh_mkdocs: Ensure child process output is read before pipe fills up The current implementation of symlink_static files() assumes that the fulll output from the `dpkg-query --listfiles $package` child process will not completely fill the output pipe before the parent process reads it. This is not guaranteed to be the case, and in packaging python-guizero I have encountered hung builds (local machine and in schroot) due to this issue. Local debugging showed that the `dpkg-query --listfiles` child process would hang when processing both the mkdocs and libjs-bootstrap4 packages. The call is waitpid() before any read from the parent process causes an indefinite hang, as the child process is unable to write to the full pipe. This update reads output from the child process as soon as a PID is returned from open2(), and does not call waitpid() until everything has been read from the output filehandle. Additionally, the output filehandle is closed before waitpid() is called.
Among the 9 debian patches available in version 1.5.3+dfsg-1 of the package, we noticed the following issues: