virtualshell
High-performance PowerShell automation for Python. Run PowerShell commands with millisecond latency, persistent sessions, async execution, and a cross-platform zero-copy bridge — without juggling subprocesses.
Full documentation lives in the wiki. This README covers what the library is, why it matters, and how to get started.
What is virtualshell?
virtualshell keeps one PowerShell host warm behind a thin Python wrapper
powered by a C++ engine. Instead of spawning pwsh for every command, you
get:
- a persistent PowerShell session
- ~2–4 ms execution latency
- async and batch execution
- structured, predictable results
- optional zero-copy shared memory transfers (cross-platform)
- live object proxies with generated type stubs
Typical use cases include Python orchestration layers, long-running agents, CI/test harnesses, and automation tooling that must be fast and reliable.
Why use it?
- Persistent session — reuse loaded modules,
$env:*, functions, and global state across calls. - Low latency — avoid the ~200 ms cost of
subprocess.run("pwsh")per command. - Async and batching — schedule concurrent commands with timeouts and callbacks.
- Structured results — every call returns stdout, stderr, exit code, timing, and success state.
- Predictable failures — typed Python exceptions for timeouts, missing PowerShell, and execution errors.
- Type-safe automation — generate Python
Protocolstubs from PowerShell objects and control them through live proxies.
Requirements
- Python 3.11 – 3.14
- PowerShell 7 (
pwsh) onPATH, unless an explicit path is passed in the configuration
Installation
Pre-built wheels are published for Windows (x64), Linux (x86_64 / aarch64), and macOS (universal2):
pip install virtualshell
No compiler or build tools are required when installing wheels.
Building from source (optional)
Building locally requires CMake and a C++17 compiler. On Windows, install Visual Studio Build Tools with the Desktop development with C++ workload and run the build from an x64 Native Tools Command Prompt (64-bit only).
pip install virtualshell --no-binary virtualshell
Or directly from GitHub:
pip install "git+https://github.com/Chamoswor/virtualshell"
Verify the installation:
python -c "import virtualshell; print('virtualshell OK')"
Quick start
from virtualshell import Shell
with Shell(timeout_seconds=5) as sh:
print(sh.run("Write-Output 'Hello from pwsh'").out.strip())
sh.run("function Inc { $global:i++; $global:i }")
print(sh.run("Inc").out.strip()) # 1
print(sh.run("Inc").out.strip()) # 2
Async execution
from virtualshell import Shell
import asyncio
async def main():
shell = Shell().start()
fut = shell.run_async("Get-Date")
res = await asyncio.wrap_future(fut)
print(res.out.strip())
shell.stop()
asyncio.run(main())
Running scripts with arguments
from pathlib import Path
from virtualshell import Shell
shell = Shell().start()
shell.script(Path("test.ps1"), args=["alpha", "42"])
shell.script(Path("test.ps1"), args={"Name": "Alice", "Count": "3"})
shell.stop()
All execution APIs support per-call timeouts, raise_on_error, and
callbacks.
Advanced features
Zero-copy bridge
High-throughput shared-memory transfer between Python and PowerShell, suited
for large binary blobs, files, or high-frequency data exchange. The payload
moves through a file-backed memory map shared between Python (mmap) and
PowerShell (.NET MemoryMappedFile) — no native DLL required, on Windows,
Linux, and macOS.
from virtualshell import Shell, ZeroCopyBridge
with Shell(timeout_seconds=60) as shell:
with ZeroCopyBridge(shell) as bridge:
data = b"x" * 1_000_000
bridge.send(data, "buf")
print(shell.run("$buf.Length").out)
Measured throughput is roughly 145–560 MB/s depending on payload size and
direction — about 10–40× faster than piping the same data through stdout as
base64. See the wiki for the full guide, including PSObject round-trips
between Python and PowerShell.
PowerShell object proxies
Control live .NET/PowerShell objects from Python. Scalars convert to native Python types, byte arrays travel through the zero-copy bridge, and complex values come back as sub-proxies.
with Shell() as sh:
writer = sh.make_proxy("", "System.IO.StreamWriter('test.txt')")
writer.WriteLine("Hello")
writer.Close()
Pair proxies with generate_psobject, which produces typed Protocol stubs
(including overloads) for IDE completion and static analysis:
sh.generate_psobject("System.Text.StringBuilder()", Path("StringBuilder.py"))
from StringBuilder import StringBuilder
sb = sh.make_proxy(StringBuilder) # created and typed in one call
sb.Append("Hello")
See the make_proxy and generate_psobject pages in the wiki.
Core API overview
| Method | Description |
|---|---|
Shell.run(...) |
Execute a command synchronously |
Shell.run_async(...) |
Schedule async execution |
Shell.script(...) |
Run .ps1 files |
Shell.save_session() |
Persist a session snapshot |
Shell.make_proxy(...) |
Create a live PS object proxy |
Shell.generate_psobject(...) |
Generate Python Protocols |
Shell.zero_copy_bridge() |
Shared per-shell bridge |
Configuration example
Shell(
powershell_path="C:/Program Files/PowerShell/7/pwsh.exe",
working_directory="C:/automation",
environment={"MY_FLAG": "1"},
timeout_seconds=10,
auto_restart_on_timeout=True,
initial_commands=[
"$ErrorActionPreference = 'Stop'",
"$ProgressPreference = 'SilentlyContinue'",
],
)
Performance
Measured with the bundled benchmarks (bench/vs_bench.py,
bench/zcb_bench.py) on Windows 11, Python 3.14, PowerShell 7:
Command execution
- ~0.45 s shell startup
- ~3.5–4.0 ms per sequential command (~280 cmd/s)
- ~3.2 ms per command in batches (~310 cmd/s)
- ~2.3 ms async latency
- ~620 cmd/s aggregate across 4 parallel shells
- ~0.35 s session save
Zero-copy bridge (best of 3 runs per size)
| Transfer | 1 MB | 8 MB | 32 MB |
|---|---|---|---|
| PowerShell → Python (bytes) | 145 MB/s | 385 MB/s | 413 MB/s |
| PowerShell → Python (memoryview) | 145 MB/s | 454 MB/s | 563 MB/s |
| Python → PowerShell (send) | 178 MB/s | 369 MB/s | 293 MB/s |
A 4 KB send+receive round trip takes ~8 ms (p50). For reference, moving the same 1 MB payload through stdout as base64 runs at ~14 MB/s, so the bridge is roughly 10–40× faster for bulk data.
Full methodology and charts live in the wiki.
Learn more
Metadata
Release files for virtualshell 1.2.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 | |
|---|---|---|---|
| virtualshell-1.2.0.tar.gz | 141.7 kB | Details |
Built distributions (wheels)
Total release size: 6.6 MB
Release files / virtualshell-1.2.0.tar.gz
| Download URL | virtualshell-1.2.0.tar.gz |
|---|---|
| Size | 141.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
655ef9992f1060278474765aeab10c9c031089b9044ee75d4a739fe0a51a1fa5
|
|
BLAKE2b-256 checksum How to use checksums |
2efec4072d2f4691eefe3749cb42686645b78989d725485d972a952f246e6c88
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp314-cp314-win_amd64.whl
| Download URL | virtualshell-1.2.0-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 498.2 kB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
40e74b0f24c2d4d75feb965c3ea3f2ab4e840a78762f30bc3d22fde78e7b7cb1
|
|
BLAKE2b-256 checksum How to use checksums |
2084669aa70c44d5f508b282f1df2fdf7b4751cd62c478acc770dd9e6ca859f2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | virtualshell-1.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 365.7 kB |
| Tags | CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
80dfe70cb00b9645d3e3a7ddd81bcdc3d3648417bf67264bba275dc266cf652a
|
|
BLAKE2b-256 checksum How to use checksums |
d599f1c707afd1b015189c9349ea520bd9a272c356b4bc77248c1ebcc241a8ae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | virtualshell-1.2.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 330.7 kB |
| Tags | CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
d09c54a5d267977564ab11e4bad4178b1eb58ef51f395dcac47c2500a3a2bfe1
|
|
BLAKE2b-256 checksum How to use checksums |
eb53d0998f5afd1688c42ef800fec3399699792c9f4699258874ecd6958ae3ba
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp314-cp314-macosx_11_0_universal2.whl
| Download URL | virtualshell-1.2.0-cp314-cp314-macosx_11_0_universal2.whl |
|---|---|
| Size | 429.9 kB |
| Tags | CPython 3.14 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
770788fce7aa1ca967dfd969c5fee32af5891b6818bc5c500b26f2cb9e91318b
|
|
BLAKE2b-256 checksum How to use checksums |
666ffec3b04f95f7f3d7c6604a3689ad84fdb5481ba058c7a9e3583b6bf5b587
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp313-cp313-win_amd64.whl
| Download URL | virtualshell-1.2.0-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 484.0 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
d9f2e21139d169939e615fa6b8d165fa32760130ffbf68020b636712e20ffdae
|
|
BLAKE2b-256 checksum How to use checksums |
4d986feef793177973b8bcbcc71210246c02ef3f80103b1ec2ce08e29343754e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | virtualshell-1.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 365.5 kB |
| Tags | CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
1d0b4ae587e6ed9ada3047ca882c9019790fbcc2026bb9b1bc34f50b1bb923d3
|
|
BLAKE2b-256 checksum How to use checksums |
7a1923b4395b59674a70b4afbd541fd77d157dd2e658a1d8147c0665b4a8c84c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | virtualshell-1.2.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 330.0 kB |
| Tags | CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
6709c7c9fd38684486ad087328fdb3454a506507c7fa7bfedb2baa0db359cbcb
|
|
BLAKE2b-256 checksum How to use checksums |
2254c9d3f016b542dff327b415728ec0dc598b2ed304ef84cfef33edc1585a2b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp313-cp313-macosx_11_0_universal2.whl
| Download URL | virtualshell-1.2.0-cp313-cp313-macosx_11_0_universal2.whl |
|---|---|
| Size | 429.1 kB |
| Tags | CPython 3.13 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
d4f9ee515df67326c5903457a283915e2dfaff841a43d51be1a5d88a1096fe09
|
|
BLAKE2b-256 checksum How to use checksums |
664bfc6474c2bf9e01ef63cb14a3d395557058576cdc568d5cd4d96290928d9a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp312-cp312-win_amd64.whl
| Download URL | virtualshell-1.2.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 483.9 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
5ba1cab7f353df32a7bdeb94756c0a0a27913dab0ae3cc1596a63019c5bb8628
|
|
BLAKE2b-256 checksum How to use checksums |
701d10bf4652b6de9459f005bc408fe4268b3a1cca3fabe5d4b5e3f58eef35a4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | virtualshell-1.2.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 365.5 kB |
| Tags | CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
a80b2cc5c0697b0ed56f3044ca2654c35947f6dfe6c7156c88d3645160b014d2
|
|
BLAKE2b-256 checksum How to use checksums |
4afeb75f29b0f0b1d70e63c64d32dd352ad0c708fdea2a3623dd3a28aa138cf0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | virtualshell-1.2.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 329.9 kB |
| Tags | CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
661840d3954d3ae0495933d09af7e2a1248867da170b260d4cdb851559aceabe
|
|
BLAKE2b-256 checksum How to use checksums |
4bd3f1dcd0f24df0f9e76c58929a0697f826637fc7080618c950de4db26effdb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp312-cp312-macosx_11_0_universal2.whl
| Download URL | virtualshell-1.2.0-cp312-cp312-macosx_11_0_universal2.whl |
|---|---|
| Size | 429.0 kB |
| Tags | CPython 3.12 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
ce9f3eb15c31a34dc5d093f0bc40a6eb19cc4006199646f7f6bc664bc8fe134e
|
|
BLAKE2b-256 checksum How to use checksums |
6d1353973347951eed602a9674a8b45618e71c421f06ac82fb73859246ea1596
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp311-cp311-win_amd64.whl
| Download URL | virtualshell-1.2.0-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 482.7 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
9d88a06eababa620e6ee99a1121cee726a983bd9f9ace28aec2e7a14c293d337
|
|
BLAKE2b-256 checksum How to use checksums |
1de9b6de555efbb4ffa70923764d935ad60c81682a93f6e783f7e89e43ff3cf4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | virtualshell-1.2.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 363.5 kB |
| Tags | CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
4cac0f4f24100c4409740ae30881ba65feaea76f0c7fb77cdf42385852ac2958
|
|
BLAKE2b-256 checksum How to use checksums |
b49df7fe2f6910c5aa38dafa0249b6042a7d960f3daaa0c31d18c8d2eebddee5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | virtualshell-1.2.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 327.8 kB |
| Tags | CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
8dbc3dd11a5010b71e4c290bc58b6b9a3c706a62cadc32d98bc4fa120d377731
|
|
BLAKE2b-256 checksum How to use checksums |
5a2cb4916674b62eba642fc6cf37628fa8196f8035b73f3a9b46ccaf4b93a27f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency logRelease files / virtualshell-1.2.0-cp311-cp311-macosx_11_0_universal2.whl
| Download URL | virtualshell-1.2.0-cp311-cp311-macosx_11_0_universal2.whl |
|---|---|
| Size | 427.7 kB |
| Tags | CPython 3.11 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
d87b60ae01e1d7e265a2a1bb9e9ccd8fd60db974b68407a385982b2e7c04ee6e
|
|
BLAKE2b-256 checksum How to use checksums |
4f6233511b09d745c999e5dc5a27548497291408524f286968ae61f624a5f6fa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 20, 2026.
Transparency log