diff --git a/Project.toml b/Project.toml index 1525302..5bfc542 100644 --- a/Project.toml +++ b/Project.toml @@ -1,6 +1,6 @@ name = "SparseArraysBase" uuid = "0d5efcca-f356-4864-8770-e1ed8d78f208" -version = "0.9.20" +version = "0.9.21" authors = ["ITensor developers and contributors"] [workspace] diff --git a/docs/Project.toml b/docs/Project.toml index 5c35709..19c9ce6 100644 --- a/docs/Project.toml +++ b/docs/Project.toml @@ -1,6 +1,7 @@ [deps] Dictionaries = "85a47980-9c8c-11e8-2b9f-f7ca1fa99fb4" Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4" +ITensorFormatter = "b6bf39f1-c9d3-4bad-aad8-593d802f65fd" Literate = "98b081ad-f1c9-55d3-8b20-4c87d4299306" SparseArraysBase = "0d5efcca-f356-4864-8770-e1ed8d78f208" @@ -10,5 +11,6 @@ path = ".." [compat] Dictionaries = "0.4.4" Documenter = "1.8.1" +ITensorFormatter = "0.2.27" Literate = "2.20.1" SparseArraysBase = "0.9" diff --git a/docs/make.jl b/docs/make.jl index 8c8c51b..86ca5ac 100644 --- a/docs/make.jl +++ b/docs/make.jl @@ -1,12 +1,12 @@ using Documenter: Documenter, DocMeta, deploydocs, makedocs +using ITensorFormatter: ITensorFormatter using SparseArraysBase: SparseArraysBase DocMeta.setdocmeta!( SparseArraysBase, :DocTestSetup, :(using SparseArraysBase); recursive = true ) -include("make_index.jl") - +ITensorFormatter.make_index!(pkgdir(SparseArraysBase)) makedocs(; modules = [SparseArraysBase], authors = "ITensor developers and contributors", diff --git a/docs/make_index.jl b/docs/make_index.jl deleted file mode 100644 index 37e8b7e..0000000 --- a/docs/make_index.jl +++ /dev/null @@ -1,21 +0,0 @@ -using Literate: Literate -using SparseArraysBase: SparseArraysBase - -function ccq_logo(content) - include_ccq_logo = """ - ```@raw html - Flatiron Center for Computational Quantum Physics logo. - Flatiron Center for Computational Quantum Physics logo. - ``` - """ - content = replace(content, "{CCQ_LOGO}" => include_ccq_logo) - return content -end - -Literate.markdown( - joinpath(pkgdir(SparseArraysBase), "examples", "README.jl"), - joinpath(pkgdir(SparseArraysBase), "docs", "src"); - flavor = Literate.DocumenterFlavor(), - name = "index", - postprocess = ccq_logo -) diff --git a/docs/make_readme.jl b/docs/make_readme.jl deleted file mode 100644 index 02eed8b..0000000 --- a/docs/make_readme.jl +++ /dev/null @@ -1,17 +0,0 @@ -using Literate: Literate - -let inputfile = joinpath(@__DIR__, "..", "examples", "README.jl"), - outputdir = joinpath(@__DIR__, ".."), flavor = Literate.CommonMarkFlavor(), - name = "README" - - function postprocess(content) - include_ccq_logo = """ - - - Flatiron Center for Computational Quantum Physics logo. - - """ - return replace(content, "{CCQ_LOGO}" => include_ccq_logo) - end - Literate.markdown(inputfile, outputdir; flavor, name, postprocess) -end diff --git a/test/Project.toml b/test/Project.toml index f7eb803..43ec6c8 100644 --- a/test/Project.toml +++ b/test/Project.toml @@ -5,6 +5,7 @@ ArrayLayouts = "4c555306-a7a7-4459-81d9-ec55ddd5c99a" Dictionaries = "85a47980-9c8c-11e8-2b9f-f7ca1fa99fb4" FillArrays = "1a297f60-69ca-5386-bcde-b61e274b549b" FunctionImplementations = "7c7cc465-9c6a-495f-bdd1-f42428e86d0c" +ITensorPkgSkeleton = "3d388ab1-018a-49f4-ae50-18094d5f71ea" JLArrays = "27aeb0d3-9eb9-45fb-866b-73c2ecf80fcb" LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" NamedDimsArrays = "60cbd0c0-df58-4cb7-918c-6f5607b73fde" @@ -27,6 +28,7 @@ ArrayLayouts = "1.11.1" Dictionaries = "0.4.4" FillArrays = "1.13" FunctionImplementations = "0.4" +ITensorPkgSkeleton = "0.3.40" JLArrays = "0.2, 0.3" LinearAlgebra = "<0.0.1, 1" NamedDimsArrays = "0.13, 0.14" diff --git a/test/runtests.jl b/test/runtests.jl index e5afded..05baac8 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -1,75 +1,3 @@ -using SafeTestsets: @safetestset -using Suppressor: Suppressor +using ITensorPkgSkeleton: ITensorPkgSkeleton -# check for filtered groups -# either via `--group=ALL` or through ENV["GROUP"] -const pat = r"(?:--group=)(\w+)" -arg_id = findfirst(contains(pat), ARGS) -const GROUP = uppercase( - if isnothing(arg_id) - arg = get(ENV, "GROUP", "ALL") - # For some reason `ENV["GROUP"]` is set to `""` - # when running via GitHub Actions, so handle that case: - arg == "" ? "ALL" : arg - else - only(match(pat, ARGS[arg_id]).captures) - end -) - -""" -match files of the form `test_*.jl`, but exclude `*setup*.jl` -""" -function istestfile(path) - fn = basename(path) - return endswith(fn, ".jl") && startswith(basename(fn), "test_") && - !contains(fn, "setup") -end -""" -match files of the form `*.jl`, but exclude `*_notest.jl` and `*setup*.jl` -""" -function isexamplefile(path) - fn = basename(path) - return endswith(fn, ".jl") && !endswith(fn, "_notest.jl") && !contains(fn, "setup") -end - -@time begin - # tests in groups based on folder structure - for testgroup in filter(isdir, readdir(@__DIR__; join = true)) - if GROUP == "ALL" || GROUP == uppercase(basename(testgroup)) - for filename in filter(istestfile, readdir(testgroup; join = true)) - @eval @safetestset $(basename(filename)) begin - include($filename) - end - end - end - end - - # single files in top folder - for file in filter(istestfile, readdir(@__DIR__; join = true)) - (basename(file) == basename(@__FILE__)) && continue # exclude this file to avoid infinite recursion - @eval @safetestset $(basename(file)) begin - include($file) - end - end - - # test examples - examplepath = joinpath(@__DIR__, "..", "examples") - for (root, _, files) in walkdir(examplepath) - contains(chopprefix(root, @__DIR__), "setup") && continue - for file in filter(isexamplefile, files) - filename = joinpath(root, file) - @eval begin - @safetestset $file begin - $( - Expr( - :macrocall, - GlobalRef(Suppressor, Symbol("@suppress")), - LineNumberNode(@__LINE__, @__FILE__), - :(include($filename)) - ) - ) - end - end - end - end -end +ITensorPkgSkeleton.runtests(; testdir = @__DIR__)