-
Notifications
You must be signed in to change notification settings - Fork 357
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
%autopatch -m/-M fall through silently if no patches are in range #3093
Labels
Comments
pmatilai
added a commit
to pmatilai/rpm
that referenced
this issue
May 13, 2024
Multiple tests are failing on Fedora 40 due to their distro-wide C modernization effort, which cause our ancient "hello world" package to fail due to implicit printf() function usage. There are two separate issues here: - hello-autopatch.spec had off-by-one in its patch application, causing the modernization patch to not apply (see rpm-software-management#3093 for the reason) - others were using the original hello-1.0-1.src.rpm from 2007 with some very outdated practises, code and md5 hashes Update the src.rpm, removing silly fubar while we're at it. Regenerated now on x86_64 so adjust the test-expectation, and update the python archive test to calculate sha256 instead. And, fix the autopatch test numbers.
dmnks
pushed a commit
that referenced
this issue
May 13, 2024
Multiple tests are failing on Fedora 40 due to their distro-wide C modernization effort, which cause our ancient "hello world" package to fail due to implicit printf() function usage. There are two separate issues here: - hello-autopatch.spec had off-by-one in its patch application, causing the modernization patch to not apply (see #3093 for the reason) - others were using the original hello-1.0-1.src.rpm from 2007 with some very outdated practises, code and md5 hashes Update the src.rpm, removing silly fubar while we're at it. Regenerated now on x86_64 so adjust the test-expectation, and update the python archive test to calculate sha256 instead. And, fix the autopatch test numbers.
dmnks
pushed a commit
to dmnks/rpm
that referenced
this issue
May 17, 2024
Multiple tests are failing on Fedora 40 due to their distro-wide C modernization effort, which cause our ancient "hello world" package to fail due to implicit printf() function usage. There are two separate issues here: - hello-autopatch.spec had off-by-one in its patch application, causing the modernization patch to not apply (see rpm-software-management#3093 for the reason) - others were using the original hello-1.0-1.src.rpm from 2007 with some very outdated practises, code and md5 hashes Update the src.rpm, removing silly fubar while we're at it. Regenerated now on x86_64 so adjust the test-expectation, and update the python archive test to calculate sha256 instead. And, fix the autopatch test numbers. (cherry picked from commit ed1f2da)
dmnks
pushed a commit
that referenced
this issue
May 17, 2024
Multiple tests are failing on Fedora 40 due to their distro-wide C modernization effort, which cause our ancient "hello world" package to fail due to implicit printf() function usage. There are two separate issues here: - hello-autopatch.spec had off-by-one in its patch application, causing the modernization patch to not apply (see #3093 for the reason) - others were using the original hello-1.0-1.src.rpm from 2007 with some very outdated practises, code and md5 hashes Update the src.rpm, removing silly fubar while we're at it. Regenerated now on x86_64 so adjust the test-expectation, and update the python archive test to calculate sha256 instead. And, fix the autopatch test numbers. (cherry picked from commit ed1f2da)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
hello-autopatch.spec in our testsuite has this:
Spot the error? Automatic patch numbers start from zero, so we're telling it to apply hello-1.0-install.patch and then any higher numbered patches, so the modernize patch is never applied.
There are legitimate reasons to conditionally skip patches, but having a ranged patch that doesn't actually do anything should at least emit a warning.
How did we find out? Fedora 40 introduced stricter, more modern C compilation settings (https://fedoraproject.org/wiki/Changes/PortingToModernC ) and suddenly we had a test-case go red because it wasn't applying a patch it's supposed to, to address this very issue.
The text was updated successfully, but these errors were encountered: