[69018] trunk/dports/math/pspp-devel/Portfile
Ryan Schmidt
ryandesign at macports.org
Mon Jun 21 15:44:50 PDT 2010
On Jun 21, 2010, at 07:58, Jeremy Lavergne wrote:
>> For the molden and dcraw livecheck we are interested not only in the published version number but also the distfile date; since MacPorts livecheck can only check one value, I wrote a PHP script to get the two values and mash them together into a single value MacPorts can understand. This PHP script lives on my server and the molden and dcraw portfiles use it as their livecheck. For pspp-devel we want three values -- version, snapshot date, and hash. I've now updated that script to return this information about pspp-devel as well.
>
> For this port the only real indicator of a upgrade is the hash. I understand the utility of having all three pieces of information combined (and it already exists on the original site that way), but I would rather not have to do daily investigations of the port due to the build number. I'd like to find a better solution.
Oh I see. They keep doing new builds of the same source version, and then sometimes they update to a new source version with a new hash. Well, that's all very strange of them. And the problem is that even when they're building the same source version, they've created a new tarball of it which has different checksums. Hence your latest update to pspp-devel now causes a checksum mismatch for anyone who had the old file downloaded:
$ sudo port install pspp-devel
---> Computing dependencies for pspp-devel
---> Fetching pspp-devel
---> Verifying checksum(s) for pspp-devel
Error: Checksum (md5) mismatch for pspp-0.7.5-g551ae7.tar.gz
Error: Checksum (sha1) mismatch for pspp-0.7.5-g551ae7.tar.gz
Error: Checksum (rmd160) mismatch for pspp-0.7.5-g551ae7.tar.gz
Error: Target org.macports.checksum returned: Unable to verify file checksums
Log for pspp-devel is at: /opt/local/var/macports/logs/_Users_rschmidt_macports_dports_math_pspp-devel/main.log
Error: Status 1 encountered during processing.
To report a bug, see <http://guide.macports.org/#project.tickets>
$
See:
http://trac.macports.org/wiki/PortfileRecipes#stealth-updates
Also, your update increased the revision, but also changed the version to an "earlier" one as far as MacPorts is concerned ("0.7.5" is less than "0.7.5-g551ae7"):
$ port installed pspp-devel
The following ports are currently installed:
pspp-devel @0.7.5-g551ae7_2+universal (active)
$ port outdated pspp-devel
No installed ports are outdated.
$ port -v outdated pspp-devel
The following installed ports are outdated:
pspp-devel 0.7.5-g551ae7_2 > 0.7.5_3 !
$
> MacPorts doesn't seem to have a way to handle a simple "if different" livecheck -- it only wants to deal with finding the newest version. I'm going to work on a patch that adds that adds this feature, simply checking if the strings are different, regardless of order. I feel it would be much better suited to the needs of this port and possibly other -devels.
The md5 livecheck type seems to handle that adequately. Though I've never found a reason to prefer that kind of check.
The livecheck you've got in the port now should work too -- it tells you if the version upstream is different from the version in the portfile, regardless of which one it thinks is newer.
More information about the macports-dev
mailing list