Update elfutils version and use ubuntu apt packages in dockerfile#315
Conversation
|
I worked on the Dockerfile changes and replaced the custom elfutils build with Ubuntu's One thing I noticed while validating the change is that Ubuntu 26.04 currently provides elfutils/libdw version pkg-config --modversion libdw
0.194
pkg-config --modversion libelf
0.194The Docker image builds successfully and Is |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #315 +/- ##
=======================================
Coverage 77.93% 77.93%
=======================================
Files 56 56
Lines 5988 5988
Branches 631 631
=======================================
Hits 4667 4667
Misses 1321 1321
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
It's fine for us to use 0.194 in the Docker image. Since the Docker image is used only for testing, the only reason we'd need to use a newer version there is if we want to use a feature that's only available in a later version, or if we're affected by a bug in 0.194 that's fixed in a later version. If either of those ever happens, we can reintroduce the build from source at that point. This PR will need to be rebased, though - there's a minor merge conflict between it and #313. Also, it's missing the Signed-off-by line in the commit message body - see CONTRIBUTING.md More worryingly, it looks like the build of elfutils 0.195 is failing in the manylinux container that cibuildwheel is using... |
|
Understood! Here's what I'll do:
Will push an update once I've sorted it out. |
c831449 to
83ef4b0
Compare
Ubuntu currently ships 0.194, which is slightly older than the 0.195 that we vendor with cibuildwheel, but the Docker image is used only for testing, and so the only reason we'd need to use a newer version there is if we want to use a feature that's only available in a later version, or if we're affected by a bug in 0.194 that's fixed in a later version. If either of those ever happens, we can reintroduce the build from source at that point.
83ef4b0 to
9520db0
Compare
|
Sorry for taking so long to get around to investigating this.
The issue turned out to be that the manylinux2014 container has a version of Other than that, your changes all look good to me. I've rebased this, split it into two commits, and updated the commit messages. Thanks for the contribution, @mbmtbtbc! |
|
That's awesome, thanks! It was a meaningful learning experience! |
Issue number of the reported bug or feature request: fixes #314
Describe your changes
Replace the custom
elfutilsbuild stage in the Dockerfile with Ubuntu's packagedlibdw-devandlibelf-devdependencies.Removed the
elfutils_builderstage from the DockerfileRemoved the download and compilation of elfutils 0.193
Added
libdw-devandlibelf-devto the Ubuntu package listRemoved the copy step that imported the custom-built libraries
Updated documentation referencing the source build of elfutils
Testing performed
Successfully built the Docker image
Verified
pkg-configdetects bothlibdwandlibelfSuccessfully built and installed pystack inside the container using the distro-provided libraries
Additional context
Ubuntu 26.04currently provideselfutils/libdwversion0.194rather than0.195