Skip to content

Add gc.enable_object_debugger(): detect corrupted Python objects in the GC #80570

@vstinner

Description

@vstinner
BPO 36389
Nosy @vstinner, @methane, @serhiy-storchaka, @pablogsal
PRs
  • bpo-36389: Add gc.enable_object_debugger() #12480
  • bpo-36389: _PyObject_IsFreed() now also detects uninitialized memory #12770
  • [3.7] bpo-36389: _PyObject_IsFreed() now also detects uninitialized memory (GH-12770) #12780
  • bpo-36389: Change PyMem_SetupDebugHooks() constants #12782
  • [3.7] bpo-36389: _PyObject_IsFreed() now also detects uninitialized memory (GH-12770) #12788
  • bpo-36389: Add _PyObject_CheckConsistency() function #12803
  • bpo-36389: Cleanup gc.set_threshold() #12844
  • bpo-36389: _PyObject_CheckConsistency() now also works in release mode #16612
  • bpo-36389: Fix _PyBytesWriter in release mode #16624
  • bpo-36389: Add newline to _PyObject_AssertFailed() #16629
  • [3.8] bpo-36389: Backport debug enhancements from master #16796
  • [3.7] bpo-38070: visit_decref() calls _PyObject_IsFreed() in debug mode #16816
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = None
    closed_at = <Date 2019-07-08.14:24:04.533>
    created_at = <Date 2019-03-21.11:02:41.933>
    labels = ['interpreter-core', 'type-feature', '3.8']
    title = 'Add gc.enable_object_debugger(): detect corrupted Python objects in the GC'
    updated_at = <Date 2019-10-16.01:37:51.669>
    user = 'https://github.com/vstinner'

    bugs.python.org fields:

    activity = <Date 2019-10-16.01:37:51.669>
    actor = 'vstinner'
    assignee = 'none'
    closed = True
    closed_date = <Date 2019-07-08.14:24:04.533>
    closer = 'vstinner'
    components = ['Interpreter Core']
    creation = <Date 2019-03-21.11:02:41.933>
    creator = 'vstinner'
    dependencies = []
    files = []
    hgrepos = []
    issue_num = 36389
    keywords = ['patch']
    message_count = 24.0
    messages = ['338536', '338538', '338539', '338541', '338542', '338603', '338612', '339910', '339911', '339916', '339948', '339960', '339966', '339995', '340101', '340287', '347497', '347498', '354073', '354076', '354117', '354138', '354147', '354679']
    nosy_count = 4.0
    nosy_names = ['vstinner', 'methane', 'serhiy.storchaka', 'pablogsal']
    pr_nums = ['12480', '12770', '12780', '12782', '12788', '12803', '12844', '16612', '16624', '16629', '16796', '16816']
    priority = 'normal'
    resolution = 'out of date'
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = 'enhancement'
    url = 'https://bugs.python.org/issue36389'
    versions = ['Python 3.8']

    Metadata

    Metadata

    Assignees

    No one assigned

      Labels

      3.8 (EOL)end of lifeinterpreter-core(Objects, Python, Grammar, and Parser dirs)type-featureA feature request or enhancement

      Projects

      No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions