Skip to content

Do not always use exceptions to return result from coroutine #85922

@vladima

Description

@vladima
mannequin
BPO 41756
Nosy @scoder, @encukou, @asvetlov, @ambv, @markshannon, @serhiy-storchaka, @1st1, @vladima
PRs
  • bpo-41756: Introduce _PyGen_SendNoStopIteration to provide alternative way to return results from coroutines #22196
  • bpo-41756: Refactor gen_send_ex(). #22330
  • bpo-41756: Add PyIter_Send function to allow sending value into generators/coroutines/iterators #22443
  • bpo-41756: Delete PyGen_Send function #22663
  • bpo-41756: Export PyGen_Send and wrap it in if-defs #22677
  • 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 2021-05-05.10:13:43.239>
    created_at = <Date 2020-09-11.01:10:36.924>
    labels = ['3.10', 'performance']
    title = 'Do not always use exceptions to return result from coroutine'
    updated_at = <Date 2021-07-23.16:04:57.057>
    user = 'https://github.com/vladima'

    bugs.python.org fields:

    activity = <Date 2021-07-23.16:04:57.057>
    actor = 'petr.viktorin'
    assignee = 'none'
    closed = True
    closed_date = <Date 2021-05-05.10:13:43.239>
    closer = 'asvetlov'
    components = []
    creation = <Date 2020-09-11.01:10:36.924>
    creator = 'v2m'
    dependencies = []
    files = []
    hgrepos = []
    issue_num = 41756
    keywords = ['patch']
    message_count = 49.0
    messages = ['376698', '376701', '376703', '376721', '376735', '376737', '377001', '377002', '377003', '377006', '377007', '377008', '377023', '377025', '377051', '377063', '377066', '377067', '377077', '377092', '377097', '377098', '377109', '377128', '377132', '377136', '377137', '377146', '377147', '377215', '377219', '377249', '377266', '377298', '377299', '377582', '377587', '377608', '378357', '378379', '378425', '378432', '378515', '378518', '378527', '378570', '382003', '398074', '398075']
    nosy_count = 8.0
    nosy_names = ['scoder', 'petr.viktorin', 'asvetlov', 'lukasz.langa', 'Mark.Shannon', 'serhiy.storchaka', 'yselivanov', 'v2m']
    pr_nums = ['22196', '22330', '22443', '22663', '22677']
    priority = 'normal'
    resolution = 'fixed'
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = 'performance'
    url = 'https://bugs.python.org/issue41756'
    versions = ['Python 3.10']

    Metadata

    Metadata

    Assignees

    No one assigned

      Labels

      3.10only security fixesperformancePerformance or resource usage

      Projects

      No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions