-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Open
Labels
metahigh level, conceptualhigh level, conceptualv3Under consideration for V3Under consideration for V3
Description
A few people have asked me about Pydantic V3, mostly from the perspective of "what if Pydantic V3 breaks my stuff like V2 did?".
I therefore want o describe what we think Pydantic V3 might look like.
TL;DR: V3 will not involve any large changes to the API as V2 did!
Instead V3 will:
- remove the V1 migration helpers including deprecated methods, migrations/redirect logic, and the
pydantic.v1
shim - Fix some edge cases which we consider broken in V2 but don't want to change/fix for fear of breaking existing code, @sydney-runkle has done a great job of collecting these under the
v3
label - for example model config in inheritance doesn't respect MROΒ #9992 this is obviously incorrect, but doesn't affect many people (or it would have been reported earlier); still we don't want to change in a minor release - Potentially adopt some new logic which we have already experimented with in minor releases of V2, and are now confident won't change behavior for the vast vast majority of users, see
RustModel
experimentΒ #10032 for an example of this
I would expect V3 will be released some time next year.
The main point is we're endeavouring to move to a system where significant new functionality or performance improvements are introduced in an opt-in way in minor releases, then major releases are used to cleanup edge cases and adopt proven approaches.
I thought this would be a longer issue, but actually I think that's all there is! Have a nice day.
fnep, TomerBin, menzenski, samsja, sydney-runkle and 82 moreCosmicJesterXm9810223, ceb10n, KotlinIsland, jamesbraza, BrownsugarZeer and 20 moregiancarloromeo, eaoiuy33, tgt843, dikesh, binbjz and 9 more
Metadata
Metadata
Assignees
Labels
metahigh level, conceptualhigh level, conceptualv3Under consideration for V3Under consideration for V3