Skip to content

Python sdist install error messages are _terrible_ #2063

Closed
@texodus

Description

Bug Report

Steps to Reproduce:

  1. Build perspective from sdist (or source) on a clean ubuntu LTS box
  2. Experience profound sadness :(

Expected Result:

A human-actionable error message. Ubuntu is missing dozens of libraries and tools at build time - if we're going to pretend the sdist is a viable target, we need to treat it as a piece of software that humans will use and (in this case) validate that dependencies exist before calling setup(). An informal survey leads me to believe that despite our wheel coverage, a sizable percentage of users get the sdist install from pip, and we get at least a bug report/month about this pain point.

I'm not sure whether it is possible to force verbosity when installed via pip, but this would be nice as well. Sans this, the docs need to be updated to help users make progress when the sdist install fails (e.g. where to look for verbose error logs and what common errors mean).

Actual Result:

  File "/usr/lib/python3.10/posixpath.py", line 152, in dirname
    p = os.fspath(p)
TypeError: expected str, bytes or os.PathLike object, not NoneType

Environment:

Ubuntu 20.04 in this case, but this is a general and cross-platform issue with the python build.

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions