Skip to content

posixpath.commonpath: Check for empty iterables broken #114709

Closed
@srittau

Description

@srittau

Bug report

Bug description:

This came up in python/typeshed#11310: When passing an empty sequence to commonpath(), a ValueError is raised with an appropriate error message. When an "empty" iterable is passed, an IndexError is raised instead, although iterables otherwise work fine:

from posixpath import commonpath

commonpath([])  # -> ValueError: commonpath() arg is an empty sequence
commonpath(iter([]))  # -> IndexError: tuple index out of range

The fix is trivial, I'll send a PR. Technically this is an API change, though, although the old API is unexpected.

CPython versions tested on:

3.11, 3.12

Operating systems tested on:

Linux

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    type-featureA feature request or enhancement

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions