GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — bpo-29684: Fix regression of PyEval_CallObjectWithKeywords by methane · Pull Request #87 · python/cpython

Conversation

@methane

@methane methane commented Feb 14, 2017

Copy link
Copy Markdown
Member

It should raise TypeError when kwargs is not a dict.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@the-knights-who-say-ni the-knights-who-say-ni added the CLA signed label Feb 14, 2017
@methane
methane requested a review from vstinner February 14, 2017 04:29
@methane
methane force-pushed the fix-evalcall branch from 195f638 to e0e56a2 Compare March 1, 2017 09:23
@methane
methane changed the base branch from 3.6 to master March 1, 2017 09:23
@methane methane added the needs backport to 3.6 label Mar 1, 2017
@methane methane changed the title bpo-29548: Fix regression of PyEval_CallObjectWithKeywords bpo-29684: Fix regression of PyEval_CallObjectWithKeywords Mar 1, 2017
@methane methane mentioned this pull request Mar 1, 2017
bpo-29548: Recommend PyObject_Call APIs over PyEval_Call APIs. #75
Merged
@methane
methane force-pushed the fix-evalcall branch from e0e56a2 to 9808041 Compare March 1, 2017 09:37
vstinner
vstinner approved these changes Mar 1, 2017
View reviewed changes
@methane
bpo-29684: Fix minor regression of PyEval_CallObjectWithKeywords
33a56b7
It should raise TypeError when kwargs is not a dict.
@methane
methane force-pushed the fix-evalcall branch from 9808041 to 33a56b7 Compare March 1, 2017 10:11
@methane
add NEWS entry
c588f9a
@methane
methane merged commit 3824cd8 into python:master Mar 1, 2017
@methane
methane deleted the fix-evalcall branch March 1, 2017 11:41
@methane methane mentioned this pull request Mar 1, 2017
[3.6] bpo-29684: Fix minor regression of PyEval_CallObjectWithKeywords. #378
Merged
@methane methane removed the needs backport to 3.6 label Mar 1, 2017
akruis pushed a commit to akruis/cpython that referenced this pull request Sep 9, 2017
Anselm Kruis
Stackless issue python#87: assertion failures during shutdown
5a06d86
Never call inter-thread scheduler for a tasklet switch with prev==next.
This fixes the first part of issue python#87.
Fix an assert, that is no longer valid. Fixes part 2 of issue python#87.
Add a test case for two assertion failures during interpreter shutdown.

https://bitbucket.org/stackless-dev/stackless/issues/87
(grafted from a6e5950cb45fc1d2d101866c20aea7eb5f005db0, 73f4ac31aa6a and
9f4606055d9c)
colesbury referenced this pull request in colesbury/nogil Oct 6, 2021
@colesbury
pystate: abandon heaps before detaching PyThreadState
6da9ab0
There was a period between detaching the PyThreadState on
thread exit and abandoning the heap where a GC thread might
see an inconsistent state of the heap.

See #87
@methane methane mentioned this pull request Aug 30, 2022
Recommend PyObject_Call* APIs over PyEval_Call*() APIs #73734
Closed
jaraco pushed a commit that referenced this pull request Dec 2, 2022
@pyup-bot @Mariatta
Update cachetools from 2.0.1 to 2.1.0 (GH-87)
1c146d6
jaraco added a commit to jaraco/cpython that referenced this pull request Feb 17, 2023
@jaraco
Move Traversable to abc module. Closes python#87.
bd53527
@gvanrossum gvanrossum mentioned this pull request Aug 22, 2023
heap-use-after-free in _PyFunction_LookupByVersion #108253
Closed
@ngoldbaum ngoldbaum mentioned this pull request Sep 23, 2024
Crash running PyO3 tests with --test-threads=1000 #124375
Closed
This was referenced Feb 11, 2025
segmentfault when pip installing setuptools #129992
Closed
segmentfault when pip installing setuptools #129993
Closed
@sergey-miryanov sergey-miryanov mentioned this pull request Dec 18, 2025
Observed memory leak in ssl library: Python 3.14 GC issue #142516
Closed
SonicField added a commit to SonicField/cpython that referenced this pull request Apr 23, 2026
@SonicField
docs: W26 spec §4 amendment — necessary-not-sufficient + §4b semantic…
21cc136
… gates

Per pythia python#87 (2026-04-23 02:39Z) + supervisor [chat L2626]:

§4 amendment (sufficient → necessary-not-sufficient):
- Bridge-inventory falsification PASS confirms inventory completeness ONLY
- PASS does NOT confirm semantic equivalence of new C body vs deleted C++
- Empirical proof: push 84 95c9f9b PASSED §4 mutation but W21 golden
  still detected register-allocation HIR regression in attr_probe;
  PhxCallKind dispatch fix at 1553c14 required
- §4 alone insufficient; semantic-equivalence requires separate gates

§4b NEW SECTION (semantic-equivalence gates, MANDATORY):
- W21 golden (catches register-alloc drift, opcode-dispatch shifts, HIR
  construction-order changes — push 84 case-in-point)
- Falsifier suite 6/6 (sole-path force_compile)
- Force_compile sole-path execution (per scripts/gate_phoenix.sh, 5
  mainline functions)
- Caveat: __static__-only paths have no sole-path coverage per W27e
  accepted-residual L2531+L2533

Cross-link added: feedback_dispatch_glue_categorization.md for PARTIAL
stub Cat-A/B falsifiable test.

General principle (future workstream specs): post-Step-B falsification
test as NECESSARY-but-NOT-SUFFICIENT. Inventory-PASS does not substitute
for semantic-equivalence verification.

Pythia python#87 redefining-on-landing meta-concern addressed structurally:
spec language now distinguishes the two gate classes.
SonicField added a commit to SonicField/cpython that referenced this pull request Apr 23, 2026
@SonicField
docs: W28 spec — cinder_opcode.h / opcode.h header-guard collision
0e0cea8
Per supervisor [chat L2626] + L2742 + librarian L2737 (close pythia python#87
python#3 ephemera-gap durably).

Captures empirical W26 push 84 incident (95c9f9b → 1553c14 fix):
- Both cinder_opcode_ids.h + Include/opcode.h use Py_OPCODE_H guard
- Include order silently shadows whichever loads second
- W26 case: BINARY_OP_ADD_INT undefined → attr_probe HIR regression
  caught by W21 golden trip-wire

Three resolution options enumerated:
- (A) rename cinder_opcode_ids.h guard to CINDERX_OPCODE_IDS_H —
  recommended, eliminates collision class
- (B) static_assert in cinder_opcode.h to detect collision at compile
  — hardens detection without fixing
- (C) header-comment only — current state, NOT recommended (chat-
  ephemera proven insufficient)

Related W29 candidate noted: PHX_PRIM_OP_* / PHX_PRIM_UOP_* hard-coded
in builder_emit_c.c lines 3727-3746 with no static_assert binding to
classloader.h authoritative #defines (per pythia python#89 python#3 re-issue).

DEFERRED per supervisor — schedule post-Batch-2 burndown, before any
upstream sync touching Include/opcode.h or classloader.h.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@vstinner vstinner vstinner approved these changes

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

3 participants

@methane @vstinner @the-knights-who-say-ni
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.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.