textproc/py-humanfriendly - The NetBSD Packages Collection

Human friendly output for text interfaces using Python

The functions and classes in the humanfriendly package can be used to
make text interfaces more user friendly. Some example features:

 - Parsing and formatting numbers, file sizes, pathnames and timespans
   in simple, human friendly formats.
 - Easy to use timers for long running operations, with human friendly
   formatting  of the resulting timespans.
 - Prompting the user to select a choice from a list of options by
   typing the  option's number or a unique substring of the option.
 - Terminal interaction including text styling (ANSI escape sequences),
   user friendly rendering of usage messages and querying the terminal
   for its size

Build dependencies

devel/py-setuptools pkgtools/mktools pkgtools/cwrappers

Runtime dependencies

devel/py-setuptools lang/python312 lang/python312

Binary packages

OSArchitectureVersion
NetBSD 10.0aarch64py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64ebpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64ebpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64ebpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64ebpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64ebpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64ebpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64ebpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64ebpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64ebpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0aarch64ebpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0alphapy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0alphapy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0alphapy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0alphapy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0alphapy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0alphapy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0alphapy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0alphapy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0alphapy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0alphapy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv4py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv4py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv4py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv4py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv4py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv4py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv4py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv4py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv4py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv4py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv6hfpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0earmv7hfpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0i386py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0mips64ebpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0mips64ebpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0mips64ebpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0mips64ebpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0mips64ebpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0mips64ebpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0mips64ebpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0mips64ebpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0powerpcpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0sh3elpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0sh3elpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0sh3elpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0sh3elpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0sh3elpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0sh3elpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0sh3elpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0sh3elpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0sh3elpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0sh3elpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparc64py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparc64py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparc64py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparc64py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparc64py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparc64py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparc64py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparc64py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparc64py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparc64py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparcpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparcpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparcpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparcpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparcpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparcpy310-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparcpy311-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparcpy312-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparcpy38-humanfriendly-10.0nb1.tgz
NetBSD 10.0sparcpy39-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py312-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py38-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py39-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py310-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py311-humanfriendly-10.0nb1.tgz
NetBSD 10.0x86_64py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py38-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py39-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py38-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py39-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py38-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py39-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0aarch64py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0alphapy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0alphapy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0alphapy38-humanfriendly-10.0nb1.tgz
NetBSD 9.0alphapy39-humanfriendly-10.0nb1.tgz
NetBSD 9.0alphapy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0alphapy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0alphapy38-humanfriendly-10.0nb1.tgz
NetBSD 9.0alphapy39-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv4py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv4py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv4py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv4py39-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv6hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv6hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv6hfpy38-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv6hfpy39-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv6hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv6hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv6hfpy38-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv6hfpy39-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv6hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv6hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv7hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv7hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv7hfpy38-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv7hfpy39-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv7hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv7hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv7hfpy38-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv7hfpy39-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv7hfpy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0earmv7hfpy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py38-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py39-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py38-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py39-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py38-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py39-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0i386py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0m68kpy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0m68kpy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0m68kpy39-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy312-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy38-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy39-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy38-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy39-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy310-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy311-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy312-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy38-humanfriendly-10.0nb1.tgz
NetBSD 9.0powerpcpy39-humanfriendly-10.0nb1.tgz
NetBSD 9.0sparc64py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0sparc64py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0sparc64py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0sparc64py38-humanfriendly-10.0nb1.tgz
NetBSD 9.0sparc64py39-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py38-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py39-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py38-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py39-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py312-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py38-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py39-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py310-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py311-humanfriendly-10.0nb1.tgz
NetBSD 9.0x86_64py312-humanfriendly-10.0nb1.tgz
NetBSD 9.3x86_64py310-humanfriendly-10.0nb1.tgz
NetBSD 9.3x86_64py311-humanfriendly-10.0nb1.tgz
NetBSD 9.3x86_64py312-humanfriendly-10.0nb1.tgz
NetBSD 9.3x86_64py310-humanfriendly-10.0nb1.tgz
NetBSD 9.3x86_64py311-humanfriendly-10.0nb1.tgz
NetBSD 9.3x86_64py312-humanfriendly-10.0nb1.tgz

Binary packages can be installed with the high-level tool pkgin (which can be installed with pkg_add) or pkg_add(1) (installed by default). The NetBSD packages collection is also designed to permit easy installation from source.

Available build options

(none)

Known vulnerabilities

The pkg_admin audit command locates any installed package which has been mentioned in security advisories as having vulnerabilities.

Please note the vulnerabilities database might not be fully accurate, and not every bug is exploitable with every configuration.


Problem reports, updates or suggestions for this package should be reported with send-pr.