Skip to content

Convert error_handling.f90 to Python #3394

@timothy-nunn

Description

@timothy-nunn

Convert the error handling system to Python. Separate the system in two:

  1. Exception handling: a hierarchy of PROCESS errors that replace level 3 errors
  2. Warning handling: a system to record warnings and diagnostics to be displayed at the end of a PROCESS run

Exception handling

Provide a parent ProcessException object

  • This will allow PROCESS-thrown errors to be easily caught by internal and external code
  • Diagnostics can be attached directly to the error

Additional, more specific, exceptions? (e.g. ProcessValueError).

Warning handling

Handled by a central object attached directly to the models?
No more warning IDs. Duplicate warnings are identified by comparing the message directly.
Diagnostics are attached directly to the warning (as a dictionary?)
Report at the end as currently.

Blocked by constraint_equations.f90, evaluators.f90, init_module.f90, initial.f90, iteration_variables.f90, main_module.f90, scan.f90

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions