Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Safer configuration #99

Open
Coloquinte opened this issue Dec 11, 2023 · 0 comments
Open

Safer configuration #99

Coloquinte opened this issue Dec 11, 2023 · 0 comments
Labels
enhancement New feature or request pythonisation

Comments

@Coloquinte
Copy link
Collaborator

Coloquinte commented Dec 11, 2023

The configuration process allows to set non-existing values, which is quite error prone IMO.
It's very easy to write etesian.latchupDistance instead of etesian.latchUpDistance.
It would be nice to error out whenever a configuration parameter does not exist.

At the moment, the configuration is set in several steps (from what I understand here):

  • Python caching in CfgCache, crlcore/python/helpers/overlay.py
  • Apply the configuration to the C++ object Cfg, hurricane/src/configuration/hurricane/configuration/Configuration.h
  • Get or create the parameters on a per-tool basis, such as in etesian/src/Configuration.cpp. The paths used here are needed for validation.

To implement some validation, I think we'd need to lose the dynamic nature of the configuration. This way we can know whether the parameters exist somewhere when we apply them.

Is it something other people would like? Is there some value to a purely dynamic configuration that I missed?

@Coloquinte Coloquinte added enhancement New feature or request pythonisation labels Dec 11, 2023
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
enhancement New feature or request pythonisation
Projects
None yet
Development

No branches or pull requests

1 participant