JuliaIntervals / IntervalLinearAlgebra.jl

Linear algebra done rigorously
MIT License
36 stars 9 forks source link

Add missing prefix for radius #135

Closed blegat closed 2 months ago

blegat commented 2 months ago

eigenbox is currently failing with

Stacktrace:
  [1] eigenbox(A::Symmetric{Interval{Float64}, Matrix{Interval{Float64}}}, ::IntervalLinearAlgebra.Rohn)
    @ IntervalLinearAlgebra ~/.julia/packages/IntervalLinearAlgebra/2hpkP/src/eigenvalues/interval_eigenvalues.jl:51
  [2] eigenbox(A::Matrix{Interval{Float64}}, method::IntervalLinearAlgebra.Rohn)
    @ IntervalLinearAlgebra ~/.julia/packages/IntervalLinearAlgebra/2hpkP/src/eigenvalues/interval_eigenvalues.jl:95
  [3] eigenbox(A::Matrix{Interval{Float64}})
    @ IntervalLinearAlgebra ~/.julia/packages/IntervalLinearAlgebra/2hpkP/src/eigenvalues/interval_eigenvalues.jl:126

Looking at other places where radius is used in the package, it seems that it's simply not exported by IntervalArithmetic so we need an explicit prefix

blegat commented 2 months ago

The failure looks like https://github.com/JuliaReach/LazySets.jl/issues/3238, we need to update to LazySets v2 it seems

schillic commented 2 months ago

LazySets does not support v0.22 of IntervalArithmetic.

lucaferranti commented 2 months ago

LazySets does not support v0.22 of IntervalArithmetic.

neither does ILA, so there should be no problem I think?

blegat commented 2 months ago

IntervalConstraintProgramming.jl only supports v0.20 it seems anyway

blegat commented 2 months ago

The documentation errors because some non-exported abstract type are not included in the docs. autodocs does not include them because Private = false is used an option. We can either use Private = true or export these abstract types, what do you prefer ?

lucaferranti commented 2 months ago

The documentation errors because some non-exported abstract type are not included in the docs. autodocs does not include them because Private = false is used an option. We can either use Private = true or export these abstract types, what do you prefer ?

I think we can just set Private = true for now. I need to do some repo clean up at some point, sorry you hit all these corners

blegat commented 2 months ago

There are still other documentation failures, maybe we can merge this PR since it's unrelated and fix this in another one ?

blegat commented 2 months ago

@lucaferranti @schillic bump :)

lucaferranti commented 2 months ago

Sorry! I ll sort this out tomorrow while travelling to JuliaCon (see you there if you are coming)

blegat commented 2 months ago

Thanks! Unfortunately I won't be able to attend this year

lucaferranti commented 2 months ago

@blegat this is merged now, but for some reason the documentation deployment fails on main, I'll try to debug it. (Help welcome if you spot the reason)

schillic commented 2 months ago

The error message is:

git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

I cannot see any green checkmarks next to the commits on master, so maybe this never worked? It is interesting that it worked on this fork, though. In any case, I do not see how this PR would be the cause.

lucaferranti commented 2 months ago

In any case, I do not see how this PR would be the cause.

It's definitely not, but I think we still need to fix that otherwise when making a release it will not build the docs

blegat commented 2 months ago

One should double check the setup with secret keys etc... as detailed in https://documenter.juliadocs.org/stable/man/hosting/ I would guess this is the cause but I don't have the permission to check

lucaferranti commented 1 month ago

yeah it might be I messed that up at some point and went unnoticed till now

blegat commented 3 weeks ago

@lucaferranti Just had the same issue when updating a package. It seems that the setup changed at some point. Try

] dev IntervalLinearAlgebra

julia> using DocumenterTools

julia> DocumenterTools.genkeys(IntervalLinearAlgebra)
┌ Info: Add the key below as a new 'Deploy key' on GitHub (https://github.com/JuliaIntervals/IntervalLinearAlgebra.jl/settings/keys) with read and write access.
└ The 'Title' field can be left empty as GitHub can infer it from the key comment.

ssh-rsa ... Documenter

[ Info: Add a secure 'Repository secret' named 'DOCUMENTER_KEY' (to https://github.com/JuliaIntervals/IntervalLinearAlgebra.jl/settings/secrets if you deploy using GitHub Actions) with value:

...

I'm guessing that you will see that you did not have a deploy key even if you had a repo secret (that was my case). By adding a deploy key and updating the secret, I got things to work again.

lucaferranti commented 3 weeks ago

Thanks @blegat ! That indeed fixed the problem! Pretty trivial in retrospection.

Now documentation is green on main, I'll tag a new patch release as soon as workflow ends