Skip to content

Conversation

@bennybp
Copy link
Contributor

@bennybp bennybp commented Oct 24, 2025

Description

This is part of a migration to pydantic v2.

Because of the long-lived nature of the QCFractal database, we can be a bit sensitive to input parameters which are used in de-duplication. So given the changes coming towards QCElemental/schema (version 2, required for pydantic v2), we should copy some of the models we directly import from QCElemental.

These are small models - mostly protocols and provenance. This allows us to be a little more flexible with legacy data while QCElemental goes through the changes.

I have no plans for vendoring the big models, though (Molecule and WavefunctionProperties). Most other imports are for validating/creating those models directly (ie, creating AtomicResult from our SinglepointRecord) so should stay.

Status

  • Code base linted
  • Ready to go

@bennybp bennybp merged commit 41b2e99 into main Nov 3, 2025
19 checks passed
@bennybp bennybp deleted the vendor_qcel branch January 30, 2026 19:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant