pysentry-rs 0.3.1__cp312-cp312-macosx_11_0_arm64.whl → 0.3.3__cp312-cp312-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.
Potentially problematic release.
This version of pysentry-rs might be problematic. Click here for more details.
- pysentry/_internal.cpython-312-darwin.so +0 -0
- {pysentry_rs-0.3.1.dist-info → pysentry_rs-0.3.3.dist-info}/METADATA +96 -20
- pysentry_rs-0.3.3.dist-info/RECORD +7 -0
- pysentry_rs-0.3.1.dist-info/RECORD +0 -7
- {pysentry_rs-0.3.1.dist-info → pysentry_rs-0.3.3.dist-info}/WHEEL +0 -0
- {pysentry_rs-0.3.1.dist-info → pysentry_rs-0.3.3.dist-info}/entry_points.txt +0 -0
- {pysentry_rs-0.3.1.dist-info → pysentry_rs-0.3.3.dist-info}/licenses/LICENSE +0 -0
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pysentry-rs
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.3
|
|
4
4
|
Classifier: Development Status :: 4 - Beta
|
|
5
5
|
Classifier: Intended Audience :: Developers
|
|
6
6
|
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
|
|
@@ -287,29 +287,105 @@ pysentry --clear-resolution-cache --sources pypa,osv --format sarif
|
|
|
287
287
|
pysentry --no-resolution-cache --format json --output security-report.json
|
|
288
288
|
```
|
|
289
289
|
|
|
290
|
+
## Pre-commit Integration
|
|
291
|
+
|
|
292
|
+
PySentry integrates seamlessly with [pre-commit](https://pre-commit.com/) to automatically scan for vulnerabilities before commits.
|
|
293
|
+
|
|
294
|
+
### Setup
|
|
295
|
+
|
|
296
|
+
Add PySentry to your `.pre-commit-config.yaml`:
|
|
297
|
+
|
|
298
|
+
```yaml
|
|
299
|
+
repos:
|
|
300
|
+
- repo: https://github.com/nyudenkov/pysentry
|
|
301
|
+
hooks:
|
|
302
|
+
- id: pysentry # default pysentry settings
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
### Advanced Configuration
|
|
306
|
+
|
|
307
|
+
```yaml
|
|
308
|
+
repos:
|
|
309
|
+
- repo: https://github.com/nyudenkov/pysentry
|
|
310
|
+
hooks:
|
|
311
|
+
- id: pysentry
|
|
312
|
+
args: ["--sources", "pypa,osv", "--fail-on", "high"]
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
### Installation Requirements
|
|
316
|
+
|
|
317
|
+
Pre-commit will automatically install PySentry, uv and pip-tools via PyPI.
|
|
318
|
+
|
|
290
319
|
## Configuration
|
|
291
320
|
|
|
321
|
+
PySentry supports TOML-based configuration files for persistent settings management. Configuration files follow a hierarchical discovery pattern:
|
|
322
|
+
|
|
323
|
+
1. **Project-level**: `.pysentry.toml` in current or parent directories
|
|
324
|
+
2. **User-level**: `~/.config/pysentry/config.toml` (Linux/macOS)
|
|
325
|
+
3. **System-level**: `/etc/pysentry/config.toml` (Unix systems)
|
|
326
|
+
|
|
327
|
+
### Configuration File Example
|
|
328
|
+
|
|
329
|
+
```toml
|
|
330
|
+
version = 1
|
|
331
|
+
|
|
332
|
+
[defaults]
|
|
333
|
+
format = "json"
|
|
334
|
+
severity = "medium"
|
|
335
|
+
fail_on = "high"
|
|
336
|
+
scope = "all"
|
|
337
|
+
direct_only = false
|
|
338
|
+
|
|
339
|
+
[sources]
|
|
340
|
+
enabled = ["pypa", "osv"]
|
|
341
|
+
|
|
342
|
+
[resolver]
|
|
343
|
+
type = "uv"
|
|
344
|
+
fallback = "pip-tools"
|
|
345
|
+
|
|
346
|
+
[cache]
|
|
347
|
+
enabled = true
|
|
348
|
+
resolution_ttl = 48
|
|
349
|
+
vulnerability_ttl = 72
|
|
350
|
+
|
|
351
|
+
[output]
|
|
352
|
+
quiet = false
|
|
353
|
+
verbose = false
|
|
354
|
+
color = "auto"
|
|
355
|
+
|
|
356
|
+
[ignore]
|
|
357
|
+
ids = ["CVE-2023-12345", "GHSA-xxxx-yyyy-zzzz"]
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
### Environment Variables
|
|
361
|
+
|
|
362
|
+
| Variable | Description | Example |
|
|
363
|
+
| -------------------- | ------------------------------- | -------------------------------------- |
|
|
364
|
+
| `PYSENTRY_CONFIG` | Override config file path | `PYSENTRY_CONFIG=/path/to/config.toml` |
|
|
365
|
+
| `PYSENTRY_NO_CONFIG` | Disable all config file loading | `PYSENTRY_NO_CONFIG=1` |
|
|
366
|
+
|
|
292
367
|
### Command Line Options
|
|
293
368
|
|
|
294
|
-
| Option | Description
|
|
295
|
-
| -------------------------- |
|
|
296
|
-
| `--format` | Output format: `human`, `json`, `sarif`, `markdown`
|
|
297
|
-
| `--severity` | Minimum severity: `low`, `medium`, `high`, `critical`
|
|
298
|
-
| `--fail-on` | Fail (exit non-zero) on vulnerabilities ≥ severity
|
|
299
|
-
| `--sources` | Vulnerability sources: `pypa`, `pypi`, `osv` (multiple)
|
|
300
|
-
| `--all-extras` | Include all dependencies (main + dev + optional)
|
|
301
|
-
| `--direct-only` | Check only direct dependencies
|
|
302
|
-
| `--
|
|
303
|
-
| `--
|
|
304
|
-
| `--
|
|
305
|
-
| `--cache
|
|
306
|
-
| `--
|
|
307
|
-
| `--
|
|
308
|
-
| `--
|
|
309
|
-
| `--
|
|
310
|
-
| `--
|
|
311
|
-
| `--
|
|
312
|
-
| `--
|
|
369
|
+
| Option | Description | Default |
|
|
370
|
+
| -------------------------- | --------------------------------------------------------- | ----------------- |
|
|
371
|
+
| `--format` | Output format: `human`, `json`, `sarif`, `markdown` | `human` |
|
|
372
|
+
| `--severity` | Minimum severity: `low`, `medium`, `high`, `critical` | `low` |
|
|
373
|
+
| `--fail-on` | Fail (exit non-zero) on vulnerabilities ≥ severity | `medium` |
|
|
374
|
+
| `--sources` | Vulnerability sources: `pypa`, `pypi`, `osv` (multiple) | `pypa` |
|
|
375
|
+
| `--all-extras` | Include all dependencies (main + dev + optional) | `false` |
|
|
376
|
+
| `--direct-only` | Check only direct dependencies | `false` |
|
|
377
|
+
| `--detailed` | Show full vulnerability descriptions instead of truncated | `false` |
|
|
378
|
+
| `--ignore` | Vulnerability IDs to ignore (repeatable) | `[]` |
|
|
379
|
+
| `--output` | Output file path | `stdout` |
|
|
380
|
+
| `--no-cache` | Disable all caching | `false` |
|
|
381
|
+
| `--cache-dir` | Custom cache directory | Platform-specific |
|
|
382
|
+
| `--resolution-cache-ttl` | Resolution cache TTL in hours | `24` |
|
|
383
|
+
| `--no-resolution-cache` | Disable resolution caching only | `false` |
|
|
384
|
+
| `--clear-resolution-cache` | Clear resolution cache on startup | `false` |
|
|
385
|
+
| `--verbose` | Enable verbose output | `false` |
|
|
386
|
+
| `--quiet` | Suppress non-error output | `false` |
|
|
387
|
+
| `--resolver` | Dependency resolver: `auto`, `uv`, `pip-tools` | `auto` |
|
|
388
|
+
| `--requirements` | Additional requirements files (repeatable) | `[]` |
|
|
313
389
|
|
|
314
390
|
### Cache Management
|
|
315
391
|
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
pysentry/__init__.py,sha256=uSo2bKZNbcRd1bEXOzF3MuxrEapECowrIHG0t_DERa8,611
|
|
2
|
+
pysentry/_internal.cpython-312-darwin.so,sha256=DuBtJ155mfdae2fUSi_TLJtv_YmCwYzbqIWlWOVL2Og,10304192
|
|
3
|
+
pysentry_rs-0.3.3.dist-info/METADATA,sha256=psCJ9lk8JTLBA2FEgb4ISi5awjFc9xkdb_0KNwuXTjI,25394
|
|
4
|
+
pysentry_rs-0.3.3.dist-info/WHEEL,sha256=EhaWXx4fd8VOPM6W-6pxsePGk73OLk2gBi7fwS90pc8,104
|
|
5
|
+
pysentry_rs-0.3.3.dist-info/entry_points.txt,sha256=3bJguekVEbXTn-ceDCWJaSIZScquPPP1Ux9TPVHHanE,44
|
|
6
|
+
pysentry_rs-0.3.3.dist-info/licenses/LICENSE,sha256=TAMtDCoJuavXz7pCEklrzjH55sdvsy5gKsXY9NsImwY,34878
|
|
7
|
+
pysentry_rs-0.3.3.dist-info/RECORD,,
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
pysentry/__init__.py,sha256=uSo2bKZNbcRd1bEXOzF3MuxrEapECowrIHG0t_DERa8,611
|
|
2
|
-
pysentry/_internal.cpython-312-darwin.so,sha256=1DxKZKhi3G9dgYsDklXul0OrZSN56_ym1KOJAZvjj5I,9934688
|
|
3
|
-
pysentry_rs-0.3.1.dist-info/METADATA,sha256=TUKe6UqV-o2p10bMIL9EellI6KN-gb2K6ma8N38OFK0,23403
|
|
4
|
-
pysentry_rs-0.3.1.dist-info/WHEEL,sha256=EhaWXx4fd8VOPM6W-6pxsePGk73OLk2gBi7fwS90pc8,104
|
|
5
|
-
pysentry_rs-0.3.1.dist-info/entry_points.txt,sha256=3bJguekVEbXTn-ceDCWJaSIZScquPPP1Ux9TPVHHanE,44
|
|
6
|
-
pysentry_rs-0.3.1.dist-info/licenses/LICENSE,sha256=TAMtDCoJuavXz7pCEklrzjH55sdvsy5gKsXY9NsImwY,34878
|
|
7
|
-
pysentry_rs-0.3.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|