Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to MetaCoq 1.3 #242

Open
womeier opened this issue Apr 9, 2024 · 7 comments · May be fixed by #243
Open

Update to MetaCoq 1.3 #242

womeier opened this issue Apr 9, 2024 · 7 comments · May be fixed by #243

Comments

@womeier
Copy link

womeier commented Apr 9, 2024

I was looking into extracting the counter module to concordium, using our Wasm backend for CertiCoq.

CertiCoq is currently on MetaCoq 1.3, which ConCert doesn't seem to work with.

Do you already have plans to update?

@4ever2
Copy link
Collaborator

4ever2 commented Apr 9, 2024

I already started looking at updating to MetaCoq 1.3. However, I ran into a problem that looks like a MetaCoq bug. I haven't had time yet to identify the exact cause of the problem.

@spitters
Copy link
Collaborator

spitters commented Apr 9, 2024

@4ever2 we should get ConCert in MetaCoq CI...

@spitters
Copy link
Collaborator

spitters commented Apr 9, 2024 via email

@womeier
Copy link
Author

womeier commented Apr 9, 2024

I already started looking at updating to MetaCoq 1.3. However, I ran into a problem that looks like a MetaCoq bug. I haven't had time yet to identify the exact cause of the problem.

@4ever2 It seems you have a version that works with MC 1.3 (without support for the elm extraction, that's no big deal of course).
Could you push that to a branch?
Things break at various places when I update to MC 1.3.

@womeier
Copy link
Author

womeier commented Apr 18, 2024

I have a version of ConCert now (with a bunch of things commented out), that compiles with MetaCoq 1.3.

Extracting the counter smart contract works, but I can't yet compile the extracted rust project as I'm not sure how to set up the required concordium libraries.
Could you give me a pointer on which versions of which packages I should install?

Running cargo build in extraction/tests/extracted-code/concordium-extract/counter-extracted gives the following error:

error: failed to select a version for the requirement `concordium-std-derive = "^2.0"`
candidate versions found which didn't match: 6.0.0
location searched: crates.io index
required by package `concordium-std v2.0.0`
    ... which satisfies dependency `concordium-std = "^2.0.0"` of package `concert-std v0.1.0 (/home/wolfgang/ProjectsUni/Compilerstep/smart_contracts/ConCert/extraction/tests/extracted-code/concordium-extract/concert-std)`

It seems I need version 2.0.0, which is not available via crates.io, is that what you currently use?

@spitters
Copy link
Collaborator

spitters commented Jun 2, 2024

@womeier I seem to recall you made progress on this. What's the current status?

@womeier
Copy link
Author

womeier commented Jun 2, 2024

I commented out some proofs and tests, to make the counter module extraction work with MetaCoq 1.3, I don't think the other smart contracts work.

These are my changes:
womeier/coq-rust-extraction@f113dff
womeier@cf5d7d8

@4ever2 4ever2 linked a pull request Jun 18, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants