On 3/15/22 20:30, Peter Maydell wrote:
coredata.CoreData
File "/Users/pm215/src/qemu-for-merges/meson/mesonbuild/coredata.py",
line 1003, in load
obj = pickle.load(f)
File
"/Users/pm215/src/qemu-for-merges/meson/mesonbuild/mesonlib/universal.py",
line 2076, in __setstate__
self.__init__(**state) # type: ignore
TypeError: __init__() got an unexpected keyword argument 'module'
FAILED: build.ninja
meson ought to be smart enough to spot that it's got data from an
incompatible version and just discard its cache rather than
choking on it.
It tries, but it's playing whack-a-mole with Python:
except (pickle.UnpicklingError, EOFError):
raise MesonException(load_fail_msg)
except (ModuleNotFoundError, AttributeError):
raise MesonException(
f"Coredata file {filename!r} references functions or classes that don't
"
"exist. This probably means that it was generated with an old "
"version of meson.")
I'll submit a patch to add TypeError.
Paolo