coq-community / docker-coq

Docker images of the Coq proof assistant (see also: https://github.com/coq-community/docker-coq-action) [maintainers=@erikmd,@himito]
https://hub.docker.com/r/coqorg/coq/
BSD 3-Clause "New" or "Revised" License
37 stars 3 forks source link

Request: Add 8.13.dev image #15

Closed LasseBlaauwbroek closed 3 years ago

LasseBlaauwbroek commented 3 years ago

An image for 8.13.dev would be useful to track the beta until 8.13 is out. This package is already in Opam so I guess this would not be very hard to achieve?

erikmd commented 3 years ago

Hi @LasseBlaauwbroek I've just seen your message (sorry for the delay but this week is very busy… anyway I could hopefully join the CUDW on Thursday/Friday :)

It is easy indeed to build an image from the v8.13 branch of coq: I have just opened PR #17 and will merge it in a couple of minutes.

However it happens that due to a recent improvement, setting up the automatic rebuild of this alpha image can't be implemented for the moment and I'll need to extend docker-keeper for that.

It's planned anyway (maybe on this Friday :), and in the meantime (Cc @LasseBlaauwbroek @palmskog @gares) feel free to ping me in Zulip or so if need be, so that I rebuild the image manually (just a matter of starting a dedicated pipeline on GitLab CI)

erikmd commented 3 years ago

The build actually failed, because of lack of this package (submitted just now): https://github.com/coq/opam-coq-archive/pull/1487

@palmskog hopefully you could take a look at that PR (then I'll restart the coqorg/coq:8.13 image build and close this issue :)

erikmd commented 3 years ago

hopefully you could take a look at that PR - then I'll restart the coqorg/coq:8.13 image build

or @Zimmi48 feel free to restart that pipeline at that time: https://gitlab.com/coq-community/docker-coq/-/pipelines/223995777

LasseBlaauwbroek commented 3 years ago

Thanks! (This is not super-urgent by the way so take your time.)

Zimmi48 commented 3 years ago

I think I did the restart and that it succeeded, but these dynamic GitLab pipelines are hard to understand and I may have messed up.

erikmd commented 3 years ago

@Zimmi48 yes it's OK! see the four tags here: https://hub.docker.com/r/coqorg/coq/tags?page=1&ordering=last_updated&name=8.13

LasseBlaauwbroek commented 3 years ago

Thanks for the package! I'm trying to do a build with github actions now, but it does not seem to work (see here https://github.com/coq-tactician/coq-tactician-stdlib/runs/1485753767):

The following dependencies couldn't be met:
     - coq-tactician-stdlib -> coq = 8.13.dev
        not available because the package is pinned to version 8.13+alpha

I'm using the 8.13 package and not the 8.13-alpha. Is this a mistake on my end, or did the packages get mixed up?

Zimmi48 commented 3 years ago

This error is surprising. I didn't know that there was any opam version anywhere of Coq that would be 8.13+alpha. In any case, you are using the right Docker image.

BTW, recent Docker-Coq-Action releases support the possibility to override just a part of the custom_script. This should be applicable to your use case I think. (See the doc.)

LasseBlaauwbroek commented 3 years ago

Indeed, I cannot find the 8.13+alpha package either. This is a bit of a mystery.

BTW, recent Docker-Coq-Action releases support the possibility to override just a part of the custom_script.

Thanks, I'll take a look (although I think that once my packages are in the main opam repo, I don't need custom_script anymore).

erikmd commented 3 years ago

Hi, this is because the coqorg/coq:8.13-alpha image does not use coq-core-dev but uses some git pinning + a hardcoded string for the coq version (which is not coq.8.13.0 nor coq.8.13+beta1, as it has not yet been released :) So I believe we should change that hardcoded string to 8.13.dev… thanks for your feedback! will push a patch now.

erikmd commented 3 years ago

Done: 8b085c59e8d7408d7a48232b2c663b5da1c8248e − Rebuild in progress: https://gitlab.com/coq-community/docker-coq/-/pipelines/224232349

erikmd commented 3 years ago

Hi @LasseBlaauwbroek, the pipeline has just been completed, so you should be able to re-test now! via GitHub Actions or locally:

$ sudo docker pull coqorg/coq:8.13 && sudo docker run --rm -it coqorg/coq:8.13 opam list
…
Status: Downloaded newer image for coqorg/coq:8.13
docker.io/coqorg/coq:8.13
# Packages matching: installed
# Name                   # Installed # Synopsis
base-bigarray            base
base-num                 base        Num library distributed with the OCaml compiler
base-threads             base
base-unix                base
conf-findutils           1           Virtual package relying on findutils
conf-gmp                 2           Virtual package relying on a GMP lib system installation
conf-m4                  1           Virtual package relying on m4
conf-perl                1           Virtual package relying on perl
coq                      8.13.dev    pinned to version 8.13.dev at git+https://github.com/coq/coq#7e8cf3dc743bd82cb499d18c5361d1a4dd55c707
coq-bignums              8.13+beta1  Bignums, the Coq library of arbitrary large numbers
dune                     2.5.1       pinned to version 2.5.1
num                      0           pinned to version 0
ocaml                    4.05.0      The OCaml compiler (virtual package)
ocaml-base-compiler      4.05.0      Official 4.05.0 release
ocaml-config             1           OCaml Switch Configuration
ocaml-secondary-compiler 4.08.1-1    OCaml 4.08.1 Secondary Switch Compiler
ocamlfind                1.8.1       pinned to version 1.8.1
ocamlfind-secondary      1.8.1       ocamlfind support for ocaml-secondary-compiler
opam-depext              1.1.5       install OS distribution packages
zarith                   1.10        pinned to version 1.10
LasseBlaauwbroek commented 3 years ago

I'm rerunning my builds now. This takes a while, but it looks like the builds have gone past the problematic point. So this appears to have resolved it. Thanks!