General 
epew (ExternalProgramExecutionWrapper) is a tool to wrap program-calls with some useful functions.
Important: epew is not ready for usage yet.
Features
epew is a commandline-tool. There is no gui. The main-advantage of epew is to be used when
- it is difficult to pass special characters (backslashs, quotes, etc.) from commandline to another program (use epew with the
--ArgumentIsBase64Encoded-switch). - it is difficult to get stdout, stderr or the exitcode of the program (use epew with the
--StdOutFile- or--StdErrFile- or--ExitCodeFile-switch). - you want to have a simple timeout when running a program (use epew with the
--TimeoutInMilliseconds-switch). - you want to print the output to the console but also log the output into a file when running a program. Both (console and logfile) can of course have timestamps and a distinction between stderr and stdout.
Other features:
- epew is available for Linux and Windows.
- epew resolves environment-variables (e. g. you can set
gitas program instead ofC:\Program Files\Git\cmd\git.exe(which would also be possible)).
Get epew
Installation via pip (Linux and Windows)
pip install epew
pip requires Python 3.8. See the pypi-site of epew for more information.
Download sourcecode using git (Linux and Windows)
git clone https://github.com/anionDev/externalProgramExecutionWrapper
cd externalProgramExecutionWrapper
dotnet build ExternalProgramExecutionWrapper.sln
Installation via winget (Windows, planned)
Coming as soon as possible. winget is new for all of us, that's why epew is not instant available via winget.
Usage
>epew
-p, --Program Required. Program which should be executed
-a, --Argument Argument for the program which should be
executed
-b, --ArgumentIsBase64Encoded (Default: false) Specifiy whether Argument
is base64-encoded
-w, --Workingdirectory Workingdirectory for the program which
should be executed
-v, --Verbosity (Default: Normal) Verbosity of
ExternalProgramExecutionWrapper
-i, --PrintErrorsAsInformation (Default: false) Treat errors as information
-h, --AddLogOverhead (Default: false) Add log overhead
-l, --LogFile Logfile for ExternalProgramExecutionWrapper
-o, --StdOutFile File for the stdout of the executed program
-e, --StdErrFile File for the stderr of the executed program
-x, --ExitCodeFile File for the exitcode of the executed
program
-d, --TimeoutInMilliseconds (Default: 2147483647) Maximal duration of
the execution process before it will by
aborted by ExternalProgramExecutionWrapper
-t, --Title Title for the execution-process
-n, --NotSynchronous (Default: false) Run the program
asynchronously
--help Display this help screen.
--version Display version information.
Exitcodes:
2147393801: If no program was executed 2147393802: If a fatal error occurred 2147393803: If the executed program was aborted due to the given timeout 2147393881: If executed on MacOS (applies only to the pip-package) 2147393882: If executed on an unknown OS (applies only to the pip-package) 2147393883: If an (unexpected) exception occurred (applies only to the pip-package)
If the executed program terminated then its exitcode will be set as exitcode of epew.
Technical details
The pip-package
Installing epew via pip does really install epew. It does not install another implementation of epew with same behavior. The pip-package of epew takes the binary-files of epew (which are written in C# and compiled for the runtimes win-x64 and linux-x64), wraps them to a bundle and simple calls the correct one dependent on your OS.
Strong name
The officially released epew.dll-file is always signed with the key with the short-id 79cae7246084aa22. Do not trust any epew.dll-file which are not signed with this key.
Only epew.dll will be signed with this key. All other files contained in a binary-release of epew are not signed by this key.
You can verify the key using sn with sn -T epew.dll.
License
epew is licensed under the terms of MIT. The concrete license-text can be found here.
Metadata
Release files for epew 3.4.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| epew-3.4.7-py3-none-any.whl | Python 3 | none | any | Details for epew-3.4.7-py3-none-any.whl |
Release files / epew-3.4.7-py3-none-any.whl
| Download URL | epew-3.4.7-py3-none-any.whl |
|---|---|
| Size | 4.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
dc28041153a4e18206d6d54d03026eef80b768746f07e76f512ed58d52600936
|
|
BLAKE2b-256 checksum How to use checksums |
c63ebd879b238d5285db925230b85960366fec46465d8b2b76d05c2a6db5bdc9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3
|
Security for epew 3.4.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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A 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.