Flora v1.6.2

Frequently Asked Questions

Short answers to the questions that come up most often.

Does Flora support hot reloading?

Not in the core. Load is a one-shot operation and intentionally has no file watcher. If you need reloads, call Load again on a signal (for example SIGHUP) and swap the result behind a mutex. Keeping reload policy in your hands avoids surprising behavior.

Why no YAML out of the box?

YAML support would pull in a third-party parser, and a hard goal of the project is zero dependencies in the core module. YAML is a one-line custom decoder registration if you want it.

How are durations parsed?

Any field of type time.Duration accepts Go duration strings such as "500ms", "30s", or "2h45m". Bare numbers are rejected so that units are always explicit.

Can I load secrets?

Flora reads whatever a source provides; it does not fetch from secret managers itself. The common pattern is to inject secrets as environment variables and let Env override file values. Flora never logs values, and the dump command honors a --redact flag for keys tagged secret.

What happens with an empty or missing file?

A missing file passed to File is an error by default. Wrap it with Optional() to treat absence as an empty source: flora.File("local.toml", flora.Optional()). An empty but present file is always valid.

Is the API stable?

Yes. Flora follows semantic versioning, and the v1 public API has not had a breaking change since v1.0.0. Deprecations are announced one minor release before removal and listed in the changelog.

How does it compare to larger config frameworks?

Flora deliberately does less. It has no service discovery, no remote backends, and no global singleton. If you want layered files, environment overrides, typed decoding, and validation — and nothing else — it is a good fit. If you need a configuration system, a larger framework will suit you better.

Where do I report a bug?

Open an issue on the project tracker with a minimal reproduction: the source files, the struct definition, and what you expected versus what you got. The flora explain output is especially helpful for precedence questions.