Migrate value constants to configuration
Bathtor opened this issue · 0 comments
We currently have a lot of internal constants or default parameters that are deep within components and modules and are difficult or impossible to change, certainly after compilation.
We should migrate as many as possible of these to use our HOCON configuration, so that users can actually customise their instances without having to recompile.
In order to do so, I think we should have a mechanism to produce hierarchical keys internally that is compile time evaluated. I'm imagining something like pub const MY_KEY: &str = config_key!(PARENT_KEY, "my-key")
, which we then expose in the docs (gotta make sure these modules are always public) with explanations of what the key does. Perhaps we could even let the macro generate the rust-doc as well.
I tried something like this with just simple concat!()
, but that doesn't let me use constants. So maybe we need to use something like the const_format crate.
Status
Must Convert
-
dispatch::lookup::gc::defaults
- buffer config (at least top level and network level, individual components might be trickier)
- blocklist/allowlist
This list is woefully incomplete. Please edit whenever you find something that should be here.