GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||||||||||||||||||||||||||||
GeezerVison is showing github.com — Share code construction and comparison controls by youknowdot · Pull Request #9713 · RustPython/RustPython Conversation
|
|
Caution Review failedThe pull request is closed.
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| _owners: FuncArgs, | ||
| } | ||
|
|
||
| impl<T: CodeArgumentSpec> FromArgs for CodeArgs<T> { |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
check if we still need this after #9563
Sorry, something went wrong.
There was an error while loading. Please reload this page.
4e49d67 to
4c33098
Compare
Assisted-by: OpenAI Codex:model version not exposed
Preserve argument owners, signed validation, audit and name-conversion order through shared construction. Match optional closure tuples and replacement controls without invoking tuple subclass iteration. Assisted-by: OpenAI Codex:model version not exposed
Remove redundant pyarg name overrides by naming the FromArgs fields codestring and constants. Preserve constructor storage mapping and Python signatures. Assisted-by: OpenAI: undisclosed
Preserve callback ownership, release ordering, and retained argument owners. Assisted-by: Codex:model-version-unavailable
Forward the derived binding metadata and let bind_for validate once before converting. Preserve original argument owners through conversion and audit callbacks. Assisted-by: OpenAI Codex:GPT-6
4c33098 to
886c794
Compare
There was an error while loading. Please reload this page.
Codex Review Summary: ✅ CompletedThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Here are some automated review suggestions for this pull request.
Reviewed commit: 886c794856
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| // replace inputs reach this check only after structural validation. | ||
| let names = intern_name_tuple(&self.names, vm)?; | ||
| let varnames = intern_name_tuple(&self.varnames, vm)?; | ||
| let cellvars = intern_name_tuple(&self.cellvars, vm)?; |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Validate cell names after merging them with locals
When replacing an existing cell variable with a str subclass of the same name—for example, co_cellvars=(S('x'),) where class S(str): pass and x is also a local—this now raises SystemError because intern_name_tuple requires exact strings before the cell can be merged with its local. The previous implementation accepted this replacement, and a reference probe on CPython 3.14.4 also accepts it: the merged cell entry is discarded before exact-string interning of the combined locals-plus names. Perform the cell/local merge before enforcing exactness on the retained names, so this otherwise unchanged, valid closure remains replaceable.
Useful? React with 👍 / 👎.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.