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

Building Docs for Packages When Depext is Unavailable #146

Open
sabine opened this issue Sep 14, 2023 · 5 comments
Open

Building Docs for Packages When Depext is Unavailable #146

sabine opened this issue Sep 14, 2023 · 5 comments

Comments

@sabine
Copy link
Contributor

sabine commented Sep 14, 2023

Opam plugin "depext" may require upgrading/reinstalling. Reinstall the plugin on the current switch? [Y/n] y
The following actions will be performed:
  - recompile opam-depext 1.2.1-1

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved opam-depext.1.2.1-1  (cached)
-> removed   opam-depext.1.2.1-1
-> installed opam-depext.1.2.1-1
Done.

<><> opam-depext.1.2.1-1 installed successfully <><><><><><><><><><><><><><><><>
=> opam-depext is unnecessary when used with opam >= 2.1. Please use opam install directly instead
# Run eval $(opam env) to update the current shell environment

<><> Carrying on to "opam depext -viy llvm.15.0.7+nnp-2 stdlib-shims.0.3.0 integers.0.7.0 dune-configurator.3.10.0 dune.3.10.0 ctypes.0.21.1 csexp.1.5.2 conf-llvm.15 conf-bash.1 bigarray-compat.1.1.0" 

You are using opam 2.1+, where external dependency handling has been integrated: consider calling opam directly, the 'depext' plugin interface is provided for backwards compatibility only
# Detecting depexts using vars: arch=x86_64, os=linux, os-distribution=debian, os-family=debian
[ERROR] No solution for llvm.15.0.7+nnp-2 & stdlib-shims.0.3.0 & integers.0.7.0 & dune-configurator.3.10.0 & dune.3.10.0 & ctypes.0.21.1 & csexp.1.5.2 & conf-llvm.15 & conf-bash.1 & bigarray-compat.1.1.0:   * Missing dependency:
            - conf-llvm >= 15
            depends on the unavailable system package 'llvm-15-dev'. Use `--no-depexts' to attempt installation anyway, or it is possible that a depext package name in the opam file is incorrect.


Command failed: opam --cli=2.1 list --readonly --external '--resolve=llvm.15.0.7+nnp-2,stdlib-shims.0.3.0,integers.0.7.0,dune-configurator.3.10.0,dune.3.10.0,ctypes.0.21.1,csexp.1.5.2,conf-llvm.15,conf-bash.1,bigarray-compat.1.1.0' returned 20

From https://ocaml.org/p/llvm/latest/doc/index.html

Would it be possible to install a package without the depext just for the purpose of generating documentation?

If not, I think this means we need more images on which to build, so that depexts can be installed.

@kit-ty-kate
Copy link

This particular package would work if the distribution used was upgraded though. From a quick scan at the code, it looks like Debian 10 (2 versions out of date) is still being used:

let os_version = function Ubuntu -> "20.04" | Fedora -> "33" | Debian -> "10"

@sabine
Copy link
Contributor Author

sabine commented Sep 14, 2023

Ah ok. Upgrading to the next Debian version sounds fine in that case.

@tmcgilchrist
Copy link
Member

Fix in #147

@kit-ty-kate
Copy link

the overarching problem is still around as there might be a package that require a specific distribution to be compiled.

@kit-ty-kate kit-ty-kate reopened this Sep 19, 2023
@tmcgilchrist
Copy link
Member

Docs-CI only considers debian-12 as a distribution to build on. In future we could extend that to different Linux distributions quite easily. Do you have a sense of how often this situation occurs with a package needing a specific Linux distribution?

In general we should extend docs to build more platforms specific packages for MacOS, FreeBSD and Windows? Is there a way to find how many packages are affected from just the opam-repository files?

@sabine we could probably look through the solver failures and classify them into platform failures and other types of failures.

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

No branches or pull requests

3 participants