What is worse, if I pass discardDisabled: true instead of discard-disabled: true in the configuration file, the configuration parser does not complain.
We have to streamline configuration parsing and get rid of unnecessary complexity. Currently, it is very hard to understand what parameters have to be passed, even by reading the code.
The current version relies on pureconfig. As a result, when passing parameters from
quint verify
, we have a configuration file like this:On the other hand, the option processing code is processing options like this:
https://github.com/apalache-mc/apalache/blob/9d89eb39ba9fffc29c7119ac548fc995ca82d048/mod-infra/src/main/scala/at/forsyte/apalache/infra/passes/options.scala#L683-L692
What is worse, if I pass
discardDisabled: true
instead ofdiscard-disabled: true
in the configuration file, the configuration parser does not complain.We have to streamline configuration parsing and get rid of unnecessary complexity. Currently, it is very hard to understand what parameters have to be passed, even by reading the code.