{"schema_version":1,"metadata":{"branch":"release","release":"8.0","architecture":"amd64","generated_at":"2026-10-21T02:35:53.703506+00:00","source_url":"https://cdn.openbsd.org/pub/OpenBSD/8.0/packages/amd64/sqlports-7.55.tgz","source_sha256":"393d2bd6f5b23c8ba1809ec63f3e8310d7787d329b7350089609a078eb01a387","package_count":12098,"source_kind":"sqlports"},"package":{"name":"py3-command_runner-1.7.6","path":"sysutils/py-command_runner","url":"/packages/release/sysutils/py-command_runner/","comment":"platform agnostic command and shell execution tool","homepage":"https://github.com/netinvent/command_runner","maintainer":"The OpenBSD ports mailing-list <ports@openbsd.org>","description":"command_runner's purpose is to run external commands from Python, just\nlike \"subprocess\" on which it relies, while solving various problems a\ndeveloper may face, including:\n\n- Handling of all possible subprocess.popen / subprocess.check_output\nscenarios / python versions in one handy function without encoding /\ntimeout hassle.\n\n- Allow stdout/stderr stream output to be redirected to callback\nfunctions / output queues / files so you get to handle output in your\napplication while commands are running.\n\n- Callback to optional stop check so we can stop execution from outside\ncommand_runner.\n\n- Callback with optional process information so we get to control the\nprocess from outside command_runner.\n","description_source":null,"description_unresolved":[],"package_architecture":"amd64","stem":"py3-command_runner","readme":null,"dependencies":[{"path":"lang/python/3","type":"runtime","package_spec":"","url":"/packages/release/lang/python/3/"},{"path":"lang/python/3","type":"build","package_spec":"","url":"/packages/release/lang/python/3/"},{"path":"devel/py-build","type":"build","package_spec":"","url":"/packages/release/devel/py-build/"},{"path":"devel/py-installer","type":"build","package_spec":"","url":"/packages/release/devel/py-installer/"},{"path":"devel/py-setuptools","type":"build","package_spec":"py3-setuptools->=79v0","url":"/packages/release/devel/py-setuptools/"},{"path":"devel/py-wheel","type":"build","package_spec":"","url":"/packages/release/devel/py-wheel/"},{"path":"lang/python/3","type":"test","package_spec":"","url":"/packages/release/lang/python/3/"},{"path":"devel/py-test","type":"test","package_spec":"","url":"/packages/release/devel/py-test/"}],"reverse_dependencies":{"count":1,"url":"/packages/data/e7/e7752b18c9710e6e9ddb2978102656b8640b6e20ef02f8e8c5775ce3cea543a7.json"},"categories":["sysutils","lang/python"],"flavors":[],"only_for_architectures":["aarch64","amd64","arm","i386","mips64","mips64el","powerpc","powerpc64","riscv64","sparc64","alpha","hppa"],"not_for_architectures":[]}}
