Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Properly fetch PEP 695 type params for functions, do not fetch annotations from signature#11093

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
sydney-runkle merged 1 commit intomainfromvalidate-call-fixes
Dec 13, 2024

Conversation

Viicos
Copy link
Member

Fixes#11076,fixes#11073.

Turns out discussion in#10484 (comment) was relevant, as not usingget_function_type_hints would skip theNone -> NoneType conversion, and other things might happen as well.

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

@github-actionsgithub-actionsbot added the relnotes-fixUsed for bugfixes. labelDec 11, 2024
@@ -123,7 +125,11 @@ def ns_for_function(obj: Callable[..., Any], parent_namespace: MappingNamespace
# passed as a separate argument. However, internally, `_eval_type` calls
# `ForwardRef._evaluate` which will merge type params with the localns,
# essentially mimicking what we do here.
type_params: tuple[TypeVar, ...] = ()
Copy link
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

I somehow forgot to actually fetch the type params here 🤔

Copy link
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

Turns out the test did not use forward annotations, so it was fixed as well.

sydney-runkle reacted with thumbs up emoji
@codspeed-hqCodSpeed HQ
Copy link

codspeed-hqbot commentedDec 11, 2024
edited
Loading

CodSpeed Performance Report

Merging#11093 willnot alter performance

Comparingvalidate-call-fixes (61e935d) withmain (6fa92d1)

Summary

✅ 46 untouched benchmarks

@cloudflare-workers-and-pagesCloudflare Workers and Pages
Copy link

cloudflare-workers-and-pagesbot commentedDec 12, 2024
edited
Loading

Deploying pydantic-docs with  Cloudflare Pages  Cloudflare Pages

Latest commit:61e935d
Status: ✅  Deploy successful!
Preview URL:https://d47ea3e5.pydantic-docs.pages.dev
Branch Preview URL:https://validate-call-fixes.pydantic-docs.pages.dev

View logs

hyperlint-ai[bot]

This comment was marked as resolved.

…tions from signatureWe now unsupport built-in functions.
@ViicosViicos marked this pull request as ready for reviewDecember 12, 2024 10:56
@github-actionsGitHub Actions
Copy link
Contributor

Coverage report

Click to see where and how coverage changed

FileStatementsMissingCoverageCoverage
(new stmts)
Lines missing
  pydantic
  validate_call_decorator.py
  pydantic/_internal
  _generate_schema.py
  _namespace_utils.py
Project Total 

This report was generated bypython-coverage-comment-action

1 similar comment
@github-actionsGitHub Actions
Copy link
Contributor

Coverage report

Click to see where and how coverage changed

FileStatementsMissingCoverageCoverage
(new stmts)
Lines missing
  pydantic
  validate_call_decorator.py
  pydantic/_internal
  _generate_schema.py
  _namespace_utils.py
Project Total 

This report was generated bypython-coverage-comment-action

Copy link
Contributor

@sydney-runklesydney-runkle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

Looking good overall, added a few follow up questions. Thanks!

@@ -1832,13 +1832,7 @@ def _call_schema(self, function: ValidateCallSupportedTypes) -> core_schema.Call
if p.annotation is sig.empty:
annotation = typing.cast(Any, Any)
else:
# Note: This was originally get by `_typing_extra.get_function_type_hints`,
# but we switch to simply `p.annotation` to support bultins (e.g. `sorted`).
# May need to revisit if anything breaks.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

Haha, yikes.

@sydney-runklesydney-runkle merged commitd19368a intomainDec 13, 2024
56 checks passed
@sydney-runklesydney-runkle deleted the validate-call-fixes branchDecember 13, 2024 14:38
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers

@hyperlint-aihyperlint-ai[bot]hyperlint-ai[bot] left review comments

@sydney-runklesydney-runklesydney-runkle approved these changes

Assignees
No one assigned
Labels
relnotes-fixUsed for bugfixes.
Projects
None yet
Milestone
No milestone
2 participants
@Viicos@sydney-runkle

[8]ページ先頭

©2009-2025 Movatter.jp