coveo-systools
Language and OS related utilities.
Content in a nutshell:
- enhanced subprocess calls
- asyncio subprocess calls
- file and app finding made easy
- safe text write and replace-if-different
- git-repo-root locator
- bool platforms
if WINDOWS or LINUX or MAC or WSL:
searching the filesystem
import os
from coveo_systools.filesystem import find_paths, find_application, find_repo_root
os.getcwd()
# '/code/coveo-python-oss/coveo-systools'
find_application('git')
# WindowsPath('C:/Program Files/Git/cmd/git.EXE') # windows example for completeness
find_repo_root()
# Path('/code/coveo-python-oss')
list(find_paths('pyproject.toml', search_from=find_repo_root(), in_root=True, in_children=True))
# [Path('/code/coveo-python-oss/pyproject.toml'), ...]
enhanced subprocess calls
An opinionated version of subprocess.check_call and subprocess.check_output.
New in 2.0.7: asyncio support, through async_check_call and async_check_output.
Adds the following features:
- command line is a variable args (instead of a list)
- automatic conversion of output to a stripped string (instead of raw bytes)
- automatic conversion of Path, bytes and number variables in command line
- automatic filtering of ansi codes from the output
- enhanced DetailedCalledProcessError on error (a subclass of the typical CalledProcessError)
from pathlib import Path
from coveo_systools.subprocess import check_call
check_call('mypy', '--config-file', Path('configs/mypy.ini'), verbose=True)
safe I/O, if changed
Good programming practices requires files to be saved using a temporary filename and then renamed. This helper takes it a step further by skipping the write operation if the content did not change:
import json
from pathlib import Path
from coveo_systools.filesystem import safe_text_write
safe_text_write(Path('./path/to/file.txt'), json.dumps(...), only_if_changed=True)
conditional platforms syntactic sugar
Readability is important, not repeating yourself is important.
Forget about platform.platform() and use bools directly:
from coveo_systools.platforms import WINDOWS, LINUX, IOS, WSL
if WINDOWS or WSL:
print("Hello Windows!")
elif LINUX or IOS:
print("Hello Unix!")
Metadata
Release files for coveo-systools 4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| coveo_systools-4.0.tar.gz | 9.0 kB | With provenance | Details for coveo_systools-4.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| coveo_systools-4.0-py3-none-any.whl | Python 3 | none | any | Details for coveo_systools-4.0-py3-none-any.whl |
Total release size: 18.6 kB
Release files / coveo_systools-4.0.tar.gz
| Download URL | coveo_systools-4.0.tar.gz |
|---|---|
| Size | 9.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1fbeea6168fec0859d02c21512af15fcb3e31d8756120fcf9856b02462dddb7e
|
|
BLAKE2b-256 checksum How to use checksums |
fc564de1f25b95ac72dca5e1eafea4f61d10d5e1c748bb5141505cf476a2b9fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 13, 2026.
Transparency logRelease files / coveo_systools-4.0-py3-none-any.whl
| Download URL | coveo_systools-4.0-py3-none-any.whl |
|---|---|
| Size | 9.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
17cd04279ffe88ddd01f4ca6e772c67bd3d98fbd57197e504d78a021844fc48d
|
|
BLAKE2b-256 checksum How to use checksums |
aec56769c5301b0dd7261268575ac4f8dc59cbdf3a444cfdd37e9db3c2a67e3e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 13, 2026.
Transparency logSecurity for coveo-systools 4.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for coveo_systools-4.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 13, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.