Bug#919679: Please apply patch from PR 3102

2019-01-20 Thread Tobias Hansen
On 1/20/19 11:44 PM, Bill Allombert wrote:
> On Fri, Jan 18, 2019 at 03:28:04PM +0100, Tobias Hansen wrote:
>> Package: src:gap
>> Version: 4r10p0-6
>> Severity: wishlist
>> Tags: sid buster patch
>>
>> Hi Bill,
>>
>> a version of the remaining patch that sagemath applies to gap was
>> merged upstream a while ago [1] (and tagged for backporting to gap
>> 4.10). embray indicated in [2] that the patch is important for
>> non-interactive use of gap so I wanted to ask if you would add it to
>> the Debian package now that it is merged.
> Hello Tobias,
> "non-interactive use of gap" is quite vague. Does it affect sagemath or
> not, and how ? We are past the point where we have time to try out new patches
> before the release. This is not a new GAP problem that need to be fixed
> in a hurry.
>
> Cheers,

Hi,

yes it affects sagemath. From the PR:

"A more realistic use case is one where GAP is started as a subprocess with 
stdout and stderr redirected to pipes, and then one of those pipes is closed."

This can happen in sagemath if sage is closed while waiting for a gap command 
to return. Without the patch it can leave behind a gap process which is in an 
infinite loop.

I haven't yet looked deeper into the problem with gap-io.

Best,

Tobias



Bug#919679: Please apply patch from PR 3102

2019-01-20 Thread Bill Allombert
On Fri, Jan 18, 2019 at 03:28:04PM +0100, Tobias Hansen wrote:
> Package: src:gap
> Version: 4r10p0-6
> Severity: wishlist
> Tags: sid buster patch
> 
> Hi Bill,
> 
> a version of the remaining patch that sagemath applies to gap was
> merged upstream a while ago [1] (and tagged for backporting to gap
> 4.10). embray indicated in [2] that the patch is important for
> non-interactive use of gap so I wanted to ask if you would add it to
> the Debian package now that it is merged.

Hello Tobias,
"non-interactive use of gap" is quite vague. Does it affect sagemath or
not, and how ? We are past the point where we have time to try out new patches
before the release. This is not a new GAP problem that need to be fixed
in a hurry.

Cheers,
-- 
Bill. 

Imagine a large red swirl here. 



Bug#919679: Please apply patch from PR 3102

2019-01-18 Thread Bill Allombert
On Fri, Jan 18, 2019 at 09:45:06PM +0100, Tobias Hansen wrote:
> On 1/18/19 4:03 PM, Tobias Hansen wrote:
> > On 1/18/19 3:45 PM, Bill Allombert wrote:
> >> On Fri, Jan 18, 2019 at 03:28:04PM +0100, Tobias Hansen wrote:
> >>> Package: src:gap
> >>> Version: 4r10p0-6
> >>> Severity: wishlist
> >>> Tags: sid buster patch
> >>>
> >>> Hi Bill,
> >>>
> >>> a version of the remaining patch that sagemath applies to gap was
> >>> merged upstream a while ago [1] (and tagged for backporting to gap
> >>> 4.10). embray indicated in [2] that the patch is important for
> >>> non-interactive use of gap so I wanted to ask if you would add it to
> >>> the Debian package now that it is merged.
> >> Hello Tobias 
> >> Do you know when GAP 4.10.1 will be released ?
> >>
> >> There are two failure related to gap-tomlib in the sagemath
> >> build log. Could you check them ?
> >>
> >> Cheers,
> > No I don't know anything about the gap 4.10.1 release date.
> >
> > gap-table-of-marks is not yet a dependency of the sagemath which
> > should explain the failures. I will try if installing more gap
> > libraries fixes doctests.
> >
> Installing gap-online-help, gap-atlasrep and gap-table-of-marks fixes
> almost all remaining gap related doctests in sage, however if I
> install gap-io it leads to many failing tests. 

Could you see why ? I also have problem wth gac when gap-io is
installed.

Cheers,
-- 
Bill. 

Imagine a large red swirl here. 



Bug#919679: Please apply patch from PR 3102

2019-01-18 Thread Tobias Hansen
On 1/18/19 4:03 PM, Tobias Hansen wrote:
> On 1/18/19 3:45 PM, Bill Allombert wrote:
>> On Fri, Jan 18, 2019 at 03:28:04PM +0100, Tobias Hansen wrote:
>>> Package: src:gap
>>> Version: 4r10p0-6
>>> Severity: wishlist
>>> Tags: sid buster patch
>>>
>>> Hi Bill,
>>>
>>> a version of the remaining patch that sagemath applies to gap was
>>> merged upstream a while ago [1] (and tagged for backporting to gap
>>> 4.10). embray indicated in [2] that the patch is important for
>>> non-interactive use of gap so I wanted to ask if you would add it to
>>> the Debian package now that it is merged.
>> Hello Tobias 
>> Do you know when GAP 4.10.1 will be released ?
>>
>> There are two failure related to gap-tomlib in the sagemath
>> build log. Could you check them ?
>>
>> Cheers,
> No I don't know anything about the gap 4.10.1 release date.
>
> gap-table-of-marks is not yet a dependency of the sagemath which should 
> explain the failures. I will try if installing more gap libraries fixes 
> doctests.
>
> sagemath upstream now install all these libraries by default:
>
>     pkg/atlasrep \
>     pkg/autpgrp-* \
>     pkg/alnuth-* \
>     pkg/crisp-* \
>     pkg/ctbllib \
>     pkg/FactInt-* \
>     pkg/fga \
>     pkg/irredsol-* \
>     pkg/laguna-* \
>     pkg/polenta-* \
>     pkg/polycyclic-* \
>     pkg/resclasses-* \
>     pkg/sophus-* \
>     pkg/tomlib-* \
>
> A bunch of these I could not find in Debian:
>
>     pkg/crisp-* \
>     pkg/fga \
>     pkg/irredsol-* \
>     pkg/polenta-* \
>     pkg/resclasses-* \
>     pkg/sophus-* \
>
> I don't know yet if it is a problem that they are missing.
>
> Best,
>
> Tobias
>
Installing gap-online-help, gap-atlasrep and gap-table-of-marks fixes almost 
all remaining gap related doctests in sage, however if I install gap-io it 
leads to many failing tests. 

Best,

Tobias



Bug#919679: Please apply patch from PR 3102

2019-01-18 Thread Tobias Hansen
On 1/18/19 3:45 PM, Bill Allombert wrote:
> On Fri, Jan 18, 2019 at 03:28:04PM +0100, Tobias Hansen wrote:
>> Package: src:gap
>> Version: 4r10p0-6
>> Severity: wishlist
>> Tags: sid buster patch
>>
>> Hi Bill,
>>
>> a version of the remaining patch that sagemath applies to gap was
>> merged upstream a while ago [1] (and tagged for backporting to gap
>> 4.10). embray indicated in [2] that the patch is important for
>> non-interactive use of gap so I wanted to ask if you would add it to
>> the Debian package now that it is merged.
> Hello Tobias 
> Do you know when GAP 4.10.1 will be released ?
>
> There are two failure related to gap-tomlib in the sagemath
> build log. Could you check them ?
>
> Cheers,

No I don't know anything about the gap 4.10.1 release date.

gap-table-of-marks is not yet a dependency of the sagemath which should explain 
the failures. I will try if installing more gap libraries fixes doctests.

sagemath upstream now install all these libraries by default:

    pkg/atlasrep \
    pkg/autpgrp-* \
    pkg/alnuth-* \
    pkg/crisp-* \
    pkg/ctbllib \
    pkg/FactInt-* \
    pkg/fga \
    pkg/irredsol-* \
    pkg/laguna-* \
    pkg/polenta-* \
    pkg/polycyclic-* \
    pkg/resclasses-* \
    pkg/sophus-* \
    pkg/tomlib-* \

A bunch of these I could not find in Debian:

    pkg/crisp-* \
    pkg/fga \
    pkg/irredsol-* \
    pkg/polenta-* \
    pkg/resclasses-* \
    pkg/sophus-* \

I don't know yet if it is a problem that they are missing.

Best,

Tobias



Bug#919679: Please apply patch from PR 3102

