    public function extractWebtreesZip(string $zip_file, string $target_folder): void
    {
        // The Flysystem ZIP archive adapter is painfully slow, so use the native PHP library.
        $zip = new ZipArchive();

        if ($zip->open($zip_file)) {
            $zip->extractTo($target_folder);
            $zip->close();
        } else {
            throw new InternalServerErrorException('Cannot read ZIP file. Is it corrupt?');
        }
    }