Red Hat Bugzilla – Bug 840119
Spec file creates broken symlink
Last modified: 2012-08-01 02:28:41 EDT
Created attachment 598151 [details]
Patch to remove unneeded symlink logic
Description of problem:
File usr/lib/ruby/gems/1.8/gems/actionpack-3.0.10/test/fixtures/symlink_parent/symlink_parent is a dangling symlink (to ../../symlink_parent/)
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. wget http://kojipkgs.fedoraproject.org//packages/rubygem-actionpack/3.0.15/1.fc18/noarch/rubygem-actionpack-3.0.15-1.fc18.noarch.rpm
2. rpmdev-extract rubygem-actionpack-3.0.15-1.fc18.noarch.rpm
3. ls -l rubygem-actionpack-3.0.15-1.fc18.noarch/usr/share/gems/gems/actionpack-3.0.15/test/fixtures/symlink_parent/symlink_parent
No broken symlink
It looks like the original symlink was probably absent at some point in the past (test/fixtures/layout_tests/layouts/symlinked) which caused it to get added to the RPM spec. But when the link got fixed upstream, it caused the spec file to *follow* the corrected symlink and create the broken link inside of the *target* of the original.
End result, it looks like the symlink can just go away from the spec and everything is fine. Attaching a patch for that.
This file is needed for a unit test (note that it's present in the "test/fixtures" directory), that tests behaviour when using broken symlinks. The symlink is therefore broken on purpose, this is expected.
I'm closing this as NOTABUG.
What unit test are you referring to?
I see tests that verify a valid symlink is correctly followed (LayoutSymlinkedTest/LayoutSymlinkedIsRenderedTest).
I do not see any tests that check for broken symlinks.
If you apply the attached patch and run the tests, all of the tests still pass.
Ah, sorry you are right. It seems that the symlink was added to the specfile when actionpack was being updated to 2.3.4 (dist-git commit hash f3870f6).
As you say, the symlink is not needed, I will fix this in Rawhide, I don't think it's necessary to fix this issue in lower Fedoras, as it doesn't cause any problems.