2019-01-18 Thread Bill Allombert
On Fri, Jan 18, 2019 at 03:28:04PM +0100, Tobias Hansen wrote:
> Package: src:gap
> Version: 4r10p0-6
> Severity: wishlist
> Tags: sid buster patch
> 
> Hi Bill,
> 
> a version of the remaining patch that sagemath applies to gap was
> merged upstream a while ago [1] (and tagged for backporting to gap
> 4.10). embray indicated in [2] that the patch is important for
> non-interactive use of gap so I wanted to ask if you would add it to
> the Debian package now that it is merged.

Hello Tobias 
Do you know when GAP 4.10.1 will be released ?

There are two failure related to gap-tomlib in the sagemath
build log. Could you check them ?

Cheers,
-- 
Bill. 

Imagine a large red swirl here. 



Bug#919679: Please apply patch from PR 3102

2019-01-18 Thread Tobias Hansen
Package: src:gap
Version: 4r10p0-6
Severity: wishlist
Tags: sid buster patch

Hi Bill,

a version of the remaining patch that sagemath applies to gap was merged 
upstream a while ago [1] (and tagged for backporting to gap 4.10). embray 
indicated in [2] that the patch is important for non-interactive use of gap so 
I wanted to ask if you would add it to the Debian package now that it is merged.

Best,
Tobias

[1] https://github.com/gap-system/gap/pull/3102

[2] 
https://alioth-lists.debian.net/pipermail/debian-science-sagemath/2019-January/001453.html

From 48b871be128d475898887fc16f8d9958ccbc6e59 Mon Sep 17 00:00:00 2001
From: "Erik M. Bray" 
Date: Tue, 4 Dec 2018 12:44:23 +
Subject: [PATCH] prevent infinite recursions in echoandcheck SyWriteandcheck
 in cases where the default stdio output streams cannot be written to

---
 src/sysfiles.c | 33 ++---
 1 file changed, 22 insertions(+), 11 deletions(-)

diff --git a/src/sysfiles.c b/src/sysfiles.c
index bae7cdc36f..963ed95a36 100644
--- a/src/sysfiles.c
+++ b/src/sysfiles.c
@@ -152,19 +152,24 @@ ssize_t echoandcheck(int fid, const char *buf, size_t count) {
   int ret;
   if (syBuf[fid].type == gzip_socket) {
   ret = gzwrite(syBuf[fid].gzfp, buf, count);
-  if (ret < 0)
+  if (ret < 0) {
   ErrorQuit(
   "Could not write to compressed file, see 'LastSystemError();'\n",
   0L, 0L);
+  }
   }
   else {
   ret = write(syBuf[fid].echo, buf, count);
-  if (ret < 0)
-  ErrorQuit("Could not write to file descriptor %d, see "
-"'LastSystemError();'\n",
-syBuf[fid].fp, 0L);
+  if (ret < 0) {
+  if (syBuf[fid].fp == fileno(stdout) || syBuf[fid].fp == fileno(stderr)) {
+  Panic("Could not write to stdout/stderr.");
+  } else {
+  ErrorQuit("Could not write to file descriptor %d, see "
+"'LastSystemError();'\n",
+syBuf[fid].fp, 0L);
+  }
+  }
   }
-
   return ret;
 }
 
@@ -1539,17 +1544,23 @@ static ssize_t SyWriteandcheck(Int fid, const void * buf, size_t count)
 int ret;
 if (syBuf[fid].type == gzip_socket) {
 ret = gzwrite(syBuf[fid].gzfp, buf, count);
-if (ret < 0)
+if (ret < 0) {
 ErrorQuit(
 "Cannot write to compressed file, see 'LastSystemError();'\n",
 0L, 0L);
+}
 }
 else {
 ret = write(syBuf[fid].fp, buf, count);
-if (ret < 0)
-ErrorQuit("Cannot write to file descriptor %d, see "
-  "'LastSystemError();'\n",
-  syBuf[fid].fp, 0L);
+if (ret < 0) {
+if (syBuf[fid].fp == fileno(stdout) || syBuf[fid].fp == fileno(stderr)) {
+Panic("Could not write to stdout/stderr.");
+} else {
+ErrorQuit("Cannot write to file descriptor %d, see "
+  "'LastSystemError();'\n",
+  syBuf[fid].fp, 0L);
+}
+}
 }
 
 return ret;