openff-evaluator icon indicating copy to clipboard operation
openff-evaluator copied to clipboard

Replace the internal AttributeXXX classes with attrs

Open dotsdl opened this issue 6 years ago • 1 comments

From @SimonBoothroyd:

The current AttributeClass and Attribute classes were mainly created to be flexible representations of data classes to be used when speccing out the new class designs as part of the openff-evaluator refactoring.

While these classes are flexible, extensible and allow new classes to be specced out easily, complete with automatic serialization support, automatic docstrings and a degree of automatic validation, they are not particularly performant and could (and should) likely be replace with / built on top of the existing attrs library.

Any replacement solution must provide the same level of flexibility, extensibility and automation, as well as being able to readily support polymorphic class designs.

dotsdl avatar Apr 09 '20 18:04 dotsdl

We have decided to pursue re-implementing these classes using pydantic over attrs.

dotsdl avatar Jul 06 '20 16:07 dotsdl