# Documenter warning

**URL:** <https://discourse.julialang.org/t/documenter-warning/106475>\
**Category:** General Usage\
**Tags:** question, package, documenter\
**Created:** [November 20, 2023, 5:08pm UTC](https://discourse.julialang.org/t/documenter-warning/106475 "2023-11-20T17:08:58Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)\
**Post date:** [November 20, 2023, 5:08pm UTC](https://discourse.julialang.org/t/documenter-warning/106475/1 "2023-11-20T17:08:58Z")

</div>

I want to build an html documentation locally, it will never be on any server.  
I execute the command:

```julia
include("docs/make.jl")

```

Content of make.jl:

```julia
using Documenter: makedocs

src="README.md"
dst="docs/src/index.md"
if ! isfile(dst)
    cp(src, dst)
elseif readlines(src) != readlines(dst)
    cp(src, dst; force=true)
end

makedocs(;
    authors="Uwe Fechner <u.fechner-1@tudelft.nl>",
    sitename = "LearningControl", 
    doctest = false,
    remotes = nothing,
    pages=[
        "Readme" => "index.md",
        "Tutorial" => "tutorial.md",
        "Functions" => "functions.md"
    ])

```

This works fine, but I get the following warning:

```julia
[ Info: HTMLWriter: rendering HTML pages.
┌ Warning: Unable to determine the repository root URL for the navbar link.
│ This can happen when a string is passed to the `repo` keyword of `makedocs`.
│ 
│ To remove this warning, either pass a Remotes.Remote object to `repo` to completely
│ specify the remote repository, or explicitly set the remote URL by setting `repolink`
│ via `makedocs(format = HTML(repolink = "..."), ...)`.
└ @ Documenter.HTMLWriter ~/.julia/packages/Documenter/nQAq5/src/html/HTMLWriter.jl:707

```

Any idea how to get rid of this warning? I have no repository root URL.

In the browser I user the URL `http://localhost:8000/`.

---

<div class="post-metadata">

**Author:** ![George9000](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/george9000/32/23619_2.png) [@George9000](https://discourse.julialang.org/u/George9000)\
**Post date:** [November 21, 2023, 3:15am UTC](https://discourse.julialang.org/t/documenter-warning/106475/2 "2023-11-21T03:15:18Z")

</div>

Among the `makedocs` keyword arguments, try the following keyword and value

```julia
format = Documenter.HTML(
        prettyurls = false,
    ),

```

This is based off building a local copy of the DataFrames documentation. There are other keywords in the Documenter.HTML function but the `prettyurls` may be the relevant one.

---

<div class="post-metadata">

**Author:** ![ufechner7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ufechner7/32/51363_2.png) [@ufechner7](https://discourse.julialang.org/u/ufechner7)\
**Post date:** [November 21, 2023, 10:43am UTC](https://discourse.julialang.org/t/documenter-warning/106475/3 "2023-11-21T10:43:51Z")

</div>

Your suggestion was not sufficient, but inspired me to find the following solution:

```julia
makedocs(;
    authors="Uwe Fechner <u.fechner-1@tudelft.nl>",
    sitename = "LearningControl", 
    doctest = false,
    remotes = nothing,
    pages=[
        "Readme" => "index.md",
        "Tutorial" => "tutorial.md",
        "Functions" => "functions.md"
    ],
    format = Documenter.HTML(
        prettyurls = false,
        repolink="http://localhost:8000",
    ))

```

Thank you!

---

<div class="post-metadata">

**Author:** ![kellertuer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kellertuer/32/220707_2.png) [@kellertuer](https://discourse.julialang.org/u/kellertuer)\
**Post date:** [November 21, 2023, 11:17am UTC](https://discourse.julialang.org/t/documenter-warning/106475/4 "2023-11-21T11:17:41Z")

</div>

To answer that, `prettyurls` only determines whether an `page.md` file gets translated to a `page.html` or a `page/index.html` page, where the second it the prettyurls, since you can access that with `page/ ` and do not have to thin about the html ending.

I locally use no-pretty-urls but on CI I do.
