Skip to content
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 our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gdb/libpython.py InstanceProxy does not work with py3 #86892

Closed
hackaugusto mannequin opened this issue Dec 23, 2020 · 4 comments
Closed

gdb/libpython.py InstanceProxy does not work with py3 #86892

hackaugusto mannequin opened this issue Dec 23, 2020 · 4 comments
Labels
3.7 (EOL) end of life 3.8 only security fixes 3.9 only security fixes 3.10 only security fixes

Comments

@hackaugusto
Copy link
Mannequin

hackaugusto mannequin commented Dec 23, 2020

BPO 42726
Nosy @miss-islington, @hackaugusto
PRs
  • closes bpo-42726: gdb libpython: InstanceProxy support for py3 #23912
  • [3.9] closes bpo-42726: gdb libpython: InstanceProxy support for py3 (GH-23912) #23924
  • [3.8] closes bpo-42726: gdb libpython: InstanceProxy support for py3 (GH-23912) #23925
  • 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 2020-12-24.17:16:12.653>
    created_at = <Date 2020-12-23.18:30:18.597>
    labels = ['3.7', '3.8', '3.9', '3.10']
    title = 'gdb/libpython.py InstanceProxy does not work with py3'
    updated_at = <Date 2020-12-24.17:37:10.854>
    user = 'https://github.com/hackaugusto'

    bugs.python.org fields:

    activity = <Date 2020-12-24.17:37:10.854>
    actor = 'miss-islington'
    assignee = 'none'
    closed = True
    closed_date = <Date 2020-12-24.17:16:12.653>
    closer = 'miss-islington'
    components = ['Demos and Tools']
    creation = <Date 2020-12-23.18:30:18.597>
    creator = 'hack.augusto'
    dependencies = []
    files = []
    hgrepos = []
    issue_num = 42726
    keywords = []
    message_count = 4.0
    messages = ['383654', '383694', '383696', '383697']
    nosy_count = 2.0
    nosy_names = ['miss-islington', 'hack.augusto']
    pr_nums = ['23912', '23924', '23925']
    priority = 'normal'
    resolution = 'fixed'
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = None
    url = 'https://bugs.python.org/issue42726'
    versions = ['Python 3.6', 'Python 3.7', 'Python 3.8', 'Python 3.9', 'Python 3.10']

    @hackaugusto
    Copy link
    Mannequin Author

    hackaugusto mannequin commented Dec 23, 2020

    Calling proxyval on an instance of a user defined class fails.

    minimally reproducible example:

    from time import sleep
    
    class A:
        def __init__(self):
            self.a = 1
    
    a = A()
    sleep(10)
    

    Attach to process and run:

    py-up
    python-interactive
    Frame.get_selected_python_frame().get_pyop().get_var_by_name('a')[0].proxyval(set())
    

    Will result in the following error:

    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/usr/lib/debug/usr/lib64/libpython3.7m.so.1.0-3.7.9-2.fc33.x86_64.debug-gdb.py", line 471, in __repr__
        for arg, val in self.attrdict.iteritems()])
    AttributeError: 'dict' object has no attribute 'iteritems'
    

    Tested on fedora 33 with python3.7 and debugsymbols

    @hackaugusto hackaugusto mannequin added 3.7 (EOL) end of life 3.8 only security fixes 3.9 only security fixes 3.10 only security fixes labels Dec 23, 2020
    @miss-islington
    Copy link
    Contributor

    New changeset b57ada9 by Augusto Hack in branch 'master':
    closes bpo-42726: gdb libpython: InstanceProxy support for py3 (GH-23912)
    b57ada9

    @miss-islington
    Copy link
    Contributor

    New changeset efd64c8 by Miss Islington (bot) in branch '3.8':
    closes bpo-42726: gdb libpython: InstanceProxy support for py3 (GH-23912)
    efd64c8

    @miss-islington
    Copy link
    Contributor

    New changeset 3bb8567 by Miss Islington (bot) in branch '3.9':
    closes bpo-42726: gdb libpython: InstanceProxy support for py3 (GH-23912)
    3bb8567

    @ezio-melotti ezio-melotti transferred this issue from another repository Apr 10, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    3.7 (EOL) end of life 3.8 only security fixes 3.9 only security fixes 3.10 only security fixes
    Projects
    None yet
    Development

    No branches or pull requests

    1 participant