Bug #975
closedgenerate_packets.py failure on mac-meson CI job
0%
Description
mac-meson CI job gives warnings and errors, latter failing the entire build, about generate_packets.py.
To debug this, one needs #974 to get past the configuration phase of the build.
Files
Updated by Marko Lindqvist 2 months ago
Seems like generate_packets.py doesn't work with the python-3.13 that the homebrew installation now has. I don't think we've run generate_packets.py with python-3.13 before, and mac-meson job does success if I force python3.12 to use.
Updated by Alina Lenk 2 months ago
This looks like... well, either a breaking change that doesn't seem to be documented in the places I'm looking, or a bug resulting from an optimization in the enum module — when looking up members by-value, it's no longer comparing hashable values (like the frozensets assigned to the members of Directions) and unhashable values (like the non-frozen sets we're passing in) to each other. We can easily work around it (wrap the dirs in a frozenset before passing it into Directions), but I'm concerned that I couldn't find anything about this change in the changelog. Might have to report this upstream.
Updated by Marko Lindqvist 2 months ago
- Related to Feature #977: Work around mac-meson failure added
Updated by Alina Lenk 2 months ago
Alina Lenk wrote in #note-2:
Might have to report this upstream.
I've reported the issue to the Python devs as https://github.com/python/cpython/issues/125710. I'll still whip up a patch for the workaround (it's literally a one-liner, I just have to dust off my dev setup); it's probably worth it, especially given the chance that the decision from on high will be "no, this shouldn't have been supported in the first place", which frankly I wouldn't even fault them for.
Updated by Alina Lenk 2 months ago
- File S3_2-generate_packets.py-Fix-crash-under-Python-3.13.patch S3_2-generate_packets.py-Fix-crash-under-Python-3.13.patch added
- File main-generate_packets.py-Fix-crash-under-Python-3.13.patch main-generate_packets.py-Fix-crash-under-Python-3.13.patch added
- Status changed from New to In Review
- Assignee set to Alina Lenk
Updated by Alina Lenk 2 months ago
- Status changed from In Review to New
Turns out this isn't the only issue under Python 3.13
Updated by Alina Lenk 2 months ago
- Status changed from New to In Review
Alina Lenk wrote in #note-6:
Turns out this isn't the only issue under Python 3.13
Nope, nevermind, I just had an error in my build setup; works fine now.