PlotInfo should use a different way to check validity
Created by: Zaharid
The fact that plotoptions.PlotInfo uses the crazy reportengine config object is a relic from simpler times when config was not supposed to do much beyond checking types and was adequate enough for both cases. Since then, it is clear that it is not particularly suited for plotinfo (e.g. because of the long list of arguments that has to be copied multiple times). At the same time improvements I have considered to Config
for its use in reportengine are made more complicated by its use here.
A better alternative would be
https://github.com/Zaharid/validobj/
which is simpler and more geared towards this precise use. There are a few good alternatives, most notably
https://pydantic-docs.helpmanual.io/
but AFAICT it is not so easy to get nice detailed error messages
https://validobj.readthedocs.io/en/latest/examples.html#yaml-line-numbers