The homepage link http://littlesvr.ca/asunder is redirected (HTTP/1.1 301 Moved Permanently) to http://littlesvr.ca/asunder/ Both are valid URIs (rfc2396), so I suggest adding the trailing slash in order to avoid unnecessary redirection.
I'd suggest NOT making this change for 2 reasons: 1) It doesn't matter - the current URI works fine and invisibly redirects. This bug is just creating unnecessary load on the Gentoo developers. 2) The current URI allows upstream to invisibly move between a directory and a page without the need for the URI to be changed.
1) rfc2616 is clear about status code 301: > The requested resource has been assigned a new permanent URI and any > future references to this resource SHOULD use one of the returned URIs. So it is primarily about conforming to HTTP/1.1 or not. 2) For this purpose, there are status codes 302 and 307.
I thought about this whole thing and came to the conclusion that it is indeed quite time consuming (especially my time, as during this year I have checked thousands of packages). Also it causes quite much noise with one bug report per 301 response. So I have now written a (more or less) one liner in bash that checks each package for return code 301. FORMAT="<category>/<name> <homepage>\n" eix | while read var; do name=`echo $var | cut -d\ -f1 -s`; value=`echo $var | cut -d\ -f2- -s`; for i in $value; do if [ ${i:0:4} = http ] && [ $(host $(echo $i | cut -d: -f2 | cut -d/ -f3)>/dev/null; echo $?) = 0 ] && [ ! "$(httping -g $i -c1 -G -m -o301 -e1)" = "1" -a $? = 0 ]; then echo $name: $i; fi; done; done As it has become hard to read, I have tried unscrambling it a bit: FORMAT="<category>/<name> <homepage>\n" eix | while read var do name=$(echo $var | cut -d\ -f1 -s) value=$(echo $var | cut -d\ -f2- -s) for i in $value do \ host=$(echo $i | cut -d: -f2 | cut -d/ -f3) if [ ${i:0:4} = http ] \ && [ $(host $host>/dev/null; echo $?) = 0 ] && \ [ ! "$(httping $i -c1 -G -m -o301 -e1)" = "1" -a $? = 0 ] then echo $name: $i fi done done It uses app-portage/eix, host from net-dns/bind-tools and >=net-analyzer/httping-1.30 (earlier versions of httping had an ugly bug). Unfortunately, it is probably a bad idea to replace every link that is answered with "301 Moved Permanently" with the URI in the Location field, as some sites that have disappeared might now be redirected to placeholders or spam sites. Maybe there is a maintainer who is willing to check all links in one pass and change (most of) the HOMEPAGE links accordingly? This will be much more efficient and will avoid much noise in the bug tracker. Is this the right place for this suggestion?
Created attachment 211471 [details] both versions of the small bash script from comment #3 Sorry, code in comment #3 broke when posting.
Open a feature request for repoman to check for that (optionally) might be a better idea.
+ 11 Mar 2010; Sebastian Pipping <sping@gentoo.org> asunder-1.9.1.ebuild: + Fix homepage (bug #294791) + Now turning into repoman check as Diego suggested.
*** This bug has been marked as a duplicate of bug 295194 ***