Skip to content

Commit defbbab

Browse files
mtfishmanclaude
andcommitted
Add DataGraphsITensorVisualizationBaseExt
Move the `visualize(::AbstractDataGraph, ...)` overload that previously lived in ITensorNetworks.jl (where it was type piracy on a DataGraphs type) into DataGraphs as a package extension keyed on ITensorVisualizationBase. The method delegates to `visualize(underlying_graph(graph), ...)`. Bumps version to 0.4.1. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 559b0cb commit defbbab

4 files changed

Lines changed: 29 additions & 1 deletion

File tree

Project.toml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name = "DataGraphs"
22
uuid = "b5a273c3-7e6c-41f6-98bd-8d7f1525a36a"
3-
version = "0.4.0"
3+
version = "0.4.1"
44
authors = ["Matthew Fishman <mfishman@flatironinstitute.org> and contributors"]
55

66
[workspace]
@@ -14,14 +14,17 @@ SimpleTraits = "699a6c99-e7fa-54fc-8d76-47d257e15c1d"
1414

1515
[weakdeps]
1616
GraphsFlows = "06909019-6f44-4949-96fc-b9d9aaa02889"
17+
ITensorVisualizationBase = "cd2553d2-8bef-4d93-8a38-c62f17d5ad23"
1718

1819
[extensions]
1920
DataGraphsGraphsFlowsExt = "GraphsFlows"
21+
DataGraphsITensorVisualizationBaseExt = "ITensorVisualizationBase"
2022

2123
[compat]
2224
Dictionaries = "0.4"
2325
Graphs = "1"
2426
GraphsFlows = "0.1.1"
27+
ITensorVisualizationBase = "0.1"
2528
NamedGraphs = "0.11"
2629
SimpleTraits = "0.9"
2730
julia = "1.7"
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
module DataGraphsITensorVisualizationBaseExt
2+
3+
using DataGraphs: AbstractDataGraph, underlying_graph
4+
using ITensorVisualizationBase: ITensorVisualizationBase
5+
6+
function ITensorVisualizationBase.visualize(graph::AbstractDataGraph, args...; kwargs...)
7+
return ITensorVisualizationBase.visualize(
8+
underlying_graph(graph), args...; kwargs...
9+
)
10+
end
11+
12+
end

test/Project.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Dictionaries = "85a47980-9c8c-11e8-2b9f-f7ca1fa99fb4"
55
Graphs = "86223c79-3864-5bf0-83f7-82e725a168b6"
66
GraphsFlows = "06909019-6f44-4949-96fc-b9d9aaa02889"
77
ITensorPkgSkeleton = "3d388ab1-018a-49f4-ae50-18094d5f71ea"
8+
ITensorVisualizationBase = "cd2553d2-8bef-4d93-8a38-c62f17d5ad23"
89
NamedGraphs = "678767b0-92e7-4007-89e4-4527a8725b19"
910
SafeTestsets = "1bc83da4-3b8d-516f-aca4-4fe02f6d838f"
1011
Suppressor = "fd094767-a336-5f1f-9728-57cf17d0bbfb"
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
@eval module $(gensym())
2+
using DataGraphs: AbstractDataGraph, DataGraph
3+
using ITensorVisualizationBase: ITensorVisualizationBase
4+
using NamedGraphs.NamedGraphGenerators: named_grid
5+
using Test: @test, @testset
6+
7+
@testset "DataGraphsITensorVisualizationBaseExt" begin
8+
g = DataGraph(named_grid((2, 2)))
9+
@test hasmethod(ITensorVisualizationBase.visualize, Tuple{AbstractDataGraph})
10+
@test isnothing(ITensorVisualizationBase.visualize(g))
11+
end
12+
end

0 commit comments

Comments
 (0)