summaryrefslogtreecommitdiff
path: root/python-subprocess-tee.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-subprocess-tee.spec')
-rw-r--r--python-subprocess-tee.spec159
1 files changed, 159 insertions, 0 deletions
diff --git a/python-subprocess-tee.spec b/python-subprocess-tee.spec
new file mode 100644
index 0000000..1567818
--- /dev/null
+++ b/python-subprocess-tee.spec
@@ -0,0 +1,159 @@
+%global _empty_manifest_terminate_build 0
+Name: python-subprocess-tee
+Version: 0.4.1
+Release: 1
+Summary: subprocess-tee
+License: MIT
+URL: https://pypi.org/project/subprocess-tee/
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/f6/a0/acafd85c7c0aead293a16a70a49aba20ba2af9478771370b2897eae6059c/subprocess-tee-0.4.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-enrich
+Requires: python3-molecule
+Requires: python3-pytest-cov
+Requires: python3-pytest-plus
+Requires: python3-pytest-xdist
+Requires: python3-pytest
+
+%description
+# subprocess-tee
+
+This package provides a drop-in alternative to `subprocess.run` that
+captures the output while still printing it in **real-time**, just the way
+`tee` does.
+
+Printing output in real-time while still capturing is valuable for
+any tool that executes long-running child processes. For those, you do want
+to provide instant feedback (progress) related to what is happening.
+
+```python
+# from subprocess import run
+from subprocess_tee import run
+
+result = run("echo 123")
+result.stdout == "123\n"
+```
+
+You can add `tee=False` to disable the tee functionality if you want, this
+being a much shorter alternative than adding the well known
+`stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL`.
+
+Keep in mind that `universal_newlines=True` is implied as we expect text
+processing, this being a divergence from the original `subprocess.run`.
+
+You can still use `check=True` in order to make it raise CompletedProcess
+exception when the result code is not zero.
+
+
+%package -n python3-subprocess-tee
+Summary: subprocess-tee
+Provides: python-subprocess-tee
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-subprocess-tee
+# subprocess-tee
+
+This package provides a drop-in alternative to `subprocess.run` that
+captures the output while still printing it in **real-time**, just the way
+`tee` does.
+
+Printing output in real-time while still capturing is valuable for
+any tool that executes long-running child processes. For those, you do want
+to provide instant feedback (progress) related to what is happening.
+
+```python
+# from subprocess import run
+from subprocess_tee import run
+
+result = run("echo 123")
+result.stdout == "123\n"
+```
+
+You can add `tee=False` to disable the tee functionality if you want, this
+being a much shorter alternative than adding the well known
+`stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL`.
+
+Keep in mind that `universal_newlines=True` is implied as we expect text
+processing, this being a divergence from the original `subprocess.run`.
+
+You can still use `check=True` in order to make it raise CompletedProcess
+exception when the result code is not zero.
+
+
+%package help
+Summary: Development documents and examples for subprocess-tee
+Provides: python3-subprocess-tee-doc
+%description help
+# subprocess-tee
+
+This package provides a drop-in alternative to `subprocess.run` that
+captures the output while still printing it in **real-time**, just the way
+`tee` does.
+
+Printing output in real-time while still capturing is valuable for
+any tool that executes long-running child processes. For those, you do want
+to provide instant feedback (progress) related to what is happening.
+
+```python
+# from subprocess import run
+from subprocess_tee import run
+
+result = run("echo 123")
+result.stdout == "123\n"
+```
+
+You can add `tee=False` to disable the tee functionality if you want, this
+being a much shorter alternative than adding the well known
+`stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL`.
+
+Keep in mind that `universal_newlines=True` is implied as we expect text
+processing, this being a divergence from the original `subprocess.run`.
+
+You can still use `check=True` in order to make it raise CompletedProcess
+exception when the result code is not zero.
+
+
+%prep
+%autosetup -n subprocess-tee-0.4.1
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-subprocess-tee -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 0.4.1-1
+- Package Spec generated