JuliaData / IndexedTables.jl

Flexible tables with ordered indices
https://juliadb.org
MIT License
121 stars 37 forks source link

Is there a reason why IndexedTables is pinned to StructArrays 0.4.1? #308

Open JoaoAparicio opened 10 months ago

JoaoAparicio commented 10 months ago

bump to 0.5 https://github.com/JuliaData/IndexedTables.jl/pull/309

JoaoAparicio commented 10 months ago

https://github.com/JuliaArrays/StructArrays.jl/pull/235 https://github.com/JuliaArrays/StructArrays.jl/pull/242

JoaoAparicio commented 10 months ago

  Test threw exception
  Expression: isequal(join(t, t2; how = :anti), t_anti)
  ArgumentError: only eltypes with fields are supported
  Stacktrace:
    [1] (StructArrays.StructVector{NamedTuple{(), Tuple{}}, NamedTuple{(), Tuple{}}})(c::NamedTuple{(), Tuple{}})
      @ StructArrays ~/.julia/dev/StructArrays/src/structarray.jl:17
    [2] (StructArrays.StructArray{NamedTuple{(), Tuple{}}})(c::NamedTuple{(), Tuple{}})
      @ StructArrays ~/.julia/dev/StructArrays/src/structarray.jl:94
    [3] StructArrays.StructArray(c::NamedTuple{(), Tuple{}})
      @ StructArrays ~/.julia/dev/StructArrays/src/structarray.jl:97
    [4] StructArrays.StructArray(; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
      @ StructArrays ~/.julia/dev/StructArrays/src/structarray.jl:101
    [5] StructArrays.StructArray()
      @ StructArrays ~/.julia/dev/StructArrays/src/structarray.jl:101
    [6] (StructArrays.StructVector)(; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
      @ StructArrays ~/.julia/dev/StructArrays/src/structarray.jl:110
    [7] (StructArrays.StructVector)()
      @ StructArrays ~/.julia/dev/StructArrays/src/structarray.jl:110
    [8] collect_columns_flattened(itr::Base.Generator{Base.Iterators.Filter{IndexedTables.var"#259#269", IndexedTables.GroupJoinPerm{StructArrays.GroupPerm{StructArrays.StructVector{NamedTuple{(:x,), Tuple{Int64}}, NamedTuple{(:x,), Tuple{Vector{Int64}}}, Int64}, Base.OneTo{Int64}, Base.OneTo{Int64}}, StructArrays.GroupPerm{StructArrays.StructVector{NamedTuple{(:x,), Tuple{Int64}}, NamedTuple{(:x,), Tuple{Vector{Int64}}}, Int64}, Base.OneTo{Int64}, Base.OneTo{Int64}}}}, IndexedTables.var"#268#279"{IndexedTables.var"#iterate_value_push_key#273"{NamedTuple{(:y,), Tuple{Float64}}, NamedTuple{(:z,), Tuple{Union{Missing, Float64}}}, false, DataType, Nothing, Nothing, StructArrays.StructVector{NamedTuple{(:x,), Tuple{Int64}}, NamedTuple{(:x,), Tuple{Vector{Int64}}}, Int64}, Nothing, IndexedTables.var"#282#283", StructArrays.StructVector{NamedTuple{(:y,), Tuple{Float64}}, NamedTuple{(:y,), Tuple{Vector{Float64}}}, Int64}, StructArrays.StructVector{NamedTuple{(:z,), Tuple{Union{Missing, Float64}}}, NamedTuple{(:z,), Tuple{Vector{Float64}}}, Int64}, Bool, Bool, Base.OneTo{Int64}, Base.OneTo{Int64}, StructArrays.StructVector{NamedTuple{(:x,), Tuple{Int64}}, NamedTuple{(:x,), Tuple{Vector{Int64}}}, Int64}, StructArrays.StructVector{NamedTuple{(:x,), Tuple{Int64}}, NamedTuple{(:x,), Tuple{Vector{Int64}}}, Int64}}}})
      @ IndexedTables ~/.julia/dev/IndexedTables/src/collect.jl:26
    [9] _join!(I::StructArrays.StructVector{NamedTuple{(:x,), Tuple{Int64}}, NamedTuple{(:x,), Tuple{Vector{Int64}}}, Int64}, init::Nothing, ::Val{:anti}, ::Val{false}, f::IndexedTables.var"#282#283", iter::IndexedTables.GroupJoinPerm{StructArrays.GroupPerm{StructArrays.StructVector{NamedTuple{(:x,), Tuple{Int64}}, NamedTuple{(:x,), Tuple{Vector{Int64}}}, Int64}, Base.OneTo{Int64}, Base.OneTo{Int64}}, StructArrays.GroupPerm{StructArrays.StructVector{NamedTuple{(:x,), Tuple{Int64}}, NamedTuple{(:x,), Tuple{Vector{Int64}}}, Int64}, Base.OneTo{Int64}, Base.OneTo{Int64}}}, ldata::StructArrays.StructVector{NamedTuple{(:y,), Tuple{Float64}}, NamedTuple{(:y,), Tuple{Vector{Float64}}}, Int64}, rdata::StructArrays.StructVector{NamedTuple{(:z,), Tuple{Union{Missing, Float64}}}, NamedTuple{(:z,), Tuple{Vector{Float64}}}, Int64}; missingtype::Type, init_group::Nothing, accumulate::Nothing)
      @ IndexedTables ~/.julia/dev/IndexedTables/src/join.jl:144
   [10] join(f::IndexedTables.var"#282#283", left::IndexedTable{StructArrays.StructVector{NamedTuple{(:x, :y), Tuple{Int64, Float64}}, NamedTuple{(:x, :y), Tuple{Vector{Int64}, Vector{Float64}}}, Int64}}, right::IndexedTable{StructArrays.StructVector{NamedTuple{(:x, :z), Tuple{Int64, Float64}}, NamedTuple{(:x, :z), Tuple{Vector{Int64}, Vector{Float64}}}, Int64}}; how::Symbol, group::Bool, lkey::Tuple{Symbol}, rkey::Tuple{Symbol}, lselect::Tuple{Int64}, rselect::Tuple{Int64}, name::Nothing, cache::Bool, missingtype::Type, init_group::Nothing, accumulate::Nothing)
      @ IndexedTables ~/.julia/dev/IndexedTables/src/join.jl:256
   [11] #join#281
      @ ~/.julia/dev/IndexedTables/src/join.jl:266 [inlined]
   [12] macro expansion
      @ ~/julia-1.9.4/share/julia/stdlib/v1.9/Test/src/Test.jl:478 [inlined]
   [13] macro expansion
      @ ~/.julia/dev/IndexedTables/test/test_join.jl:45 [inlined]
   [14] macro expansion
      @ ~/julia-1.9.4/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [15] macro expansion
      @ ~/.julia/dev/IndexedTables/test/test_join.jl:44 [inlined]
   [16] macro expansion
      @ ~/julia-1.9.4/share/julia/stdlib/v1.9/Test/src/Test.jl:1498 [inlined]
   [17] top-level scope
      @ ~/.julia/dev/IndexedTables/test/test_join.jl:2