[Bug 299752] textproc/py-humanfriendly: Replace pipes with shlex for Python 3.13 (humanfriendly.cli fails to import)
- Reply: bugzilla-noreply_a_freebsd.org: "maintainer-feedback requested: [Bug 299752] textproc/py-humanfriendly: Replace pipes with shlex for Python 3.13 (humanfriendly.cli fails to import)"
- Reply: bugzilla-noreply_a_freebsd.org: "maintainer-approval requested: [Bug 299752] textproc/py-humanfriendly: Replace pipes with shlex for Python 3.13 (humanfriendly.cli fails to import) : [Attachment 276127] textproc/py-humanfriendly: Replace pipes with shlex for Python 3.13 (git format-patch)"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 299752] textproc/py-humanfriendly: Replace pipes with shlex for Python 3.13 (humanfriendly.cli fails to import)"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 299752] textproc/py-humanfriendly: Replace pipes with shlex for Python 3.13 (humanfriendly.cli fails to import)"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 22 Oct 2026 21:31:08 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=299752
Bug ID: 299752
Summary: textproc/py-humanfriendly: Replace pipes with shlex
for Python 3.13 (humanfriendly.cli fails to import)
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: Individual Port(s)
Assignee: python@FreeBSD.org
Reporter: patrick@crandol.com
Assignee: python@FreeBSD.org
Flags: maintainer-feedback?(python@FreeBSD.org)
humanfriendly.cli, the module behind the humanfriendly console script,
fails to import on Python 3.13:
$ python3.13 -c 'import humanfriendly.cli'
ModuleNotFoundError: No module named 'pipes'
humanfriendly/cli.py and humanfriendly/testing.py do `import pipes` and
use pipes.quote. The pipes module was removed in Python 3.13. The
library API (format_size, parse_*, terminal, ...) does not import
either module and is not affected.
The patch replaces pipes.quote with shlex.quote in cli.py and
testing.py and bumps PORTREVISION.
Misc changes:
- the port switches to USE_PYTHON=pep517 (the package metadata becomes
dist-info)
- the patches in files/ get a header saying what each one does and its
upstream status (Description, Issue ID, Changeset, TODO)
Impact: 17 ports depend on py-humanfriendly; they use the library API,
and none of them needs a change.
Tested: poudriere bulk on amd64, both with Python 3.12 and with
DEFAULT_VERSIONS+=python=3.13, after the pep517 switch: builds, installs
the package metadata as .dist-info, and the modules import from the
built package (only optional extras are missing).
Upstream: 10.0 (2021-09-17) is the latest release and the project is
unmaintained; GitHub master still imports pipes.
--
You are receiving this mail because:
You are the assignee for the bug.