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 — Prepare CPython for opaque PyObject structure. · Issue #85360 · python/cpython

Prepare CPython for opaque PyObject structure. #85360

New issue
Copy link
New issue
Copy link
Closed as not planned
Closed as not planned
Prepare CPython for opaque PyObject structure.#85360
Copy link
Labels
3.10 (EOL)end of lifeend of lifeinterpreter-core(Objects, Python, Grammar, and Parser dirs)(Objects, Python, Grammar, and Parser dirs)topic-C-APItype-featureA feature request or enhancementA feature request or enhancement

Description

WildCard65
mannequin
opened on Jul 1, 2020
Issue body actions
BPO 41188
Nosy @ronaldoussoren, @vstinner, @WildCard65
PRs
  • [WIP, DO NOT MERGE] bpo-41188: Prepare CPython for opague PyObject structure. #21262
  • 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 = None
    created_at = <Date 2020-07-01.17:43:02.332>
    labels = ['interpreter-core', 'expert-C-API', 'type-feature', '3.10']
    title = 'Prepare CPython for opaque PyObject structure.'
    updated_at = <Date 2020-07-07.19:55:22.137>
    user = 'https://github.com/WildCard65'

    bugs.python.org fields:

    activity = <Date 2020-07-07.19:55:22.137>
    actor = 'ronaldoussoren'
    assignee = 'none'
    closed = False
    closed_date = None
    closer = None
    components = ['Interpreter Core', 'C API']
    creation = <Date 2020-07-01.17:43:02.332>
    creator = 'WildCard65'
    dependencies = []
    files = []
    hgrepos = []
    issue_num = 41188
    keywords = ['patch']
    message_count = 1.0
    messages = ['372775']
    nosy_count = 3.0
    nosy_names = ['ronaldoussoren', 'vstinner', 'WildCard65']
    pr_nums = ['21262']
    priority = 'normal'
    resolution = None
    stage = 'patch review'
    status = 'open'
    superseder = None
    type = 'enhancement'
    url = 'https://bugs.python.org/issue41188'
    versions = ['Python 3.10']

    Activity

    1. WildCard65 commented on Jul 1, 2020

      @WildCard65
      WildCard65mannequin
      on Jul 1, 2020
      MannequinAuthor
      More actions

      The goal of bpo-39573 is to make "PyObject" and opaque structure in the limited API.

      To do that, a few mandatory changes will be required to CPython in order to allow for seamless implementation.

      Namely:

      1. User types need to get away from directly referencing PyObject.

        • This can be done by adding a new variable to "PyTypeObject" who's value is an offset into the object's pointer to the type's internal structure.
          -- Example: 'PyType_Type.tp_obj_offset' would be the value of "sizeof(PyVarObject)".
          -- For custom types with another base: The value would be calculated from the base's "tp_obj_offset" + "tp_basicsize"
      2. Create a linkable static library to facility method calls requiring internal implementation.

        • This static library will be implementation defined, IE: using internal methods specific to the runtime that created it.
        • Public facing methods will use generic names for example, "PyObject_GetType" will get the object's ob_type (or whatever the target runtime calls it).
    2. WildCard65
      added
      3.10 (EOL)end of lifeend of life
      interpreter-core(Objects, Python, Grammar, and Parser dirs)(Objects, Python, Grammar, and Parser dirs)
      topic-C-API
      type-featureA feature request or enhancementA feature request or enhancement
      on Jul 1, 2020
    3. ezio-melotti
      transferred this issue fromon Apr 10, 2022
    4. iritkatriel commented on Jun 25, 2022

      @iritkatriel
      iritkatriel
      on Jun 25, 2022
      Member
      More actions

      The PR was closed by the OP after a core dev requested changes. So I am assuming the project was abandoned and closing the issue as well.

    5. iritkatriel
      closed this as not plannedon Jun 25, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

    Metadata

    Metadata

    Assignees

    No one assigned

      Labels

      3.10 (EOL)end of lifeend of lifeinterpreter-core(Objects, Python, Grammar, and Parser dirs)(Objects, Python, Grammar, and Parser dirs)topic-C-APItype-featureA feature request or enhancementA feature request or enhancement

      Projects

      No projects

        Milestone

        No milestone

        Relationships

        None yet

        Development

        No branches or pull requests

        Issue actions

        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.