This is an archive of the discontinued LLVM Phabricator instance.

[LNT] Pin Python version in Dockerfile to 3.7 temporarily
ClosedPublic

Authored by tnfchris on Oct 14 2020, 2:27 AM.

Details

Summary

Hi All,

Python 3.9 has been released and one of the dependencies of LNT does not compiler under it. pyyaml seems to fail during building:

ext/_yaml.c: In function '__Pyx_modinit_type_init_code':
   ext/_yaml.c:25698:25: error: 'PyTypeObject' {aka 'struct _typeobject'} has no member named 'tp_print'
   25698 |   __pyx_type_5_yaml_Mark.tp_print = 0;
         |                         ^
   ext/_yaml.c:25718:28: error: 'PyTypeObject' {aka 'struct _typeobject'} has no member named 'tp_print'
   25718 |   __pyx_type_5_yaml_CParser.tp_print = 0;
         |                            ^
   ext/_yaml.c:25732:29: error: 'PyTypeObject' {aka 'struct _typeobject'} has no member named 'tp_print'
   25732 |   __pyx_type_5_yaml_CEmitter.tp_print = 0;
         |                             ^

Presumably because the header has changed under python 3.9. For now let's pin the Dockerfile to 3.7 until this is sorted so LNT can still run.

OK for master?

Thanks,
Tamar

Diff Detail

Event Timeline

tnfchris created this revision.Oct 14 2020, 2:27 AM
Herald added a project: Restricted Project. · View Herald TranscriptOct 14 2020, 2:27 AM
tnfchris requested review of this revision.Oct 14 2020, 2:27 AM
thopre accepted this revision.Oct 14 2020, 3:27 AM

Not the first time this happen. I wonder if we should keep the pin on. Sadly docker version don't seem to be real version so there's no way to requires a version "lesser than X"

This revision is now accepted and ready to land.Oct 14 2020, 3:27 AM