pybun-cli 0.1.25__tar.gz → 0.1.27__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pybun_cli-0.1.25/pybun_cli.egg-info → pybun_cli-0.1.27}/PKG-INFO +27 -14
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/README.md +26 -13
- {pybun_cli-0.1.25 → pybun_cli-0.1.27/pybun_cli.egg-info}/PKG-INFO +27 -14
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/pyproject.toml +1 -1
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/LICENSE +0 -0
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/MANIFEST.in +0 -0
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/pybun/__init__.py +0 -0
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/pybun/__main__.py +0 -0
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/pybun/bootstrap.py +0 -0
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/pybun/cli.py +0 -0
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/pybun_cli.egg-info/SOURCES.txt +0 -0
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/pybun_cli.egg-info/dependency_links.txt +0 -0
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/pybun_cli.egg-info/entry_points.txt +0 -0
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/pybun_cli.egg-info/top_level.txt +0 -0
- {pybun_cli-0.1.25 → pybun_cli-0.1.27}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pybun-cli
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.27
|
|
4
4
|
Summary: PyBun shim bootstrapper for signed releases
|
|
5
5
|
Author: PyBun Authors
|
|
6
6
|
License-Expression: MIT
|
|
@@ -26,7 +26,7 @@ Dynamic: license-file
|
|
|
26
26
|
|
|
27
27
|
<p align="center">
|
|
28
28
|
<em>Safe, structured, deterministic Python execution for AI coding agents —<br>
|
|
29
|
-
|
|
29
|
+
orchestrating Python, pytest, and command-specific uv backends with JSON-first output and a built-in MCP server.</em>
|
|
30
30
|
</p>
|
|
31
31
|
|
|
32
32
|
<p align="center">
|
|
@@ -90,7 +90,7 @@ pybun run -c "import requests; print('Hello, PyBun!')"
|
|
|
90
90
|
|
|
91
91
|
Existing Python tools are built for **humans**. PyBun is designed for **AI agents** — and humans who work alongside them.
|
|
92
92
|
|
|
93
|
-
**PyBun is not a speed competitor to uv.** Tools like uv and pip are excellent at dependency resolution and installation
|
|
93
|
+
**PyBun is not a speed competitor to uv.** Tools like uv and pip are excellent at dependency resolution and installation. PyBun adds an **agent-facing control layer**: structured output, MCP integration, sandboxed execution, and audit/provenance that AI systems can rely on without fragile text scraping or unverifiable side effects. Delegation is currently command-specific: `pybun x` and eligible PEP 723 script runs use uv when it is available, while ordinary dependency commands still use PyBun's native path.
|
|
94
94
|
|
|
95
95
|
The value PyBun adds isn't "faster pip." It's removing the ambiguity, non-determinism, and risk an agent faces when it operates a Python environment on its own.
|
|
96
96
|
|
|
@@ -110,7 +110,7 @@ The value PyBun adds isn't "faster pip." It's removing the ambiguity, non-determ
|
|
|
110
110
|
uv pytest Python
|
|
111
111
|
```
|
|
112
112
|
|
|
113
|
-
PyBun
|
|
113
|
+
PyBun is moving toward a thin, structured control layer on top of proven execution backends rather than expanding its reimplementation of the Python packaging/import ecosystem. The v0.2.0 target architecture broadens uv delegation; it does not describe every current command path. See [`docs/SPECS.md`](docs/SPECS.md#03-外部レビューによる方向性提言-2026-08-29) for the reasoning behind this scope decision.
|
|
114
114
|
|
|
115
115
|
### ✨ What PyBun adds that other tools don't
|
|
116
116
|
|
|
@@ -137,11 +137,24 @@ The AI receives structured JSON — no parsing required, no ambiguity.
|
|
|
137
137
|
|
|
138
138
|
## Status
|
|
139
139
|
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
140
|
+
Maturity is assigned per execution path rather than to an entire milestone:
|
|
141
|
+
|
|
142
|
+
| Surface | Maturity | Current execution path |
|
|
143
|
+
| --- | --- | --- |
|
|
144
|
+
| `pybun install` | **Preview** | PyBun's native resolver, downloader, and wheel installer. Path containment is hardened by [Issue #431](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/431), but this is not a claim of full Python packaging compatibility. |
|
|
145
|
+
| `pybun x` | **Stable for common cases** | Creates a temporary environment and uses `uv pip install` when uv is available; otherwise it falls back to pip. |
|
|
146
|
+
| `pybun run` | **Stable for common cases** | Runs ordinary scripts with Python. Eligible PEP 723 scripts use `uv run --script` automatically when uv is available. Other PEP 723 paths are orchestrated by PyBun and may still use `uv pip install` for dependencies. |
|
|
147
|
+
| `pybun test` | **Stable for common cases** | The default backend wraps pytest/unittest. `--backend=pybun` is **Preview** and reports `W_TEST_BACKEND_COMPAT_*` diagnostics for known plugin/fixture gaps. |
|
|
148
|
+
| `pybun watch` | **Preview** | Native monitoring on macOS/Linux, with polling fallback on standard builds. |
|
|
149
|
+
| `pybun module-find` | **Experimental** | Standalone Rust Module Finder; it is not wired into CPython's runtime import path ([Issue #403](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/403)). |
|
|
150
|
+
| Windows support | **Preview** | CI compile coverage and selected cross-platform behavior; continue to validate command-specific behavior. |
|
|
151
|
+
|
|
152
|
+
`pybun install`, `pybun lock`, and `pybun upgrade` use PyBun's native dependency path today; installing uv does not switch those commands to an uv backend. Broader dependency-operation delegation is a v0.2.0 target.
|
|
153
|
+
|
|
154
|
+
PyBun-managed PEP 723 environments may still use `uv pip install` for dependency installation when uv is available, including sandboxed, no-cache, and PyBun-lockfile paths. Without uv, those paths fall back to native resolution/installation or pip depending on the environment mode. This is separate from direct `uv run --script` delegation.
|
|
155
|
+
|
|
156
|
+
The native installer's `.data/{purelib,platlib,scripts,headers,data}` routing is implemented and tested by the work that closed [Issue #402](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/402). That tested subset includes relocation, script permissions/shebang handling, and headers placement; it does not promise complete wheel compatibility such as console-entry-point generation, every platform scheme, source distributions, or arbitrary install hooks.
|
|
157
|
+
|
|
145
158
|
- **Platforms:** macOS/Linux (arm64/amd64), Windows (preview)
|
|
146
159
|
|
|
147
160
|
> PyBun's priority is the agent-facing control layer (JSON/MCP/diagnostics/sandbox/audit/drift), not re-implementing Python packaging/import internals. See [`docs/SPECS.md`](docs/SPECS.md#03-外部レビューによる方向性提言-2026-08-29) for feature maturity, phased rollout policy, and the current scope decisions.
|
|
@@ -232,12 +245,12 @@ PEP 723 inline metadata is also supported:
|
|
|
232
245
|
# ///
|
|
233
246
|
import requests
|
|
234
247
|
```
|
|
235
|
-
※ Metadata parsing
|
|
248
|
+
※ Metadata parsing and isolated-environment execution are supported. Direct `uv run --script` is Stable for common cases; PyBun-managed fallback paths inherit the native installer's Preview limitations. Environments are cached per script/dependency/Python-version key; see `docs/PLAN.md` for details.
|
|
236
249
|
|
|
237
250
|
### Ad-hoc Execution (`pybun x`)
|
|
238
251
|
|
|
239
252
|
Install a package in a temporary environment and execute it (Python version of `npx`).
|
|
240
|
-
If `uv` is available,
|
|
253
|
+
The environment is created with `python -m venv`. If `uv` is available, PyBun uses `uv pip install` for package installation; otherwise it uses pip.
|
|
241
254
|
|
|
242
255
|
```bash
|
|
243
256
|
# Temporarily install and run cowsay
|
|
@@ -619,9 +632,9 @@ cargo test mcp
|
|
|
619
632
|
|
|
620
633
|
## Benchmarks
|
|
621
634
|
|
|
622
|
-
PyBun is not a speed competitor to uv — it
|
|
635
|
+
PyBun is not a speed competitor to uv — it is an interface layer. Current uv delegation is limited to command paths such as `pybun x` package installation and eligible PEP 723 script runs. Ordinary `pybun install`, `pybun lock`, and `pybun upgrade` still use native dependency code; the v0.2.0 architecture aims to delegate more of that work.
|
|
623
636
|
|
|
624
|
-
The areas where PyBun intentionally differs from uv (JSON output, MCP, sandbox) are
|
|
637
|
+
The areas where PyBun intentionally differs from uv (JSON output, MCP, sandbox) are evaluated for structured correctness and safety first. Native resolver performance work and measurements are tracked in [Issue #239](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/239); they should not be read as a product goal to out-run uv.
|
|
625
638
|
|
|
626
639
|
Full numbers: [docs/BENCHMARK_UV_COMPARISON.md](docs/BENCHMARK_UV_COMPARISON.md)
|
|
627
640
|
|
|
@@ -630,7 +643,7 @@ Full numbers: [docs/BENCHMARK_UV_COMPARISON.md](docs/BENCHMARK_UV_COMPARISON.md)
|
|
|
630
643
|
## Roadmap
|
|
631
644
|
|
|
632
645
|
- [x] M0: Repository & CI scaffold
|
|
633
|
-
- [x] M1:
|
|
646
|
+
- [x] M1: Installer foundation (lockfile, native resolver, PEP 723); native install remains Preview while the v0.2.0 backend transition is pending
|
|
634
647
|
- [x] M2: Runtime optimization (module finder, lazy import, hot reload) — *opportunistic, ROI under evaluation; see [Issue #403](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/403)*
|
|
635
648
|
- [x] M3: Test runner (discovery, parallel execution, snapshots)
|
|
636
649
|
- [x] M4: JSON/MCP & diagnostics
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
<p align="center">
|
|
8
8
|
<em>Safe, structured, deterministic Python execution for AI coding agents —<br>
|
|
9
|
-
|
|
9
|
+
orchestrating Python, pytest, and command-specific uv backends with JSON-first output and a built-in MCP server.</em>
|
|
10
10
|
</p>
|
|
11
11
|
|
|
12
12
|
<p align="center">
|
|
@@ -70,7 +70,7 @@ pybun run -c "import requests; print('Hello, PyBun!')"
|
|
|
70
70
|
|
|
71
71
|
Existing Python tools are built for **humans**. PyBun is designed for **AI agents** — and humans who work alongside them.
|
|
72
72
|
|
|
73
|
-
**PyBun is not a speed competitor to uv.** Tools like uv and pip are excellent at dependency resolution and installation
|
|
73
|
+
**PyBun is not a speed competitor to uv.** Tools like uv and pip are excellent at dependency resolution and installation. PyBun adds an **agent-facing control layer**: structured output, MCP integration, sandboxed execution, and audit/provenance that AI systems can rely on without fragile text scraping or unverifiable side effects. Delegation is currently command-specific: `pybun x` and eligible PEP 723 script runs use uv when it is available, while ordinary dependency commands still use PyBun's native path.
|
|
74
74
|
|
|
75
75
|
The value PyBun adds isn't "faster pip." It's removing the ambiguity, non-determinism, and risk an agent faces when it operates a Python environment on its own.
|
|
76
76
|
|
|
@@ -90,7 +90,7 @@ The value PyBun adds isn't "faster pip." It's removing the ambiguity, non-determ
|
|
|
90
90
|
uv pytest Python
|
|
91
91
|
```
|
|
92
92
|
|
|
93
|
-
PyBun
|
|
93
|
+
PyBun is moving toward a thin, structured control layer on top of proven execution backends rather than expanding its reimplementation of the Python packaging/import ecosystem. The v0.2.0 target architecture broadens uv delegation; it does not describe every current command path. See [`docs/SPECS.md`](docs/SPECS.md#03-外部レビューによる方向性提言-2026-08-29) for the reasoning behind this scope decision.
|
|
94
94
|
|
|
95
95
|
### ✨ What PyBun adds that other tools don't
|
|
96
96
|
|
|
@@ -117,11 +117,24 @@ The AI receives structured JSON — no parsing required, no ambiguity.
|
|
|
117
117
|
|
|
118
118
|
## Status
|
|
119
119
|
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
120
|
+
Maturity is assigned per execution path rather than to an entire milestone:
|
|
121
|
+
|
|
122
|
+
| Surface | Maturity | Current execution path |
|
|
123
|
+
| --- | --- | --- |
|
|
124
|
+
| `pybun install` | **Preview** | PyBun's native resolver, downloader, and wheel installer. Path containment is hardened by [Issue #431](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/431), but this is not a claim of full Python packaging compatibility. |
|
|
125
|
+
| `pybun x` | **Stable for common cases** | Creates a temporary environment and uses `uv pip install` when uv is available; otherwise it falls back to pip. |
|
|
126
|
+
| `pybun run` | **Stable for common cases** | Runs ordinary scripts with Python. Eligible PEP 723 scripts use `uv run --script` automatically when uv is available. Other PEP 723 paths are orchestrated by PyBun and may still use `uv pip install` for dependencies. |
|
|
127
|
+
| `pybun test` | **Stable for common cases** | The default backend wraps pytest/unittest. `--backend=pybun` is **Preview** and reports `W_TEST_BACKEND_COMPAT_*` diagnostics for known plugin/fixture gaps. |
|
|
128
|
+
| `pybun watch` | **Preview** | Native monitoring on macOS/Linux, with polling fallback on standard builds. |
|
|
129
|
+
| `pybun module-find` | **Experimental** | Standalone Rust Module Finder; it is not wired into CPython's runtime import path ([Issue #403](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/403)). |
|
|
130
|
+
| Windows support | **Preview** | CI compile coverage and selected cross-platform behavior; continue to validate command-specific behavior. |
|
|
131
|
+
|
|
132
|
+
`pybun install`, `pybun lock`, and `pybun upgrade` use PyBun's native dependency path today; installing uv does not switch those commands to an uv backend. Broader dependency-operation delegation is a v0.2.0 target.
|
|
133
|
+
|
|
134
|
+
PyBun-managed PEP 723 environments may still use `uv pip install` for dependency installation when uv is available, including sandboxed, no-cache, and PyBun-lockfile paths. Without uv, those paths fall back to native resolution/installation or pip depending on the environment mode. This is separate from direct `uv run --script` delegation.
|
|
135
|
+
|
|
136
|
+
The native installer's `.data/{purelib,platlib,scripts,headers,data}` routing is implemented and tested by the work that closed [Issue #402](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/402). That tested subset includes relocation, script permissions/shebang handling, and headers placement; it does not promise complete wheel compatibility such as console-entry-point generation, every platform scheme, source distributions, or arbitrary install hooks.
|
|
137
|
+
|
|
125
138
|
- **Platforms:** macOS/Linux (arm64/amd64), Windows (preview)
|
|
126
139
|
|
|
127
140
|
> PyBun's priority is the agent-facing control layer (JSON/MCP/diagnostics/sandbox/audit/drift), not re-implementing Python packaging/import internals. See [`docs/SPECS.md`](docs/SPECS.md#03-外部レビューによる方向性提言-2026-08-29) for feature maturity, phased rollout policy, and the current scope decisions.
|
|
@@ -212,12 +225,12 @@ PEP 723 inline metadata is also supported:
|
|
|
212
225
|
# ///
|
|
213
226
|
import requests
|
|
214
227
|
```
|
|
215
|
-
※ Metadata parsing
|
|
228
|
+
※ Metadata parsing and isolated-environment execution are supported. Direct `uv run --script` is Stable for common cases; PyBun-managed fallback paths inherit the native installer's Preview limitations. Environments are cached per script/dependency/Python-version key; see `docs/PLAN.md` for details.
|
|
216
229
|
|
|
217
230
|
### Ad-hoc Execution (`pybun x`)
|
|
218
231
|
|
|
219
232
|
Install a package in a temporary environment and execute it (Python version of `npx`).
|
|
220
|
-
If `uv` is available,
|
|
233
|
+
The environment is created with `python -m venv`. If `uv` is available, PyBun uses `uv pip install` for package installation; otherwise it uses pip.
|
|
221
234
|
|
|
222
235
|
```bash
|
|
223
236
|
# Temporarily install and run cowsay
|
|
@@ -599,9 +612,9 @@ cargo test mcp
|
|
|
599
612
|
|
|
600
613
|
## Benchmarks
|
|
601
614
|
|
|
602
|
-
PyBun is not a speed competitor to uv — it
|
|
615
|
+
PyBun is not a speed competitor to uv — it is an interface layer. Current uv delegation is limited to command paths such as `pybun x` package installation and eligible PEP 723 script runs. Ordinary `pybun install`, `pybun lock`, and `pybun upgrade` still use native dependency code; the v0.2.0 architecture aims to delegate more of that work.
|
|
603
616
|
|
|
604
|
-
The areas where PyBun intentionally differs from uv (JSON output, MCP, sandbox) are
|
|
617
|
+
The areas where PyBun intentionally differs from uv (JSON output, MCP, sandbox) are evaluated for structured correctness and safety first. Native resolver performance work and measurements are tracked in [Issue #239](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/239); they should not be read as a product goal to out-run uv.
|
|
605
618
|
|
|
606
619
|
Full numbers: [docs/BENCHMARK_UV_COMPARISON.md](docs/BENCHMARK_UV_COMPARISON.md)
|
|
607
620
|
|
|
@@ -610,7 +623,7 @@ Full numbers: [docs/BENCHMARK_UV_COMPARISON.md](docs/BENCHMARK_UV_COMPARISON.md)
|
|
|
610
623
|
## Roadmap
|
|
611
624
|
|
|
612
625
|
- [x] M0: Repository & CI scaffold
|
|
613
|
-
- [x] M1:
|
|
626
|
+
- [x] M1: Installer foundation (lockfile, native resolver, PEP 723); native install remains Preview while the v0.2.0 backend transition is pending
|
|
614
627
|
- [x] M2: Runtime optimization (module finder, lazy import, hot reload) — *opportunistic, ROI under evaluation; see [Issue #403](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/403)*
|
|
615
628
|
- [x] M3: Test runner (discovery, parallel execution, snapshots)
|
|
616
629
|
- [x] M4: JSON/MCP & diagnostics
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pybun-cli
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.27
|
|
4
4
|
Summary: PyBun shim bootstrapper for signed releases
|
|
5
5
|
Author: PyBun Authors
|
|
6
6
|
License-Expression: MIT
|
|
@@ -26,7 +26,7 @@ Dynamic: license-file
|
|
|
26
26
|
|
|
27
27
|
<p align="center">
|
|
28
28
|
<em>Safe, structured, deterministic Python execution for AI coding agents —<br>
|
|
29
|
-
|
|
29
|
+
orchestrating Python, pytest, and command-specific uv backends with JSON-first output and a built-in MCP server.</em>
|
|
30
30
|
</p>
|
|
31
31
|
|
|
32
32
|
<p align="center">
|
|
@@ -90,7 +90,7 @@ pybun run -c "import requests; print('Hello, PyBun!')"
|
|
|
90
90
|
|
|
91
91
|
Existing Python tools are built for **humans**. PyBun is designed for **AI agents** — and humans who work alongside them.
|
|
92
92
|
|
|
93
|
-
**PyBun is not a speed competitor to uv.** Tools like uv and pip are excellent at dependency resolution and installation
|
|
93
|
+
**PyBun is not a speed competitor to uv.** Tools like uv and pip are excellent at dependency resolution and installation. PyBun adds an **agent-facing control layer**: structured output, MCP integration, sandboxed execution, and audit/provenance that AI systems can rely on without fragile text scraping or unverifiable side effects. Delegation is currently command-specific: `pybun x` and eligible PEP 723 script runs use uv when it is available, while ordinary dependency commands still use PyBun's native path.
|
|
94
94
|
|
|
95
95
|
The value PyBun adds isn't "faster pip." It's removing the ambiguity, non-determinism, and risk an agent faces when it operates a Python environment on its own.
|
|
96
96
|
|
|
@@ -110,7 +110,7 @@ The value PyBun adds isn't "faster pip." It's removing the ambiguity, non-determ
|
|
|
110
110
|
uv pytest Python
|
|
111
111
|
```
|
|
112
112
|
|
|
113
|
-
PyBun
|
|
113
|
+
PyBun is moving toward a thin, structured control layer on top of proven execution backends rather than expanding its reimplementation of the Python packaging/import ecosystem. The v0.2.0 target architecture broadens uv delegation; it does not describe every current command path. See [`docs/SPECS.md`](docs/SPECS.md#03-外部レビューによる方向性提言-2026-08-29) for the reasoning behind this scope decision.
|
|
114
114
|
|
|
115
115
|
### ✨ What PyBun adds that other tools don't
|
|
116
116
|
|
|
@@ -137,11 +137,24 @@ The AI receives structured JSON — no parsing required, no ambiguity.
|
|
|
137
137
|
|
|
138
138
|
## Status
|
|
139
139
|
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
140
|
+
Maturity is assigned per execution path rather than to an entire milestone:
|
|
141
|
+
|
|
142
|
+
| Surface | Maturity | Current execution path |
|
|
143
|
+
| --- | --- | --- |
|
|
144
|
+
| `pybun install` | **Preview** | PyBun's native resolver, downloader, and wheel installer. Path containment is hardened by [Issue #431](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/431), but this is not a claim of full Python packaging compatibility. |
|
|
145
|
+
| `pybun x` | **Stable for common cases** | Creates a temporary environment and uses `uv pip install` when uv is available; otherwise it falls back to pip. |
|
|
146
|
+
| `pybun run` | **Stable for common cases** | Runs ordinary scripts with Python. Eligible PEP 723 scripts use `uv run --script` automatically when uv is available. Other PEP 723 paths are orchestrated by PyBun and may still use `uv pip install` for dependencies. |
|
|
147
|
+
| `pybun test` | **Stable for common cases** | The default backend wraps pytest/unittest. `--backend=pybun` is **Preview** and reports `W_TEST_BACKEND_COMPAT_*` diagnostics for known plugin/fixture gaps. |
|
|
148
|
+
| `pybun watch` | **Preview** | Native monitoring on macOS/Linux, with polling fallback on standard builds. |
|
|
149
|
+
| `pybun module-find` | **Experimental** | Standalone Rust Module Finder; it is not wired into CPython's runtime import path ([Issue #403](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/403)). |
|
|
150
|
+
| Windows support | **Preview** | CI compile coverage and selected cross-platform behavior; continue to validate command-specific behavior. |
|
|
151
|
+
|
|
152
|
+
`pybun install`, `pybun lock`, and `pybun upgrade` use PyBun's native dependency path today; installing uv does not switch those commands to an uv backend. Broader dependency-operation delegation is a v0.2.0 target.
|
|
153
|
+
|
|
154
|
+
PyBun-managed PEP 723 environments may still use `uv pip install` for dependency installation when uv is available, including sandboxed, no-cache, and PyBun-lockfile paths. Without uv, those paths fall back to native resolution/installation or pip depending on the environment mode. This is separate from direct `uv run --script` delegation.
|
|
155
|
+
|
|
156
|
+
The native installer's `.data/{purelib,platlib,scripts,headers,data}` routing is implemented and tested by the work that closed [Issue #402](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/402). That tested subset includes relocation, script permissions/shebang handling, and headers placement; it does not promise complete wheel compatibility such as console-entry-point generation, every platform scheme, source distributions, or arbitrary install hooks.
|
|
157
|
+
|
|
145
158
|
- **Platforms:** macOS/Linux (arm64/amd64), Windows (preview)
|
|
146
159
|
|
|
147
160
|
> PyBun's priority is the agent-facing control layer (JSON/MCP/diagnostics/sandbox/audit/drift), not re-implementing Python packaging/import internals. See [`docs/SPECS.md`](docs/SPECS.md#03-外部レビューによる方向性提言-2026-08-29) for feature maturity, phased rollout policy, and the current scope decisions.
|
|
@@ -232,12 +245,12 @@ PEP 723 inline metadata is also supported:
|
|
|
232
245
|
# ///
|
|
233
246
|
import requests
|
|
234
247
|
```
|
|
235
|
-
※ Metadata parsing
|
|
248
|
+
※ Metadata parsing and isolated-environment execution are supported. Direct `uv run --script` is Stable for common cases; PyBun-managed fallback paths inherit the native installer's Preview limitations. Environments are cached per script/dependency/Python-version key; see `docs/PLAN.md` for details.
|
|
236
249
|
|
|
237
250
|
### Ad-hoc Execution (`pybun x`)
|
|
238
251
|
|
|
239
252
|
Install a package in a temporary environment and execute it (Python version of `npx`).
|
|
240
|
-
If `uv` is available,
|
|
253
|
+
The environment is created with `python -m venv`. If `uv` is available, PyBun uses `uv pip install` for package installation; otherwise it uses pip.
|
|
241
254
|
|
|
242
255
|
```bash
|
|
243
256
|
# Temporarily install and run cowsay
|
|
@@ -619,9 +632,9 @@ cargo test mcp
|
|
|
619
632
|
|
|
620
633
|
## Benchmarks
|
|
621
634
|
|
|
622
|
-
PyBun is not a speed competitor to uv — it
|
|
635
|
+
PyBun is not a speed competitor to uv — it is an interface layer. Current uv delegation is limited to command paths such as `pybun x` package installation and eligible PEP 723 script runs. Ordinary `pybun install`, `pybun lock`, and `pybun upgrade` still use native dependency code; the v0.2.0 architecture aims to delegate more of that work.
|
|
623
636
|
|
|
624
|
-
The areas where PyBun intentionally differs from uv (JSON output, MCP, sandbox) are
|
|
637
|
+
The areas where PyBun intentionally differs from uv (JSON output, MCP, sandbox) are evaluated for structured correctness and safety first. Native resolver performance work and measurements are tracked in [Issue #239](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/239); they should not be read as a product goal to out-run uv.
|
|
625
638
|
|
|
626
639
|
Full numbers: [docs/BENCHMARK_UV_COMPARISON.md](docs/BENCHMARK_UV_COMPARISON.md)
|
|
627
640
|
|
|
@@ -630,7 +643,7 @@ Full numbers: [docs/BENCHMARK_UV_COMPARISON.md](docs/BENCHMARK_UV_COMPARISON.md)
|
|
|
630
643
|
## Roadmap
|
|
631
644
|
|
|
632
645
|
- [x] M0: Repository & CI scaffold
|
|
633
|
-
- [x] M1:
|
|
646
|
+
- [x] M1: Installer foundation (lockfile, native resolver, PEP 723); native install remains Preview while the v0.2.0 backend transition is pending
|
|
634
647
|
- [x] M2: Runtime optimization (module finder, lazy import, hot reload) — *opportunistic, ROI under evaluation; see [Issue #403](https://github.com/VOID-TECHNOLOGY-INC/PyBun/issues/403)*
|
|
635
648
|
- [x] M3: Test runner (discovery, parallel execution, snapshots)
|
|
636
649
|
- [x] M4: JSON/MCP & diagnostics
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|