Skip to content

Conversation

@DilumAluthge
Copy link
Member

Closes #47158

@DilumAluthge DilumAluthge added the CI continuous integration label Oct 28, 2021
@DilumAluthge DilumAluthge temporarily deployed to stopwatch October 28, 2021 10:55 Inactive
@DilumAluthge
Copy link
Member Author

@IanButterworth Per JuliaLang/julia#42806 (comment), I was under the impression that this was fixed by JuliaLang/julia#42806. But it looks like it is still failing?

Here is the version info for the Julia nightly that was used on this job:

Julia Version 1.8.0-DEV.832
Commit 404e584165 (2021-10-28 01:11 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Xeon(R) Platinum 8171M CPU @ 2.60GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-12.0.1 (ORCJIT, skylake-avx512)

@IanButterworth
Copy link
Member

I thought this might happen. It seems like it will need JuliaLang/Pkg.jl#2787

I'll check manually

@IanButterworth
Copy link
Member

Yeah JuliaLang/Pkg.jl#2787 is needed.

Basically the manifest is invalid for the current nightly v1.8, so that PR allows even a non-updating Pkg.resolve to update any included or missing stdlibs.
It mimics the way non-versioned stdlibs are allowed to change/be added as julia version changes, but for versioned stdlibs

               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.8.0-DEV.834 (2021-10-28)
 _/ |\__'_|_|_|\__'_|  |  Commit c762f10502 (0 days old master)
|__/                   |

(v1.8) pkg> activate /Users/ian/Documents/GitHub/General/.ci
  Activating project at `~/Documents/GitHub/General/.ci`

(.ci) pkg> resolve
ERROR: Unsatisfiable requirements detected for package OpenBLAS_jll [4536629a]:
 OpenBLAS_jll [4536629a] log:
 ├─possible versions are: 0.3.17 or uninstalled
 └─restricted to versions 0.3.13 by an explicit requirement — no versions left

(.ci) pkg> 
% /Applications/Julia-1.8.app/Contents/Resources/julia/bin/julia --project
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.8.0-DEV.834 (2021-10-28)
 _/ |\__'_|_|_|\__'_|  |  Commit c762f10502 (0 days old master)
|__/                   |

julia> import Pkg
[ Info: Precompiling Pkg [44cfe95a-1eb2-52ea-b672-e2afdf69b79f]

(Pkg) pkg> activate /Users/ian/Documents/GitHub/General/.ci
  Activating project at `~/Documents/GitHub/General/.ci`

(.ci) pkg> resolve
   Installed RegistryTools ────────────── v1.5.7
   Installed licensecheck_jll ─────────── v0.3.1+1
   Installed StringDistances ──────────── v0.10.0
   Installed LicenseCheck ─────────────── v0.2.2
   Installed UnbalancedOptimalTransport ─ v0.2.0
   Installed RegistryCI ───────────────── v7.1.7
   Installed VisualStringDistances ────── v0.1.1
  Downloaded artifact: licensecheck
  No Changes to `~/Documents/GitHub/General/.ci/Project.toml`
    Updating `~/Documents/GitHub/General/.ci/Manifest.toml`
  [7b1f6079] + FileWatching
  [ea8e919c] ~ SHA ⇒ v0.7.0
  [4536629a] ↑ OpenBLAS_jll v0.3.13+7 ⇒ v0.3.17+2

(.ci) pkg> 

@IanButterworth
Copy link
Member

Hopefully fixed on nightlies now. Can someone rerun the nightly job?

@DilumAluthge DilumAluthge reopened this Nov 5, 2021
@DilumAluthge DilumAluthge temporarily deployed to stopwatch November 5, 2021 08:17 Inactive
@DilumAluthge
Copy link
Member Author

@IanButterworth Why is precompile trying to write to the project file?

@DilumAluthge DilumAluthge temporarily deployed to stopwatch November 5, 2021 09:49 Inactive
@DilumAluthge DilumAluthge temporarily deployed to stopwatch November 5, 2021 09:52 Inactive
@DilumAluthge DilumAluthge merged commit 401a90e into master Nov 5, 2021
@DilumAluthge DilumAluthge deleted the dpa/ci-nightly branch November 5, 2021 09:56
@IanButterworth
Copy link
Member

Why is precompile trying to write to the project file?

I tried locally and there were no changes made to the Project (confirmed by git)

I then set the project as read-only and hit

(.ci) pkg> resolve
ERROR: SystemError: opening file "/Users/ian/Documents/GitHub/General/.ci/Project.toml": Permission denied

I guess the heuristic here isn't actually detecting that there's no changes
https://github.com/JuliaLang/Pkg.jl/blob/6f8e36db88ed0c7727b5616b2baa58787cdc4e95/src/Types.jl#L1014

@IanButterworth
Copy link
Member

Why is Pkg.precompile() directly called?
Pkg.instantiate() is called so precompile will be automatically called. And that precompile won't hit the resolve that's now called when it's run manually

@IanButterworth
Copy link
Member

Actually, I think Pkg.instantiate() should still allow Pkg.precompile() to resolve so that versioned stdlibs can be updated, so my question is moot and I need to fix that on Pkg

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

Labels

CI continuous integration

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CI fails for Nightly build of Julia due to compat requirement for OpenBLAS

3 participants