Control: reassign -1 python3-billiard
Control: tags -1 patch upstream
Control: retitle -1 '_Code' object has no attribute 'co_qualname'

This is also happening in CI since around 20 March.

The trigger appears to be python 3.13.2-2 adding this patch from upstream git:
https://sources.debian.org/src/python3.13/3.13.2-3/debian/patches/git-updates.diff/?hl=8275#L8253

This assumes that code objects passed to linecache (and hence to traceback) have a co_qualname property. Native Python ones do, but billiard ones (which celery and hence pagure use) don't:
https://sources.debian.org/src/billiard/4.2.1-1/billiard/einfo.py/?hl=25#L9

This looks like it also exists in upstream billiard and is easy to fix, but I have *not* tested these:

--- a/billiard/einfo.py
+++ b/billiard/einfo.py
@@ -23,6 +23,7 @@
         self.co_stacksize = code.co_stacksize
         self.co_varnames = ()
         if sys.version_info >= (3, 11):
+            self.co_qualname = code.co_qualname
             self._co_positions = list(code.co_positions())

     if sys.version_info >= (3, 11):

Reply via email to