I’m trying to use Documenter.jl to generate documentation for an unregistered package.
What is the best practice for setting up the docs directory environment for this?
The AnotherParser project (GitHub - MarkNahabedian/AnotherParser.jl) I’m working on is not yet registered.
That project builds fine, but its documentation doesn’t.
The documentation for AnotherParser only uses two packages:
$ find . -name *.jl -exec grep using '{}' ';' -print
using Documenter
using AnotherParser
./make.jl
Since it’s meant to document the “immediate” version of AnotherParser, rather than the tip of the main branch, the docs/Manifest.toml file refers to AnotherParser using a relative path:
[[AnotherParser]]
deps = ["DataStructures", "Logging", "MacroTools", "NahaJuliaLib", "VectorLogging"]
git-tree-sha1 = "06c1877e1b8fd2cf35a3878cb76a6ef9c01fde29"
repo-rev = "master"
repo-url = ".."
uuid = "2ebba909-c633-4b8c-b8fe-948aaf993ef9"
version = "0.1.0-dev"
Trying to build the documentation, or trying to use AnotherParser with the AnotherParser/docs environment activated gets the error
ERROR: LoadError: UndefVarError: @trace not defined
Stacktrace:
[1] top-level scope
@ :0
[2] #macroexpand#51
@ .\expr.jl:115 [inlined]
[3] macroexpand
@ .\expr.jl:114 [inlined]
[4] docm(source::LineNumberNode, mod::Module, meta::Any, ex::Any, define::Bool) (repeats 2 times)
@ Base.Docs .\docs\Docs.jl:537
[5] var"@doc"(::LineNumberNode, ::Module, ::String, ::Vararg{Any})
@ Core .\boot.jl:517
[6] include(mod::Module, _path::String)
@ Base .\Base.jl:418
[7] include(x::String)
@ AnotherParser C:\Users\Mark Nahabedian\.julia\packages\AnotherParser\TAM93\src\AnotherParser.jl:1
The @trace
macro is defined in the unregistered package NahaJuliaLib, which is used by AnotherParser and is is identified in AnotherParser/Manifest.toml.
Thanks.