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

Switch to ocaml-opam/opam-repository-mingw #651

Merged
merged 1 commit into from
Mar 8, 2023
Merged

Conversation

dra27
Copy link
Member

@dra27 dra27 commented Mar 6, 2023

fdopen/opam-repository-mingw has not been receiving updates since November last year, following its previously announced deprecation.

opam 2.2 will add some required additional support for depext support on Windows and we (opam devs) expect to update opam-repository's compiler packages as part of this so that ocaml/opam-repository can be used without needing opam-repository-mingw, however we're suffering from a slight race condition for the next month or so with existing CI workflows still using fdopen/opam-repository-mingw and wanting to add ocaml/opam-repository in order to get new versions of packages which already work. Workflows which want new releases have been adding ocaml/opam-repository:

  opam-repositories: |
    opam-repository-mingw: https://github.com/fdopen/opam-repository-mingw.git
    default: https://github.com/ocaml/opam-repository.git

This has been causing some problems, the first of which was fixed in #647. The other problem is not in setup-ocaml but with opam-repository-mingw itself, which occurs when constraints in existing packages have to be updated because of new releases in opam-repository.

In order to deal with this, opam-repository-mingw has been forked to ocaml-opam/opam-repository-mingw solely for the purpose of applying constraint changes to it, and adding the missing 4.x compiler.

This is intended solely to bridge the gap between requiring both opam-repository-mingw, which is necessary at the moment while the compiler packages are being stabilised and an opam 2.2 capable of reliably using them isn't ready.

With this PR, default workflows will be unaffected, but other workflows can now use:

  opam-repositories: |
    opam-repository-mingw: https://github.com/ocaml-opam/opam-repository-mingw.git
    default: https://github.com/ocaml/opam-repository.git

@dra27
Copy link
Member Author

dra27 commented Mar 6, 2023

This PR is a draft, because it's still being discussed and because updates to the infrastructure blog and ocaml.org to support it are also being drafted.

@dra27 dra27 marked this pull request as ready for review March 8, 2023 11:09
@dra27
Copy link
Member Author

dra27 commented Mar 8, 2023

Cross-referencing ocaml-opam/opam-repository-mingw#4; this is ready to go.

@smorimoto
Copy link
Member

Looks good to me!

@smorimoto smorimoto merged commit 28787b9 into ocaml:master Mar 8, 2023
@smorimoto
Copy link
Member

@dra27 ocaml-variants.4.14.1+msvc64c doesn't seem to exist on sunset branch, but is it really enough to select the package without the "c" suffix (+msvc64)?

@dra27
Copy link
Member Author

dra27 commented Mar 8, 2023

@smorimoto - it does exist? https://github.com/ocaml-opam/opam-repository-mingw/tree/sunset/packages/ocaml-variants/ocaml-variants.4.14.1+msvc64c ?

For the 4.14.1 packages, the "c" and non-"c" packages are identical. For all the previous releases, the "c" packages install much faster.

@smorimoto
Copy link
Member

I misread the error. It's just that ocaml.4.14.1 is missing.
https://github.com/ocaml-opam/opam-repository-mingw/tree/sunset/packages/ocaml

@dra27
Copy link
Member Author

dra27 commented Mar 8, 2023

Whoops! 😱 See ocaml-opam/opam-repository-mingw#5!

@dra27 dra27 deleted the sunset branch March 8, 2023 17:31
@smorimoto
Copy link
Member

I'm a little relieved to know that even you make small slips 🙃

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 this pull request may close these issues.

Uses discontinued repository on Windows
2 participants