mirror of
https://github.com/safedep/pmg.git
synced 2026-08-03 07:24:09 +02:00
* initial pypi registry implementation * support proxy mode for pypi package managers * support proxy mode for pypi package managers - 2 * rm default mode as proxy for pip3 * update goproxy version & fix pypi proxy failing on 304 * add PIP_RETRIES=0 env * update pmg e2e & add proxy mode e2e for pypi * rm safedep-test-pkg for pypi proxy e2e
37 lines
1009 B
Markdown
37 lines
1009 B
Markdown
# Proxy Mode
|
|
|
|
PMG supports proxy based interception as an alternative to the current optimistic dependency resolution. When enabled via `--proxy-mode` flag:
|
|
|
|
- PMG starts a micro-proxy server on a random localhost port
|
|
- Runs `npm` and other supported package managers configured to use the proxy
|
|
- Intercepts package registry requests and analyzes packages as they are downloaded
|
|
- Blocks malicious packages and allows trusted packages to be installed
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
pmg --proxy-mode npm install lodash
|
|
```
|
|
|
|
## Configuration
|
|
|
|
To permanently enable proxy mode, add the following to your `config.yml` file:
|
|
|
|
```yaml
|
|
proxy_mode: true
|
|
```
|
|
|
|
## Supported Package Managers
|
|
|
|
| Package Manager | Status |
|
|
| --------------- | ------ |
|
|
| `npm` | ✅ |
|
|
| `npx` | ✅ |
|
|
| `pnpm` | ✅ |
|
|
| `pnpx` | ✅ |
|
|
| `bun` | ✅ |
|
|
| `yarn` | ✅ |
|
|
| `pip` | ✅ |
|
|
| `uv` | ✅ |
|
|
| `poetry` | ✅ |
|