-
Notifications
You must be signed in to change notification settings - Fork 93
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
Fixes #437 - Removed files from local opam patch repo already merged upstream #438
Fixes #437 - Removed files from local opam patch repo already merged upstream #438
Conversation
…epo already merged upstream
Should the
|
If you remove this, you have to remove the repo add in Travis as well. I would keep this since it gives you the flexibility to work with patched opam packages any time you need to - say during the release process of a new CompCert or for experimentation. You can just drop some opam files into the packages folder and they will take precedence in Travis. If the folder is empty, it simply has no effect.
it does no really depend on #436 - the opam files also work without this. There is one quite old opam file for VST: https://github.com/coq/opam-coq-archive/tree/master/released/packages/coq-vst/coq-vst.2.2 I have opam files for the intermediate versions, but they are all patched to solve the Flocq issue. We might want to publish them anyway. |
|
@liyishuai : this is quite old for CompCert 3.3. I would just remove it. A dev build should be newer than the latest release and should be removed when the release is out. But I think usually people don't expect that year old stuff in the beta repos still works. Actually I would prefer if dev would just build current master. If you want, I can update it in this way. I think it would make more sense to provide opam files for the 2.3, 2.4 and 2.5. As I said, I have such files but they don't correspond to your tags because I had to use the system supplied Flocq (otherwise one can't use any tools to prove numeric code correct, and that's it what I do since ever with VST). But it wouldn't be difficult to supply opam files which correspond to what you have in your tags. They wouldn't be usable for my work but it hardly would take me an hour to do so. If you are willing to test these opam files, I can send them to you, you can test them locally (I can tell you how to set up a local opam repo for testing) and then we can push them. I could only do very basic tests - say a few examples - because non of my developments works without the Flocq patch. |
I'd recommend maintaining a Always having a dev version is helpful when a critical fix (e.g. #428) is merged, I can tell my colleagues to "upgrade your Moreover, maintaining an OPAM file within this repo allows users to fork, modify, and install with simply |
There is one difficulty with this - the opam files require a cryptographic hash checksum of the files. I am not sure one can get around this. I will ask. I agree that in general this is what one wants for a "dev" build, but package system maintainers tend to have a different opinion on that. In case one can't get around this, I think it wouldn't be difficult to write a short shell script which sets up and registers a local opam patch repo, which has a VST opam file for an arbitrary tag, commit hash or branch. |
Not required for extra-dev where the source is Git. I can help with the extra-dev releasing process. For now my problem is compiling with
|
I see - thanks! Good to know.
The Makefile compares the literal content of the VERSION file between the bundled CompCert, that is file (in the VST repo):
and the VERSION file in the To summarize: the Makefile expects that the local VERSION file and the VERSION file of the installed CompCert are identical except for newlines. |
P.S.: will you create a coq-vst-dev file based on git master or shall I do it? |
I've created the OPAM files on my side, now testing. |
OK. good. How about the issue with the CompCert version comparison. Shall I make a PR to extract just the version number from the file? I thought it was safer to compare the complete contents and this did work for me so far, but there seem to be variations in this file which have nothing to do with the version. |
I have it in https://github.com/liyishuai/VST/commit/12e751ffa29457cda72b7304bea73a6eac90e4ed which will be included in my PR. |
Looks good to me. I wonder if one could have a significantly different CompCert with the same version number if tag or branch is not empty, but I guess this would happen only to experts which should be able to handle the resulting error messages. I also expect that such experts would work with the bundled CompCert. |
Btw.: I yesterday sent Andrew opam files for VST 2.6-beta for testing. Did he forward these files to you? |
No I haven't seen those files. My files in #440 are adapted from extra-dev. |
Back to the |
Ah ok - so it was just a coincidence that you started to work on opam files for VST - I have been discussing this with @andrew-appel for a while and recently also changed the structure of the CompCert opam files quite a bit. I opened a new issue #441 to discuss the structure of the opam files.
Hmm - it looks like the now empty packages folder has been removed (sometimes). Either we need to take care that the folder is there are add a --yes to the opam repo add command. |
I created PR #443 which hopefully fixes this. |
@liyishuai : I just wanted to ask if #443 fixes your CI issues. |
Yes seems fixed in https://travis-ci.com/github/liyishuai/VST/builds/175569831 |
No description provided.