Comments (5)
This issue was discussed during the opam-repository maintainer meeting and we decided that this should go ahead. Further discussions and such can happen in the different PRs that this issue is manifesting as.
from opam-repository.
Dear everyone (cc'ing manually @shonfeder @kit-ty-kate @raphael-proust),
I've also done the third and fourth step. And for you to have an easier time to validate the results (well, and me verifying that I didn't break anything), there's now a tool -- https://github.com/hannesm/opam-check-checksum -- You run it with the current opam repository (use 6ed19e3) on the one side (--old-opam-repo=DIR
), and the updated one on the other side (--opam-repo=DIR
-- use 2730ed6, the HEAD of https://github.com/hannesm/opam-repository/tree/extra-file-to-extra-source).
What does opam-check-checksum do? Well, it will read all opam files in old-opam-repo
, and check opam files for having extra-files or only a md5 checksum. If this is the case, opam-repo
is checked that the old hashes are included (for url), and for extra-files that a extra-sources entry is present and also contains the old checksum.
For me this ran without issues after I fixed a silly mistake (it should retain the sha512 if it was present) in the migration command.
To give some motivation, if we merge that branch, the MD5-only checksums go down from 12577 to 70 (measured with git grep 'checksum: "md5=' | wc -l
). The remaining MD5-only checksums are due to unavailable sources/tarballs.
It would be great if you could either merge the opam-source-archives PR and my branch (named extra-file-to-extra-source), or tell me whether there are any steps I should do before this can be merged. You can of course take your time and look at the diff, or reproduce the results -- as mentioned, the two big commits are automated, the in-between one was a manual move to reconcile the fix-gcc patch.
from opam-repository.
If you'd like to read the diff for opam-repository, I recommend to use git diff -D 6ed19e325e5016a43606d8073ca73998f9ebf68f..2730ed62d22b8488a96c5683498a99a8426ce178
(which avoids the full text of the deleted files).
from opam-repository.
FYI, #25960 added hashes to +trunk
packages, see
from opam-repository.
Thanks @emillon for your headsup, in #25962 these checksums got removed again.
from opam-repository.
Related Issues (20)
- [Question]: Source code of packages hosted on ipv6 only website HOT 5
- Normalise license of system package
- Possible breakage in opam update HOT 10
- policy question: existing packages without checksums HOT 2
- `bin_prot.0.17.0` fails to build on OpenSUSE and FreeBSD with OCaml 5.0 HOT 2
- Unison missing fsmonitor
- Enforcing switch variant with --packages fails on macOS ARM64 HOT 2
- `opam switch create 5.0.0` fails HOT 6
- `opam switch create . 5.2.0` isn't working on m2 mac HOT 2
- Failed to install `ocamlbuild` and `ocaml-lsp-server` on Windows HOT 4
- Please come up with an alternative to 'available: os != "win32"' for Windows packages failing CI HOT 2
- Fully-automate merges for the simplest class of package publications PRs HOT 2
- conf-gmp v4 doesn't install anymore HOT 1
- strange description of "host-system-other" HOT 1
- ERROR when building from source HOT 1
- Openbsd fails to build ocaml 5.20, 4.14.2 etc. on a fresh install HOT 2
- make conf-linux-kernel-version packages HOT 1
- [conf-libpcre] Installing conf-libpcre on Asahi Linux Fedora fails HOT 1
- Error building ocaml-base-compiler.5.2.0 on x86_64 windows HOT 2
- `opam switch create` with `static` option fails on Ubuntu aarch64 HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from opam-repository.