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

Unsatisfiable requirements detected for package REPL #2474

Closed
ctkelley opened this issue Mar 6, 2024 · 11 comments
Closed

Unsatisfiable requirements detected for package REPL #2474

ctkelley opened this issue Mar 6, 2024 · 11 comments

Comments

@ctkelley
Copy link

ctkelley commented Mar 6, 2024

I'm getting strange failures with Documenter. I fixed it, but something strange is happening. See the last message.

My Project.toml in /docs is

[deps]
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
DocumenterTools = "35a29f4d-8980-5a13-9543-d66fff28ecb8"
DocumenterCitations = "daee34ce-89f3-4625-b898-19384cb65244"

[compat]
Documenter = "1"

and the errors look like the dump below.

I'm running Julia 1.10.2 on a Mac with the latest OS.

Run julia --project=docs/ -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate()'
   Cloning default registries into `~/.julia`
   Cloning registry from "https://github.com/JuliaRegistries/General.git"
25l    Fetching: [>                                        ]  0.0 %
    Fetching: [=====>                                   ]  11.2 %
    Fetching: [=================>                       ]  40.3 %
    Fetching: [=============================>           ]  70.7 %
25h     Added registry `General` to `~/.julia/registries/General`
 Resolving package versions...
ERROR: Unsatisfiable requirements detected for package REPL [3fa0cd96]:
 REPL [3fa0cd96] log:
 ├─possible versions are: 1.1.1 or uninstalled
 └─found to have no compatible versions left with Documenter [e30172f5] 
   └─Documenter [e30172f5] log:
     ├─possible versions are: [0.19.0-0.19.7, 0.20.0, 0.21.0-0.21.5, 0.22.0-0.22.6, 0.23.0-0.23.4, 0.24.0-0.24.11, 0.25.0-0.25.5, 0.26.0-0.26.3, 0.27.0-0.27.25, 1.0.0-1.0.1, 1.1.0-1.1.2, 1.2.0-1.2.1, 1.3.0] or uninstalled
     └─restricted to versions 1.3.0-1 by an explicit requirement, leaving only versions 1.3.0
Stacktrace:
 [1] #propagate_constraints!#61(::Bool, ::Function, ::Pkg.GraphType.Graph, ::Set{Int64}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/GraphType.jl:1007
 [2] propagate_constraints! at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/GraphType.jl:948 [inlined]
 [3] #simplify_graph!#121(::Bool, ::Function, ::Pkg.GraphType.Graph, ::Set{Int64}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/GraphType.jl:1462
 [4] simplify_graph! at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/GraphType.jl:1462 [inlined] (repeats 2 times)
 [5] resolve_versions!(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}, ::Nothing) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:371
 [6] resolve_versions! at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:315 [inlined]
 [7] #add_or_develop#63(::Array{Base.UUID,1}, ::Symbol, ::Function, ::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:1172
 [8] #add_or_develop at ./none:0 [inlined]
 [9] #add_or_develop#17(::Symbol, ::Bool, ::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}, ::Function, ::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/API.jl:59
 [10] #add_or_develop at ./none:0 [inlined]
 [11] #add_or_develop#16 at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/API.jl:36 [inlined]
 [12] #add_or_develop at ./none:0 [inlined]
 [13] #add_or_develop#12 at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/API.jl:33 [inlined]
 [14] #add_or_develop at ./none:0 [inlined]
 [15] #develop#23 at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/API.jl:65 [inlined]
 [16] develop(::Pkg.Types.PackageSpec) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/Pkg/src/API.jl:65
 [17] top-level scope at none:0
Error: Process completed with exit code 1.
@ctkelley
Copy link
Author

ctkelley commented Mar 6, 2024

I compared this failure with a success for another packages and saw this with version 1.1 for the failure and 1.9.4 for the success. This just started happening within the last couple days. How could the two packages be different in this way?

Run julia-actions/setup-julia@latest
  with:
    version: 1.1
    include-all-prereleases: false
    arch: X64
    show-versioninfo: false
/usr/bin/tar xf /home/runner/work/_temp/5638152d-32da-45b4-b3f1-0c07fd6c433c --strip-components=1 -C /opt/hostedtoolcache/julia/1.1.1/x64
/opt/hostedtoolcache/julia/1.1.1/x64/bin/julia --version
julia version 1.1.1

@ctkelley
Copy link
Author

ctkelley commented Mar 6, 2024

The problem was that in the .github/workflows/docs.yml file the entry

julia-version: [1.10]

seemed to have loaded version 1.1. When I changed it to the one in the working repo

julia-version: [1.9]

the problem went away. Is this supposed to happen? I'd been using that docs.yml file for weeks with no problems until today.

@goerz
Copy link
Member

goerz commented Mar 6, 2024

REPL possible versions are: 1.1.1 or uninstalled

That seems weird. Maybe REPL got moved out of the stdlib and now has a lower version number than it used to be?

Documenter may have to change its compat spec for REPL to “1”

You might have better luck asking about this on Slack or Discourse

@ctkelley
Copy link
Author

ctkelley commented Mar 6, 2024

I asked here because it seemed that it was a problem or bug with Documenter. In hindsight, Discourse might have been better.

@goerz
Copy link
Member

goerz commented Mar 6, 2024

julia-version: [1.10] seemed to have loaded version 1.1.

That sounds to me maybe like a bug in Pkg?

@goerz
Copy link
Member

goerz commented Mar 6, 2024

I asked here because it seemed that it was a problem or bug with Documenter. In hindsight, Discourse might have been better.

I’d still ask in a more general forum. This is either an issue with the Julia 1.10 release as the first one with a double digit minor version or an issue with the move of stdlib moving to independent versioning. It would be good to get to the bottom of this, even if it’s not directly Documenter-related. I actually think I have seen this problem before in some other context.

@goerz goerz changed the title RROR: Unsatisfiable requirements detected for package REPL [3fa0cd96]: Unsatisfiable requirements detected for package REPL Mar 6, 2024
@fredrikekre
Copy link
Member

In YAML, you have to use the string "1.10", otherwise it is the floating point value 1.1.

@ctkelley
Copy link
Author

ctkelley commented Mar 6, 2024

Just tried

julia-version: ["1.10"]

and that worked. Those of us who pattern match on other people's YAML files will get surprised by this. It suspect that's most users of Julia.

@goerz
Copy link
Member

goerz commented Mar 6, 2024

In YAML, you have to use the string "1.10", otherwise it is the floating point value 1.1.

Ah, I didn't account for the possibility that CI was actually running Julia 1.1! Good catch! 👍

@goerz
Copy link
Member

goerz commented Mar 6, 2024

@ctkelley If you can confirm that putting quotes around 1.10 solves the problem, I think we can close this issue

Edit: ah, you already did. Great!

@goerz goerz closed this as completed Mar 6, 2024
@goerz
Copy link
Member

goerz commented Mar 6, 2024

Those of us who pattern match on other people's YAML files will get surprised by this.

I wonder if the julia-actions/setup-julia action can detect this. Actually, there's already an issue for it: julia-actions/setup-julia#204

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants