rx-pro 0.1.10__cp38-abi3-macosx_11_0_arm64.whl
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.
- pro/__init__.py +48 -0
- pro/_pro.abi3.so +0 -0
- rx_pro-0.1.10.dist-info/METADATA +104 -0
- rx_pro-0.1.10.dist-info/RECORD +6 -0
- rx_pro-0.1.10.dist-info/WHEEL +4 -0
- rx_pro-0.1.10.dist-info/entry_points.txt +2 -0
pro/__init__.py
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Pro - A blazing-fast Python package manager written in Rust
|
|
3
|
+
|
|
4
|
+
This module provides Python bindings to the Pro package manager,
|
|
5
|
+
allowing you to use its fast Rust implementation directly from Python.
|
|
6
|
+
|
|
7
|
+
Example:
|
|
8
|
+
>>> from pro import resolve, sync, build, audit
|
|
9
|
+
>>>
|
|
10
|
+
>>> # Resolve dependencies
|
|
11
|
+
>>> packages = resolve(["requests>=2.28", "numpy"])
|
|
12
|
+
>>> for name, version, url in packages:
|
|
13
|
+
... print(f"{name}=={version}")
|
|
14
|
+
>>>
|
|
15
|
+
>>> # Sync project
|
|
16
|
+
>>> count = sync("./my-project")
|
|
17
|
+
>>> print(f"Installed {count} packages")
|
|
18
|
+
>>>
|
|
19
|
+
>>> # Build wheel
|
|
20
|
+
>>> result = build("./my-project")
|
|
21
|
+
>>> print(f"Built: {result['wheel']}")
|
|
22
|
+
>>>
|
|
23
|
+
>>> # Security audit
|
|
24
|
+
>>> vulns = audit("./my-project")
|
|
25
|
+
>>> for pkg, ver, cve, sev, desc in vulns:
|
|
26
|
+
... print(f"{pkg}=={ver}: {cve} ({sev})")
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
from pro._pro import resolve, sync, build, audit, version
|
|
30
|
+
|
|
31
|
+
__version__ = version()
|
|
32
|
+
__all__ = ["resolve", "sync", "build", "audit", "version", "__version__"]
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
def _cli_main():
|
|
36
|
+
"""CLI entry point - delegates to the Rust binary."""
|
|
37
|
+
import subprocess
|
|
38
|
+
import sys
|
|
39
|
+
import shutil
|
|
40
|
+
|
|
41
|
+
# Try to find the rx binary
|
|
42
|
+
rx_path = shutil.which("rx")
|
|
43
|
+
if rx_path:
|
|
44
|
+
sys.exit(subprocess.call([rx_path] + sys.argv[1:]))
|
|
45
|
+
else:
|
|
46
|
+
print("Error: rx binary not found. Please install Pro:", file=sys.stderr)
|
|
47
|
+
print(" pip install rx-pro", file=sys.stderr)
|
|
48
|
+
sys.exit(1)
|
pro/_pro.abi3.so
ADDED
|
Binary file
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: rx-pro
|
|
3
|
+
Version: 0.1.10
|
|
4
|
+
Classifier: Development Status :: 4 - Beta
|
|
5
|
+
Classifier: Environment :: Console
|
|
6
|
+
Classifier: Intended Audience :: Developers
|
|
7
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
8
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
9
|
+
Classifier: Operating System :: OS Independent
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
16
|
+
Classifier: Programming Language :: Rust
|
|
17
|
+
Classifier: Topic :: Software Development :: Build Tools
|
|
18
|
+
Classifier: Topic :: System :: Software Distribution
|
|
19
|
+
Summary: A blazing-fast Python package manager written in Rust
|
|
20
|
+
Keywords: package-manager,pip,poetry,rust,fast
|
|
21
|
+
Author: Shawn Therrien
|
|
22
|
+
License: MIT OR Apache-2.0
|
|
23
|
+
Requires-Python: >=3.8
|
|
24
|
+
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
25
|
+
Project-URL: Changelog, https://github.com/stherrien/pro/blob/main/CHANGELOG.md
|
|
26
|
+
Project-URL: Documentation, https://rxpro.net/
|
|
27
|
+
Project-URL: Homepage, https://github.com/stherrien/pro
|
|
28
|
+
Project-URL: Repository, https://github.com/stherrien/pro
|
|
29
|
+
|
|
30
|
+
# Pro Python Package
|
|
31
|
+
|
|
32
|
+
A blazing-fast Python package manager written in Rust.
|
|
33
|
+
|
|
34
|
+
## Installation
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
pip install rx-pro
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## CLI Usage
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
# Initialize a new project
|
|
44
|
+
rx init my-project
|
|
45
|
+
|
|
46
|
+
# Add dependencies
|
|
47
|
+
rx add requests numpy pandas
|
|
48
|
+
|
|
49
|
+
# Install dependencies
|
|
50
|
+
rx sync
|
|
51
|
+
|
|
52
|
+
# Run commands
|
|
53
|
+
rx run python main.py
|
|
54
|
+
|
|
55
|
+
# Build wheel
|
|
56
|
+
rx build
|
|
57
|
+
|
|
58
|
+
# Security audit
|
|
59
|
+
rx audit
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## Python API
|
|
63
|
+
|
|
64
|
+
```python
|
|
65
|
+
from pro import resolve, sync, build, audit
|
|
66
|
+
|
|
67
|
+
# Resolve dependencies
|
|
68
|
+
packages = resolve(["requests>=2.28", "numpy"])
|
|
69
|
+
for name, version, url in packages:
|
|
70
|
+
print(f"{name}=={version}")
|
|
71
|
+
|
|
72
|
+
# Sync project to venv
|
|
73
|
+
count = sync("./my-project")
|
|
74
|
+
print(f"Installed {count} packages")
|
|
75
|
+
|
|
76
|
+
# Build wheel and sdist
|
|
77
|
+
result = build("./my-project", "./dist")
|
|
78
|
+
print(f"Wheel: {result['wheel']}")
|
|
79
|
+
print(f"Sdist: {result['sdist']}")
|
|
80
|
+
|
|
81
|
+
# Security audit
|
|
82
|
+
vulnerabilities = audit("./my-project")
|
|
83
|
+
for pkg, ver, cve, severity, description in vulnerabilities:
|
|
84
|
+
print(f"{pkg}=={ver}: {cve} ({severity})")
|
|
85
|
+
print(f" {description}")
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Features
|
|
89
|
+
|
|
90
|
+
- **10-100x faster** than Poetry
|
|
91
|
+
- **Native Rust build backend** - no Python subprocess
|
|
92
|
+
- **WebAssembly plugins** for extensibility
|
|
93
|
+
- **Full monorepo support** with workspaces
|
|
94
|
+
- **Security audit** with OSV database
|
|
95
|
+
- **Docker integration** for deployment
|
|
96
|
+
|
|
97
|
+
## Documentation
|
|
98
|
+
|
|
99
|
+
See the [full documentation](https://rxpro.net/) for more details.
|
|
100
|
+
|
|
101
|
+
## License
|
|
102
|
+
|
|
103
|
+
Dual-licensed under MIT and Apache 2.0.
|
|
104
|
+
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
pro/__init__.py,sha256=6sI4gqdEVuAUC10_P6C3tKxVjGEKMGjQ2jqp4Ou7P3c,1438
|
|
2
|
+
pro/_pro.abi3.so,sha256=09Zc6Oh2fjpg_UlHnp6aSZ6ZfGqWztHEt1rgcbNgOnM,2741296
|
|
3
|
+
rx_pro-0.1.10.dist-info/METADATA,sha256=mOibXrx_mhIIY27B_vELNdMeWFLzLMJSNqnFHBKPkXk,2693
|
|
4
|
+
rx_pro-0.1.10.dist-info/WHEEL,sha256=82nIVBZDB2dcFlYZh5-bKZ63xGZXWMnioaoSK06flpU,103
|
|
5
|
+
rx_pro-0.1.10.dist-info/entry_points.txt,sha256=EsxDaPmXlwbMiI6QnJsg9JcGiczDZqnq3pkny4_ZfXc,35
|
|
6
|
+
rx_pro-0.1.10.dist-info/RECORD,,
|