-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
valgrind suppressions file for Python tests #442
valgrind suppressions file for Python tests #442
Conversation
FWIW, when including the following four very specific valgrind suppression entries (in addition to the three general entries already included), the valgrind test has no complaints. But I haven't been able to figure out if they're real problems or not.
|
The whole point of adding the python suppressions is so that we should be treating new failures as fatal. I'm not sure why this option is useful, much less enabled by default.
Short answer: we need to filter out anything that is coming from one of our dependencies (python itself, pyGObject, etc.). I see in your other comment that you are unsure whether those four remaining suppressions would be correct; we need to investigate that further. That said, I'd be satisfied with being overzealous and including them if only because it would still allow us to have a baseline to notice if anything new appeared.
The license header says nothing about permission to modify it (it only says "used and copied"), so I'm not sure whether including it in the upstream sources would be acceptable. |
This one might be real (though it might be in pyGObject rather than libmodulemd). I'll take a look. I'm comfortable with suppressing the other three, since the traceback involved doesn't include libmodulemd, pyGObject or FFI in any way, so it's almost certainly not our fault. As long as we aren't adding any new leaks going forward, that will still be a win. |
@mmathesius Yup, that first one was indeed real. See #443 The other three are safe to suppress. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add the remaining three suppressions, drop the MMD_IGNORE_PYTHON_VALGRIND
environment variable handling and drop grindmerge from the commit.
715da6d
to
f5ece13
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good to me. Assuming it all passes CI, is there any reason not to merge it? (Aside from fixing the "WIP" in the summary)
@sgallagher Thanks for the feedback, and for tracking that real one down! We can expect CI to fail with my latest push until #443 is merged. |
valgrind suppressions file for Python tests
Progress towards #333.
Valgrind failures for Python scripts are currently considered non-fatal if
MMD_IGNORE_PYTHON_VALGRIND
is set in the environment--which is currently done inmodulemd/meson.build
.The big question is... what should be included in the suppression file? For starters, I included a few from the
valgrind-python.supp
file included in the Python 2 and 3 installs that were prevalent when running the tests.Also, am I allowed to include
contrib/valgrind/grindmerge
here? It's a handy script I found for extracting and merging suppression entries from the test logfile.