# -*- mode:conf-toml; -*-
[settings.general]
notify                   = { say-on-exit = false }
loaders                  = { commands="default", task="default", parser="default"}
location_check           = { make_missing = true }
# default_cmd            = ""
empty_cmd                = "list"

[settings.tasks]
# Files or directories where task specs can be loaded from, expanded according to [[locations]] keys
sources   = [".tasks"]
# Directories where task specific code can be imported from, expanded according to [[locations]] keys
code      = []
sleep     = { task=0.2, subtask=1, batch=1 }
max_steps = 100_000
# default_task = ""

[settings.commands]
# Override sub settings of a command
run  = { tracker = "default", runner = "default", reporter= "default", report-line = []}
list = { hide=[] }

[logging]
# Standard loggers. See LoggerSpec. and 'doot stub -p'
stream  = { level="WARNING", filter=["doot"],           target="stdout", format="{levelname:<8} : {message}"  }
file    = { level="DEBUG",   filter=["tomlguard"],      target="rotate", format="{levelname:<8} : {message:<20} :|: ({module}.{lineno}.{funcName})", filename_fmt="doot.log" }
printer = { level="NOTSET", colour=true,                target=["stdout", "rotate"], format="{message}", filename_fmt="doot_printed.log" }


[logging.subprinters]
default       = {level="INFO", disabled=false}
cmd           = {level="INFO"}

[logging.extra]
# See LoggerSpec. can be used to control any logger if you know its name

[plugins]
# Allows for defining shorthands
command        = { other-run = "doot.cmds.run_cmd:RunCmd", tasks = "doot.cmds.list_cmd:ListCmd" }
report-line    = {}
reporter       = {}
action         = {}
task           = {}


[[locations]]
src     = "src"
codegen = {loc="{src}/_codegen", cleanable=true}
temp    = {loc=".temp",          cleanable=true}
logs    = "{temp}/logs"
build   = "{temp}/build"
docs    = "docs"
data    = "data"
