Skip to content

Conversation

@ddneilson
Copy link
Contributor

@ddneilson ddneilson commented Oct 28, 2024

Fixes: #107

What was the problem/requirement? (What/Why)

Pydantic v1 is EOL, but some users of this library still use it. Those users would like to update to pydantic v2, but this library needs to be compatible with it for that to happen.

What was the solution? (How)

Pydantic v2 contains the pydantic v1 in the pydantic.v1 namespace, and pydantic v1.10.17+ also contains this same namespace. So, step one to migrating to Pydantic v2 is to use the pydantic.v1 namespace throughout. Then, in future, the models can be updated to true Pydantic v2 when all consumers are ready for it.

What is the impact of this change?

Consumers of this library can now update to a newer Pydantic without this library blocking them.

How was this change tested?

The unit tests pass. I've run the tests both with pydantic 1.10.18 and pydantic 2.9.2.

Was this change documented?

  • Are relevant docstrings in the code base updated?

Is this a breaking change?

I'm marking this as a breaking change since the pydantic library update is not backwards compatible.

Does this change impact security?

No


By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Pydantic v1 is EOL, but some users of this library still use it. Pydantic v2 contains the pydantic v1
in the pydantic.v1 namespace, and pydantic v1.10.17+ also contains this same namespace. So, step one
to migrating to Pydantic v2 is to use the pydantic.v1 namespace throughout. Then, in future, the models
can be updated to true Pydantic v2 when all consumers are ready for it.

I'm marking this as a breaking change since the pydantic library update is not backwards compatible.

Signed-off-by: Daniel Neilson <53624638+ddneilson@users.noreply.github.com>
@sonarqubecloud
Copy link

@ddneilson ddneilson marked this pull request as ready for review October 28, 2024 18:42
@ddneilson ddneilson requested a review from a team as a code owner October 28, 2024 18:42
@ddneilson ddneilson merged commit c359496 into OpenJobDescription:mainline Oct 28, 2024
18 checks passed
@ddneilson ddneilson deleted the pydantic_v2_compat branch October 28, 2024 19:14
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.

Feature request: Compatibility with pydantic 2.x

4 participants