Skip to content

Clinic fixes: add converters with length, version directive, "self converter" #63929

Closed

Description

@larryhastings
BPO 19730
Nosy @brettcannon, @ncoghlan, @pitrou, @larryhastings
Files
  • larry.misc.clinic.fixes.diff.1.patch
  • larry.misc.clinic.fixes.diff.3.patch
  • 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 = 'https://github.com/larryhastings'
    closed_at = <Date 2013-11-23.22:54:56.541>
    created_at = <Date 2013-11-23.02:28:12.286>
    labels = ['type-bug', 'build']
    title = 'Clinic fixes: add converters with length, version directive, "self converter"'
    updated_at = <Date 2013-11-23.22:54:56.540>
    user = 'https://github.com/larryhastings'

    bugs.python.org fields:

    activity = <Date 2013-11-23.22:54:56.540>
    actor = 'larry'
    assignee = 'larry'
    closed = True
    closed_date = <Date 2013-11-23.22:54:56.541>
    closer = 'larry'
    components = ['Build']
    creation = <Date 2013-11-23.02:28:12.286>
    creator = 'larry'
    dependencies = []
    files = ['32790', '32814']
    hgrepos = []
    issue_num = 19730
    keywords = ['patch']
    message_count = 5.0
    messages = ['203958', '204016', '204036', '204115', '204124']
    nosy_count = 5.0
    nosy_names = ['brett.cannon', 'ncoghlan', 'pitrou', 'larry', 'python-dev']
    pr_nums = []
    priority = 'normal'
    resolution = 'fixed'
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = 'behavior'
    url = 'https://bugs.python.org/issue19730'
    versions = ['Python 3.4']

    Activity

    1. larryhastings commented on Nov 23, 2013

      @larryhastings
      ContributorAuthor

      Two minor changes for Argument Clinic.

      • Added a "version" directive, so a programmer can require a
        specific version (or better) of Clinic.

      • Finished off support for all the 'legacy' converters. The ones today
        were those that give off a "length" parameter. This was complicated
        by finally dealing properly with the Py_buffer conversion stuff.

      To properly handle length parameters, I had to support PY_SSIZE_T_CLEAN being turned off (when are we gonna throw that away?). So I added a new type to pyports.h, Py_ssize_clean_t, which is either an int or a Py_ssize_t depending on PY_SSIZE_T_CLEAN.

      I've run out of gas and am going to bed. I know I have two TODO items in the diff so far; I'll deal with those tomorrow. But can I get a quick review of the rest, so I can get this in tomorrow?

    2. added
      buildThe build process and cross-build
      type-bugAn unexpected behavior, bug, or error
      on Nov 23, 2013
    3. pitrou commented on Nov 23, 2013

      @pitrou
      Member

      Argument Clinic is an internal tool, so I don't think it's bound by the feature freeze.
      (and, besides, you are the RM :-))

    4. ncoghlan commented on Nov 23, 2013

      @ncoghlan
      Contributor

      +1 to what Antoine said - keeping the initial iteration internal only
      actually buys us some time :)

    5. larryhastings commented on Nov 23, 2013

      @larryhastings
      ContributorAuthor

      Attached is a fresh patch. I added a third new feature: the "self converter", which allows you to change the type of (or rename) self. For an example of its use, check out dbm.dbm.get in Modules/_dbmmodule.c.

    6. changed the title [-]Clinic fixes: add converters with length, version directive[/-] [+]Clinic fixes: add converters with length, version directive, "self converter"[/+] on Nov 23, 2013
    7. python-dev commented on Nov 23, 2013

      python-devmannequin
      Mannequin

      New changeset 760ccd78e874 by Larry Hastings in branch 'default':
      Issue bpo-19730: Argument Clinic now supports all the existing PyArg
      http://hg.python.org/cpython/rev/760ccd78e874

    8. transferred this issue fromon Apr 10, 2022
    9. added 2 commits that reference this issue on Dec 20, 2023
    10. added a commit that references this issue on Dec 26, 2023
    11. added a commit that references this issue on Jan 22, 2024
    12. added a commit that references this issue on Feb 11, 2024
    13. added a commit that references this issue on Sep 2, 2024
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

    Metadata

    Metadata

    Assignees

    Labels

    buildThe build process and cross-buildtype-bugAn unexpected behavior, bug, or error

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions