From c3ecaef779a7257e804c6a45b46f6b3f32fd8e63 Mon Sep 17 00:00:00 2001 From: Takafumi Arakaki Date: Sun, 20 Mar 2022 05:04:42 -0400 Subject: [PATCH 1/2] Use ExternalDocstrings --- Project.toml | 1 + docs/Manifest.toml | 11 +++++++++-- src/ThreadsX.jl | 3 ++- src/utils.jl | 19 ------------------- test/environments/main/Manifest.toml | 11 +++++++++-- 5 files changed, 21 insertions(+), 24 deletions(-) diff --git a/Project.toml b/Project.toml index cdc9d76f..5d57af09 100644 --- a/Project.toml +++ b/Project.toml @@ -7,6 +7,7 @@ version = "0.1.10-DEV" ArgCheck = "dce04be8-c92d-5529-be00-80e4d2c0e197" BangBang = "198e06fe-97b7-11e9-32a5-e1d131e6ad66" ConstructionBase = "187b0558-2788-49d3-abe0-74a17ed4e7c9" +ExternalDocstrings = "e189563c-0753-4f5e-ad5c-be4293c83fb4" InitialValues = "22cec73e-a1b8-11e9-2c92-598750a2cf9c" MicroCollections = "128add7d-3638-4c79-886c-908ea0c25c34" Referenceables = "42d2dcc6-99eb-4e98-b66c-637b7d73030e" diff --git a/docs/Manifest.toml b/docs/Manifest.toml index 32ab9611..7ba9cf01 100644 --- a/docs/Manifest.toml +++ b/docs/Manifest.toml @@ -89,6 +89,13 @@ git-tree-sha1 = "395fa1554c69735802bba37d9e7d9586fd44326c" uuid = "e30172f5-a6a5-5a46-863b-614d45cd2de4" version = "0.24.11" +[[ExternalDocstrings]] +git-tree-sha1 = "0c7f9dfc999acb13e54ed85e8bdb90bd285ff5a9" +repo-rev = "main" +repo-url = "https://github.com/tkf/ExternalDocstrings.jl.git" +uuid = "e189563c-0753-4f5e-ad5c-be4293c83fb4" +version = "0.1.0-DEV" + [[Future]] deps = ["Random"] uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820" @@ -281,10 +288,10 @@ deps = ["Distributed", "InteractiveUtils", "Logging", "Random"] uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [[ThreadsX]] -deps = ["ArgCheck", "BangBang", "ConstructionBase", "InitialValues", "MicroCollections", "Referenceables", "Setfield", "SplittablesBase", "Transducers"] +deps = ["ArgCheck", "BangBang", "ConstructionBase", "ExternalDocstrings", "InitialValues", "MicroCollections", "Referenceables", "Setfield", "SplittablesBase", "Transducers"] path = ".." uuid = "ac1d9e8a-700a-412c-b207-f0111f4b6c0d" -version = "0.1.3-DEV" +version = "0.1.10-DEV" [[Transducers]] deps = ["ArgCheck", "BangBang", "CompositionsBase", "DefineSingletons", "Distributed", "InitialValues", "Logging", "Markdown", "MicroCollections", "Requires", "Setfield", "SplittablesBase", "Tables"] diff --git a/src/ThreadsX.jl b/src/ThreadsX.jl index 9a1c5c58..daf3ad0c 100644 --- a/src/ThreadsX.jl +++ b/src/ThreadsX.jl @@ -44,6 +44,7 @@ using BangBang: SingletonVector, append!!, push!!, union!! using Base: HasShape, IteratorSize, Ordering, add_sum, mapreduce_empty, mul_prod, reduce_empty using ConstructionBase: setproperties +using ExternalDocstrings: @define_docstrings using InitialValues: asmonoid using MicroCollections: EmptyVector using Referenceables: referenceable @@ -99,6 +100,6 @@ const QuickSort = Implementations.ParallelQuickSortAlg() const StableQuickSort = Implementations.ParallelQuickSortAlg(smallsort = MergeSort.smallsort) -Implementations.define_docstrings() +Implementations.@define_docstrings end # baremodule ThreadX diff --git a/src/utils.jl b/src/utils.jl index a3ff7412..86f8e3db 100644 --- a/src/utils.jl +++ b/src/utils.jl @@ -92,22 +92,3 @@ Unroll{N}(xs::A) where {N,A} = Unroll{N,A}(xs) end return acc end - -function define_docstrings() - docstrings = [:ThreadsX => joinpath(dirname(@__DIR__), "README.md")] - docsdir = joinpath(@__DIR__, "docs") - for filename in readdir(docsdir) - stem, ext = splitext(filename) - ext == ".md" || continue - name = Symbol(stem) - name in names(ThreadsX, all=true) || continue - push!(docstrings, name => joinpath(docsdir, filename)) - end - for (name, path) in docstrings - include_dependency(path) - doc = read(path, String) - doc = replace(doc, r"^```julia"m => "```jldoctest $name") - doc = replace(doc, "TAB" => "_TAB_") - @eval ThreadsX $Base.@doc $doc $name - end -end diff --git a/test/environments/main/Manifest.toml b/test/environments/main/Manifest.toml index c27c38d6..8d789a58 100644 --- a/test/environments/main/Manifest.toml +++ b/test/environments/main/Manifest.toml @@ -98,6 +98,13 @@ git-tree-sha1 = "395fa1554c69735802bba37d9e7d9586fd44326c" uuid = "e30172f5-a6a5-5a46-863b-614d45cd2de4" version = "0.24.11" +[[ExternalDocstrings]] +git-tree-sha1 = "0c7f9dfc999acb13e54ed85e8bdb90bd285ff5a9" +repo-rev = "main" +repo-url = "https://github.com/tkf/ExternalDocstrings.jl.git" +uuid = "e189563c-0753-4f5e-ad5c-be4293c83fb4" +version = "0.1.0-DEV" + [[Future]] deps = ["Random"] uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820" @@ -289,10 +296,10 @@ deps = ["Distributed", "InteractiveUtils", "Logging", "Random"] uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [[ThreadsX]] -deps = ["ArgCheck", "BangBang", "ConstructionBase", "InitialValues", "MicroCollections", "Referenceables", "Setfield", "SplittablesBase", "Transducers"] +deps = ["ArgCheck", "BangBang", "ConstructionBase", "ExternalDocstrings", "InitialValues", "MicroCollections", "Referenceables", "Setfield", "SplittablesBase", "Transducers"] path = "../../.." uuid = "ac1d9e8a-700a-412c-b207-f0111f4b6c0d" -version = "0.1.9-DEV" +version = "0.1.10-DEV" [[Transducers]] deps = ["Adapt", "ArgCheck", "BangBang", "Baselet", "CompositionsBase", "DefineSingletons", "Distributed", "InitialValues", "Logging", "Markdown", "MicroCollections", "Requires", "Setfield", "SplittablesBase", "Tables"] From 715baa62f4e82ac6eb381d4ba08ac7dbc4eadc4d Mon Sep 17 00:00:00 2001 From: Takafumi Arakaki Date: Sun, 20 Mar 2022 05:19:20 -0400 Subject: [PATCH 2/2] Set compat for ExternalDocstrings --- Project.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/Project.toml b/Project.toml index 5d57af09..dbee846e 100644 --- a/Project.toml +++ b/Project.toml @@ -19,6 +19,7 @@ Transducers = "28d57a85-8fef-5791-bfe6-a80928e7c999" ArgCheck = "1.0, 2.0" BangBang = "0.3.17" ConstructionBase = "0.1.0, 1.0" +ExternalDocstrings = "0.1" InitialValues = "0.2, 0.3" MicroCollections = "0.1" Referenceables = "0.1"