meggart / DiskArrays.jl

Other
72 stars 13 forks source link

ArchGDAL tests on julia 1.6 fail because `@kwdef` is not defined #160

Closed felixcremer closed 4 weeks ago

felixcremer commented 5 months ago

On julia 1.6 the ArchGDAL tests fail with the following. We would either need to restrict the julia version bound for DiskArrays to 1.9 or higher or we would change the @kwdef to Base.@kwdef.


ERROR: LoadError: LoadError: LoadError: LoadError: UndefVarError: @kwdef not defined
Stacktrace:
  [1] top-level scope
    @ :0
  [2] include(mod::Module, _path::String)
    @ Base ./Base.jl:384
  [3] include(x::String)
    @ DiskArrays ~/.julia/packages/DiskArrays/LD5Gn/src/DiskArrays.jl:1
  [4] top-level scope
    @ ~/.julia/packages/DiskArrays/LD5Gn/src/diskarray.jl:30
  [5] include(mod::Module, _path::String)
    @ Base ./Base.jl:384
  [6] include(x::String)
    @ DiskArrays ~/.julia/packages/DiskArrays/LD5Gn/src/DiskArrays.jl:1
  [7] top-level scope
    @ ~/.julia/packages/DiskArrays/LD5Gn/src/DiskArrays.jl:15
  [8] include
    @ ./Base.jl:384 [inlined]
  [9] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String)
    @ Base ./loading.jl:1235
 [10] top-level scope
    @ none:1
 [11] eval
    @ ./boot.jl:360 [inlined]
 [12] eval(x::Expr)
    @ Base.MainInclude ./client.jl:446
 [13] top-level scope
    @ none:1
in expression starting at /home/runner/.julia/packages/DiskArrays/LD5Gn/src/batchgetindex.jl:7
in expression starting at /home/runner/.julia/packages/DiskArrays/LD5Gn/src/batchgetindex.jl:7
in expression starting at /home/runner/.julia/packages/DiskArrays/LD5Gn/src/diskarray.jl:30
in expression starting at /home/runner/.julia/packages/DiskArrays/LD5Gn/src/DiskArrays.jl:1
rafaqz commented 5 months ago

We are also using the @assume_effects macro so it wont work on 1.6 anyway.

I think we need to bump ArchGDAL to 1.9.

I already did this for a bunch of JuliaGeo packages, and given our available dev time supporting 1.6 is not worth the effort anymore

felixcremer commented 5 months ago

Yes, we should bump packages to 1.9 but the main problem is, that DiskArrays claims to be compatible to 1.6 and therefore the new version is tried in CI for ArchGDAL.

rafaqz commented 5 months ago

DiskArrays is lying! 😂

We need a PR fixing the DidkArrays julia version to 1.9 and also testing on 1.9.

lupemba commented 5 months ago

The compat bound is now updated to Julia 1.9 https://github.com/meggart/DiskArrays.jl/pull/161

meggart commented 5 months ago

Yes, but we are still a bit in trouble, since the package manager will try to install 0.4.0 for older julia versions. Whenever we make PRs to downstream packages to upgrade DiskArrays we should make sure to require at least DiskArrays 0.4.1 to avoid e.g. julia 1.8 users getting a broken package version

rafaqz commented 5 months ago

We need to yank 0.4.0

add a line with yanked = true below the 0.4.0 entry here: https://github.com/JuliaRegistries/General/blob/26a799dd08b207d2d8d3ce91d4575b8cec2b569f/D/DiskArrays/Versions.toml#L122

meggart commented 5 months ago

https://github.dev/meggart/General/tree/yank_diskarrays_04

meggart commented 4 months ago

This has been around for 3 weeks now. @rafaqz do you have any ideas how to draw the attention of a registry maintainer towards this PR https://github.com/JuliaRegistries/General/pull/102850

rafaqz commented 4 months ago

I'm pestering people on slack, see if they respond.

People have been doing unnecessary yanks and Pkg isn't good at handling it, but this is a very legitimate use case.

meggart commented 4 weeks ago

I think this is resolved now.