A Rust-based command-line tool for managing Python packages in your active environment.
- Python Environment Aware
- Package Management
- Requirements File Support
- Parallel Installation - Install packages concurrently for faster performance
- Dependency Tracking
- Version Control
- Listing Support
- Progress Indicators
- Rust-Powered
- Rust 1.85.0+
- Cargo
- Python 3.6+
-
Clone the repository: git clone https://github.com/yourusername/python-package-manager.git cd python-package-manager
-
Build: cargo build --release
-
(Optional) Add to PATH: sudo cp target/release/python-package-manager /usr/local/bin/ppm
ppm install [package2...]
ppm install -p [package2...] ppm install --parallel [package2...]
ppm install -r=requirements.txt
ppm install -p -r=requirements.txt
ppm update
ppm delete
ppm list
Install specific version: ppm install requests==2.28.1
Install multiple (sequential): ppm install numpy pandas matplotlib
Install multiple (parallel): ppm install -p numpy pandas matplotlib
From requirements file: ppm install -r=requirements.txt
From requirements file (parallel): ppm install -p -r=requirements.txt
Update package: ppm update numpy 1.24.0
Remove package: ppm delete requests
The parallel installation feature provides significant performance improvements:
- Concurrent Downloads: Multiple packages download simultaneously
- Progress Tracking: Visual progress bar with real-time updates
- Individual Error Handling: Failed packages don't block successful installations
- Resource Optimization: Better utilization of network and system resources
Sequential Installation:
Package 1 → Package 2 → Package 3 → Package 4
Total time: ~30 seconds for 4 packages
Parallel Installation:
Package 1 ↓
Package 2 ↓ (concurrent)
Package 3 ↓
Package 4 ↓
Total time: ~8 seconds for 4 packages
Build: cargo build
Test: cargo test
MIT - See LICENSE
- Linux
- macOS
- Windows (WSL recommended)