Skip to content

Refactor Configuration API

Frederik Hennig requested to merge fhennig/configuration into v2.0-dev

This MR refactors and stabilizes the configuration system of the codegen module. It adopts much code from pystencils-sfg!2 (merged), and once it is through, pystencils-sfg can be updated to inherit its config system from pystencils.

Closes #116 (closed)

codegen.config

  • Introduce Option descriptor for config options with default values, validation, and explicit unsetting
  • Introduce ConfigBase class and Category descriptor for safely modelling config objects and correct implementation of their deep-copying
  • Clean up the option categories and option validation

backend

  • Remove all mention of codegen.config from the backend module, making it exclusive to configuring the codegen driver

Documentation

  • Cleanly separate API reference from user manual pages (finally!)
  • Add docs for updated config system
Edited by Frederik Hennig

Merge request reports