omry / omegaconf

Flexible Python configuration system. The last one you will ever need.
BSD 3-Clause "New" or "Revised" License
1.88k stars 98 forks source link

Question : why we need "???" and what's for ? #1128

Closed HuangChiEn closed 9 months ago

HuangChiEn commented 9 months ago

As the title, it's hard to think the reason that we need "???" placeholder. When you define a config to control the behavior of program, the argument should have the determined value ( that's the meaning of configuration ). If we can set an argument with "???" placeholder and the value still cannot be determined finally. The argument itself may be not necessary to define in the config, isn't it? ( As we can expect, if we try to access "???", it will raise MissConfig error, this behavior potentially not permit the argument to be non-determined.

Jasha10 commented 9 months ago

The ??? placeholder represents a "Missing" value. It's usually used when you know that some data is needed, but you don't yet know what the correct value should be. The idea is that you can later fill in the missing value with real data.

HuangChiEn commented 9 months ago

The ??? placeholder represents a "Missing" value. It's usually used when you know that some data is needed, but you don't yet know what the correct value should be. The idea is that you can later fill in the missing value with real data.

Ok, sounds rational, TKS for your explanation ~