Skip to content

Provide the available definitions when applying discriminated unions #11670

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

Merged
merged 1 commit into from
Apr 2, 2025

Conversation

Viicos
Copy link
Member

@Viicos Viicos commented Apr 1, 2025

It seems that we forgot to do so, and as almost all discriminated unions involves referenceable schemas (such as models, typed dicts, etc), the deferred metadata key was almost always set.

This fixes some issues in the schema cleaning process, although it is still theoretically unsound (see the added tests).

Fixes #11661.

Change Summary

Related issue number

Checklist

  • The pull request title is a good summary of the changes - it will be used in the changelog
  • Unit tests for the changes exist
  • Tests pass on CI
  • Documentation reflects the changes where applicable
  • My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

It seems that we forgot to do so, and as almost all discriminated unions
involves referenceable schemas (such as models, typed dicts, etc), the
deferred metadata key was almost always set.

This fixes some issues in the schema cleaning process, although it is
still theoretically unsound (see the added tests).
@Viicos Viicos added relnotes-fix Used for bugfixes. third-party-tests Add this label on a PR to trigger 3rd party tests backport-2.11 Needs backport to 2.11 labels Apr 1, 2025
@Viicos Viicos marked this pull request as ready for review April 1, 2025 17:22
Copy link

Deploying pydantic-docs with  Cloudflare Pages  Cloudflare Pages

Latest commit: 3fe195a
Status: ✅  Deploy successful!
Preview URL: https://eaedca80.pydantic-docs.pages.dev
Branch Preview URL: https://discriminator-defs.pydantic-docs.pages.dev

View logs

Copy link

codspeed-hq bot commented Apr 1, 2025

CodSpeed Performance Report

Merging #11670 will not alter performance

Comparing discriminator-defs (3fe195a) with main (6c38dc9)

Summary

✅ 46 untouched benchmarks

Copy link
Contributor

github-actions bot commented Apr 1, 2025

Coverage report

This PR does not seem to contain any modification to coverable code.

@Viicos Viicos merged commit 8b0825a into main Apr 2, 2025
88 checks passed
@Viicos Viicos deleted the discriminator-defs branch April 2, 2025 14:55
Viicos added a commit that referenced this pull request Apr 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-2.11 Needs backport to 2.11 relnotes-fix Used for bugfixes. third-party-tests Add this label on a PR to trigger 3rd party tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Model construction fails on non-union types annotated with discriminator.
2 participants