Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Rewrite Data Classes Using Pydantic #71

Open
SimonBoothroyd opened this issue Apr 28, 2020 · 5 comments
Open

Rewrite Data Classes Using Pydantic #71

SimonBoothroyd opened this issue Apr 28, 2020 · 5 comments

Comments

@SimonBoothroyd
Copy link
Member

Description

We may consider re-writing the different data classes (such as SimulationData and SystemData) using pydantic to cut down on the amount of 'boiler-plate' code, make everything more readily (de)serialisable and to make everything a bit more standardised.

@mattwthompson
Copy link
Contributor

Interested in this as it overlaps with OpenFF work but happy to defer to an interested grad student

@SimonBoothroyd
Copy link
Member Author

Possibly of use: pydantic/pydantic#380 (see the last comment in particular).

@ptmerz
Copy link
Member

ptmerz commented Apr 30, 2020

This is a great suggestion, I wish this had been available when I started to work on this! Definitely in favor! I would argue, however, that we should work on having at least a minimal set of tests before doing large infrastructural changes like this one - just to have some confidence in approving PRs.

@mattwthompson
Copy link
Contributor

Agreed; in my opinion, tests are quite literally the most important thing to do right now. This is an idea for little farther down the road

@SimonBoothroyd
Copy link
Member Author

I would argue, however, that we should work on having at least a minimal set of tests before doing large infrastructural changes like this one

I definitely agree!

@ptmerz ptmerz added this to the Future milestone Apr 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants