Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add metadata #48

Merged
merged 44 commits into from
Sep 19, 2022
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
ff31aa7
add `getmetadata`
bkamins May 8, 2022
96b1e39
Update Project.toml
bkamins May 8, 2022
f7cb305
Apply suggestions from code review
bkamins May 22, 2022
77e3604
Update runtests.jl
bkamins May 22, 2022
7d53c4b
Update src/DataAPI.jl
bkamins May 22, 2022
c28d7c5
Update test/runtests.jl
bkamins May 22, 2022
37ef469
Update test/runtests.jl
bkamins May 22, 2022
4617f60
Update test/runtests.jl
bkamins May 22, 2022
5a493b6
update API
bkamins May 23, 2022
aa15118
improve test coverage
bkamins May 23, 2022
992d1e8
change column to key
bkamins May 23, 2022
bbeda80
Apply suggestions from code review
bkamins May 23, 2022
45b433a
Update src/DataAPI.jl
bkamins May 23, 2022
6897052
Update src/DataAPI.jl
bkamins May 23, 2022
2ac9c88
add colmetadata
bkamins May 30, 2022
43cec64
fix typo
bkamins May 30, 2022
320f9db
fix another typo
bkamins May 30, 2022
3e7ed28
fix tests
bkamins May 30, 2022
f2e4eb1
improve contract description
bkamins May 30, 2022
76bfba5
update error message
bkamins May 31, 2022
9db264a
drop table-level colmetadata
bkamins Jun 1, 2022
b863431
Update test/runtests.jl
bkamins Jun 3, 2022
0df50d7
Apply suggestions from code review
bkamins Jun 23, 2022
0c685ad
add hascolmetadata for whole table
bkamins Jun 27, 2022
0d75fce
new metadata style
bkamins Jul 30, 2022
40edcd9
small fixes
bkamins Jul 30, 2022
c3d7f94
Apply suggestions from code review
bkamins Jul 31, 2022
a75b965
changes after code review
bkamins Jul 31, 2022
47629ed
update specification
bkamins Jul 31, 2022
51add3c
update docstrings
bkamins Aug 1, 2022
f0c9fc0
Apply suggestions from code review
bkamins Aug 2, 2022
be8102f
Apply suggestions from code review
bkamins Aug 2, 2022
435e062
add metadata deletion
bkamins Aug 3, 2022
56f98b7
fix typo
bkamins Aug 3, 2022
b909f01
fix another typo
bkamins Aug 3, 2022
3e32920
fix tests
bkamins Aug 3, 2022
b2d2636
one more fix to tests
bkamins Aug 3, 2022
a589cee
final test fix
bkamins Aug 3, 2022
c612a12
improve test coverage
bkamins Aug 3, 2022
15303a6
add emptymetadata! and emptycolmetadata!
bkamins Aug 4, 2022
3b61e32
Update src/DataAPI.jl
bkamins Aug 6, 2022
edfd350
Update src/DataAPI.jl
bkamins Aug 7, 2022
b33b62e
make :none style more precise
bkamins Aug 30, 2022
c5f699e
change :none to :default
bkamins Sep 17, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "DataAPI"
uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a"
authors = ["quinnj <[email protected]>"]
version = "1.10.0"
version = "1.11.0"

[compat]
julia = "1"
Expand Down
10 changes: 10 additions & 0 deletions src/DataAPI.jl
Original file line number Diff line number Diff line change
Expand Up @@ -287,4 +287,14 @@ using a `sink` function to materialize the table.
"""
function allcombinations end

"""
metadata(x)

Return metadata associated with object `x` as an `AbstractDict{String}` object
(or an object implementing the same interface), or `nothing` if `x` does not support metadata.
bkamins marked this conversation as resolved.
Show resolved Hide resolved

Note that some systems, like Arrow.jl, might assume that metadata values are also `String`.
bkamins marked this conversation as resolved.
Show resolved Hide resolved
"""
metadata(::Any) = nothing

end # module
6 changes: 6 additions & 0 deletions test/runtests.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ end
Base.size(x::TestArray) = size(x.x)
Base.getindex(x::TestArray, i) = x.x[i]
DataAPI.levels(x::TestArray) = reverse(DataAPI.levels(x.x))
DataAPI.metadata(x::TestArray) = Dict("length" => length(x))

@testset "DataAPI" begin

Expand Down Expand Up @@ -173,4 +174,9 @@ end
@test DataAPI.unwrap(missing) === missing
end

@testset "metadata" begin
@test DataAPI.metadata(1) === nothing
@test DataAPI.metadata(TestArray([1, 2])) == Dict("length" => 2)
end

end # @testset "DataAPI"