Tanguy Le Carrour writes: > Hi Marius, > > > Le 11/15, Marius Bakke a écrit : >> Tanguy Le Carrour writes: >> > ++ @unittest.skipIf(True, "This fails for unknown reasons on Guix") >> > + def test_keyboard_interrupt_exit_code(self): >> > + """KeyboardInterrupt triggers exit via SIGINT.""" >> > + process = subprocess.run( >> >> I'm fairly confident that these failures are because stdin is not a >> TTY. Can you try changing to this? >> >> @unittest.skipUnless(sys.stdin.isatty(), "KeyboardInterrupts require a TTY device") >> >> It would be good to submit a patch along these lines upstream if that >> works. > > Thanks for the snippet! It works! > > I've been trying for 2 days to register on https://bugs.python.org to submit > this patch, but failed! :-( > I'll keep on trying with different email addresses… Excellent, thank you very much for taking care of this. There are five other tests skipped for the same reason in 'python-3-fix-tests.patch', can you include those in the upstream pull request? > Does this mean that we have to wait for upstream to integrate it, or can > we use the patched wersion for Guix? I think the patch looks OK, but looking forward to hear upstreams take on it. In any case, it should not be a blocker. > Anyway, I'll update this patch according to your suggestion and push it. Push it to this bug report, presumably? :-) >> One final question... Do you know how stable the Python ABI is? Are >> packages compiled with 3.7 guaranteed to work with 3.8? >> >> I wonder if we should 1) rename it to 'python-next', and 2) override >> 'native-search-paths' so that it searches 'lib/python3.8/site-packages'. >> >> My concern is that e.g. 'guix environment --ad-hoc python python-numpy' >> might stop working unless we rename it, and/or adjust search paths. >> >> If Python 3.8 is fully backwards compatible, we probably don't have to >> do anything, otherwise we should adjust accordingly. > > I don't know anything about ABI, but what I read here: > https://www.python.org/dev/peps/pep-0384/ > So I guess it's been taken into consideration! Cool, thanks for the link. So it is safe to swap out Python 3.7 with 3.8 "in-place". However I think we should still call it differently, because the new Python won't necessarily be compatible with all the manifests/environments out there that reference Python by name. So if you send a patch that adds (name "python-next") to the inherited Python package, I think we are all set. Thank you! > I might have some time later this week to test using Python 3.8 as > default Python. I'll let you know! Great, good luck! I suspect you'll have to update many of the 'core' Python packages along the way; feel free to drop by #guix on Freenode if you get stuck anywhere. :-)