Repository navigation
Fix Python collection bulk and default helper contracts - #219
Open
leileizhang (lei9444) wants to merge 3 commits into
Open
leileizhang (lei9444) wants to merge 3 commits into
leileizhang (lei9444) wants to merge 3 commits into
Conversation
Reuse checked write-input types for mapping update/setdefault and existing vector bulk helpers across class, interface, Like and inline output surfaces. Return the stored read projection after a missing-key default insertion without consuming the caller's source or changing fallback defaults, raw Object reads, JSON null preflight or ordinary partial-update behavior. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: c1f7c114-f863-4ba4-824e-3a7423613fa2
Mixed-language test coverageWorkflow status: ✅ Passed
|
Preserve existing non-collection snapshots by importing helper protocols and annotations only in modules that emit bulk helpers. Reuse the established source/installed dual-mode typing harness so metadata-only coverage can check generated inline declarations before building a native runtime, while installed-mode checks remain source-mask-free. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: c1f7c114-f863-4ba4-824e-3a7423613fa2
Plan helper refinements in the existing shared Python member namespace. Native instance/static methods, properties and compatibility aliases keep their established names, signatures and dispatch; a native extend also retains inherited += behavior. Reuse the plan across runtime, stub, Like and interface surfaces and cover real WinMD/native callbacks in both output modes and the hosted native Python lane. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: c1f7c114-f863-4ba4-824e-3a7423613fa2
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Valid projected collection inputs were accepted by direct writes but rejected by inherited bulk-helper typing, and a missing-key
setdefault()returned the original input instead of the stored read projection.Use the shared checked write-input types for mapping
update()/setdefault()and the existing vectorextend()/+=helpers across generated classes, interface views, Like protocols and inline annotations. Plan refinements in the existing member namespace so native methods, properties and compatibility aliases keep their names and dispatch. Read back a newly stored default without consuming its source; preserve raw Object outputs, unused defaults,get()/pop()fallbacks, JSON null preflight and ordinary partial updates.Regression coverage exercises real custom WinMD/native member collisions, installed strict consumers, identity and ownership, invalid/released/thread-bound inputs, both generation modes and same-version incremental output. No comparison, boxing-policy, native ABI, collection-base or release changes.