2024: Tables.jl vs TableTraits.jl/IterableTables.jl?

It is 6 years after Tables.jl appeared and when I am searching for this vs TableTraits.jl / IterableTables.jl I still get pointed to this old thread.

It seems that the queryverse never switched to Tables.jl, hence this 6 years old thread appears unresolved. Can someone give an update about the state of the Julia ecosystem in this regard?

If you have a type you want other packages to treat as tabular, use Tables.jl. AlgebraOfGraphics.jl, DataFrames.jl, StructArrays.jl etc. all rely on the Tables.jl API. I don’t think any of them consider TableTraits.jl or IterableTables.jl.

Importantly, Tables.jl defines fallbacks for the TableTraits.jl API. So you get both if you implement Tables.jl.

3 Likes