Opened 2 years ago
Last modified 22 months ago
#70597 assigned defect
lmdbxx @0.9.14.0.1: checksum mismatch
| Reported by: | barracuda156 | Owned by: | bendiken |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | 2.10.1 |
| Keywords: | Cc: | neverpanic (Clemens Lang) | |
| Port: | lmdbxx |
Description
---> Fetching distfiles for lmdbxx
---> lmdbxx-0b43ca87.tar.gz does not exist in /opt/local/var/macports/distfiles/lmdbxx
---> Attempting to fetch lmdbxx-0b43ca87.tar.gz from https://codeload.github.com/bendiken/lmdbxx/legacy.tar.gz/0b43ca87?dummy=
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 47517 0 47517 0 0 28191 0 --:--:-- 0:00:01 --:--:-- 28183
---> Verifying checksums for lmdbxx
---> Checksumming lmdbxx-0b43ca87.tar.gz
Error: Checksum (rmd160) mismatch for lmdbxx-0b43ca87.tar.gz
Portfile checksum: lmdbxx-0b43ca87.tar.gz rmd160 68c36abcb3adb9fa50d0509c8c06e25a81cdb3d9
Distfile checksum: lmdbxx-0b43ca87.tar.gz rmd160 e8fd89b5aa9f4629ce95a02fc40b836f7973503a
Error: Checksum (sha256) mismatch for lmdbxx-0b43ca87.tar.gz
Portfile checksum: lmdbxx-0b43ca87.tar.gz sha256 a7958341d13280ca8400263e8373da50116e806c6ad4e9fa4beca82d9629df8c
Distfile checksum: lmdbxx-0b43ca87.tar.gz sha256 a32053edc869646c8e8fe55a053d84ab96a73c5ce7cfb9636ed82e561e6bbe13
Error: Checksum (size) mismatch for lmdbxx-0b43ca87.tar.gz
Portfile checksum: lmdbxx-0b43ca87.tar.gz size 47503
Distfile checksum: lmdbxx-0b43ca87.tar.gz size 47517
The correct checksum line may be:
checksums rmd160 e8fd89b5aa9f4629ce95a02fc40b836f7973503a \
sha256 a32053edc869646c8e8fe55a053d84ab96a73c5ce7cfb9636ed82e561e6bbe13 \
size 47517
Error: Failed to checksum lmdbxx: Unable to verify file checksums
Change History (4)
comment:1 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)
comment:2 Changed 23 months ago by ryandesign (Ryan Carsten Schmidt)
| Cc: | neverpanic added |
|---|---|
| Summary: | lmdbxx: checksum mismatch → lmdbxx @0.9.14.0.1: checksum mismatch |
There is a maintained fork at https://github.com/hoytech/lmdbxx. We already offer it in a separate lmdbxx-cxx17 port; not sure why we don't just replace the lmdbxx port with that one. One port depends on lmdbxx-cxx17; no ports depend on lmdbxx.
comment:3 Changed 22 months ago by neverpanic (Clemens Lang)
I initially added lmdbxx-cxx17 as a separate port as a cautionary measure just in case moving to C++17 would cause an API or ABI change for any of the dependents.
Specifically, as far as I understood, the maintained fork removed the lmdb::val class, which is provided by lmdbxx, so the fork is not a drop-in replacement.
Personally, I wouldn't object to replacing lmdbxx's Portfile with the contents of lmdbxx-cxx17 and marking lmdbxx-cxx17 as replaced_by lmdbxx. The maintainer listed for the lmdbxx port seems to be the former upstream developer, so I wouldn't expect an answer from them.
This comes with the risk that some user has actually been using lmdbxx including the lmdb::val class, in which case the update would break their existing software. If we agree this is unlikely, I can make the change and adjust the only dependent nheko.
comment:4 Changed 22 months ago by ryandesign (Ryan Carsten Schmidt)
Looks like many distributions use hoytech's lmdb++ 1.0.0 so I think we could as well.
If the old 0.9.x version turns out to still be needed, I'd rather re-add it then following our customary naming scheme of appending the branch, e.g. lmdbxx-0.9.

This happened because the port is using the default value of
github.tarball_from—tarball—and the GitHub project moved from developerbendikento developerdrycpp. If an automatically-generated distfile must be used,github.tarball_fromshould be set toarchiveso that a change in developer does not change the checksums.This project offers release tarballs. Normally those should be used instead of automatically-generated tarballs by setting
github.tarball_fromtoreleases. However this port is at version 0.9.14.0.1 which does not actually exist. I don't know why the port was updated to an unreleased version. If there are important changes past the last release 0.9.14, the developer should produce a new release so that the port can be updated to it. Unfortunately the developer has not responded to the request to do that for years: https://github.com/drycpp/lmdbxx/issues/21