Opened 4 years ago
Closed 4 years ago
#61334 closed defect (fixed)
ddclient @3.9.1: Checksum mismatch
Reported by: | ryandesign (Ryan Carsten Schmidt) | Owned by: | nerdling (Jeremy Lavergne) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | essandess (Steve Smith) | |
Port: | ddclient |
Description
[eae5b20f28c53bc5217e2f1b951a12ece2efe4a8/macports-ports] caused a checksum mismatch, of course:
$ sudo port fetch --no-mirrors ddclient ---> Fetching distfiles for ddclient ---> Attempting to fetch ddclient-3.9.1.tar.gz from https://github.com/ddclient/ddclient/tarball/v3.9.1 $ sudo port checksum ddclient ---> Verifying checksums for ddclient Error: Checksum (rmd160) mismatch for ddclient-3.9.1.tar.gz Error: Checksum (sha256) mismatch for ddclient-3.9.1.tar.gz Error: Checksum (size) mismatch for ddclient-3.9.1.tar.gz Error: Failed to checksum ddclient: Unable to verify file checksums
See PortfileRecipes#stealth-updates for the correct procedure when you change a distfile's contents without changing its name.
Change History (4)
comment:1 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
comment:2 follow-up: 3 Changed 4 years ago by essandess (Steve Smith)
ddclient
support and distribution was moved to GitHub, so that’s where we want to get the source from.
I’m still scratching my head about what caused this issue. Isn’t there some way of updating the mirror? Or just add one to the revision and this happens automatically?
comment:3 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to essandess:
ddclient
support and distribution was moved to GitHub, so that’s where we want to get the source from.
That's not necessarily a good reason. If they make a new release from that location, absolutely use it. But if there was nothing wrong with the old file released from the old location, no reason not to continue using that, is there?
I’m still scratching my head about what caused this issue.
The file the port used to get from sourceforge is not the same file that it now gets from github, but its filename is the same, hence checksum mismatch.
Isn’t there some way of updating the mirror?
distfiles are expected to be immutable. If you have a new distfile that you want to mirror, arrange for it to appear at a different URL on the mirror. See PortfileRecipes#stealth-updates for the correct procedure, if that is really the way you want to handle this.
Or just add one to the revision and this happens automatically?
The revision has nothing to do with the distfile location.
comment:4 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Looks like the automatically generated GitHub archive tarball is the one they had uploaded to SourceForge, so just switching to that was enough.
Since presumably there was nothing wrong with the manually-created tarball from sourceforge, my recommendation would be to continue to use that one and not the automatically-generated one from github (so reinstate the
master_sites sourceforge
line).However if there is some reason why you really want to use the github tarball instead, follow the stealth update recipe mentioned above and also add
github.tarball_from archive
; we don't want to usegithub.tarball_from tarball
(the portgroup's default) except in old ports that predate the existence ofgithub.tarball_from archive
.