Skip to content

Commit 8af0aad

Browse files
committed
docs: update README with reachability parameters and remove java requirement
- Add comprehensive reachability analysis parameters section to README - Document all --reach-* CLI flags with descriptions and defaults - List required dependencies (npm, npx, uv) excluding java - Remove java from required dependencies check in socketcli.py - Update usage synopsis to include reachability flags
1 parent 3b59cce commit 8af0aad

File tree

4 files changed

+30
-4
lines changed

4 files changed

+30
-4
lines changed

README.md

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,11 @@ socketcli [-h] [--api-token API_TOKEN] [--repo REPO] [--repo-is-public] [--branc
9494
[--save-manifest-tar SAVE_MANIFEST_TAR] [--files FILES] [--sub-path SUB_PATH] [--workspace-name WORKSPACE_NAME]
9595
[--excluded-ecosystems EXCLUDED_ECOSYSTEMS] [--default-branch] [--pending-head] [--generate-license] [--enable-debug]
9696
[--enable-json] [--enable-sarif] [--disable-overview] [--exclude-license-details] [--allow-unverified] [--disable-security-issue]
97-
[--ignore-commit-files] [--disable-blocking] [--enable-diff] [--scm SCM] [--timeout TIMEOUT] [--include-module-folders] [--version]
97+
[--ignore-commit-files] [--disable-blocking] [--enable-diff] [--scm SCM] [--timeout TIMEOUT] [--include-module-folders]
98+
[--reach] [--reach-version REACH_VERSION] [--reach-analysis-timeout REACH_ANALYSIS_TIMEOUT]
99+
[--reach-analysis-memory-limit REACH_ANALYSIS_MEMORY_LIMIT] [--reach-ecosystems REACH_ECOSYSTEMS] [--reach-exclude-paths REACH_EXCLUDE_PATHS]
100+
[--reach-min-severity {low,medium,high,critical}] [--reach-skip-cache] [--reach-disable-analytics] [--reach-output-file REACH_OUTPUT_FILE]
101+
[--only-facts-file] [--version]
98102
````
99103

100104
If you don't want to provide the Socket API Token every time then you can use the environment variable `SOCKET_SECURITY_API_KEY`
@@ -160,6 +164,28 @@ If you don't want to provide the Socket API Token every time then you can use th
160164
| --allow-unverified | False | False | Allow unverified packages |
161165
| --disable-security-issue | False | False | Disable security issue checks |
162166
167+
#### Reachability Analysis
168+
| Parameter | Required | Default | Description |
169+
|:---------------------------------|:---------|:--------|:---------------------------------------------------------------------------------------------------------------------------|
170+
| --reach | False | False | Enable reachability analysis to identify which vulnerable functions are actually called by your code |
171+
| --reach-version | False | latest | Version of @coana-tech/cli to use for analysis |
172+
| --reach-analysis-timeout | False | 1200 | Timeout in seconds for the reachability analysis (default: 1200 seconds / 20 minutes) |
173+
| --reach-analysis-memory-limit | False | 4096 | Memory limit in MB for the reachability analysis (default: 4096 MB / 4 GB) |
174+
| --reach-ecosystems | False | | Comma-separated list of ecosystems to analyze (e.g., "npm,pypi"). If not specified, all supported ecosystems are analyzed |
175+
| --reach-exclude-paths | False | | Comma-separated list of file paths or patterns to exclude from reachability analysis |
176+
| --reach-min-severity | False | | Minimum severity level for reporting reachability results (low, medium, high, critical) |
177+
| --reach-skip-cache | False | False | Skip cache and force fresh reachability analysis |
178+
| --reach-disable-analytics | False | False | Disable analytics collection during reachability analysis |
179+
| --reach-output-file | False | .socket.facts.json | Path where reachability analysis results should be saved |
180+
| --only-facts-file | False | False | Submit only the .socket.facts.json file to an existing scan (requires --reach and a prior scan) |
181+
182+
**Reachability Analysis Requirements:**
183+
- `npm` - Required to install and run @coana-tech/cli
184+
- `npx` - Required to execute @coana-tech/cli
185+
- `uv` - Required for Python environment management
186+
187+
The CLI will automatically install @coana-tech/cli if not present. Use `--reach` to enable reachability analysis during a full scan, or use `--only-facts-file` with `--reach` to submit reachability results to an existing scan.
188+
163189
#### Advanced Configuration
164190
| Parameter | Required | Default | Description |
165191
|:-------------------------|:---------|:--------|:----------------------------------------------------------------------|

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ build-backend = "hatchling.build"
66

77
[project]
88
name = "socketsecurity"
9-
version = "2.2.16"
9+
version = "2.2.17"
1010
requires-python = ">= 3.10"
1111
license = {"file" = "LICENSE"}
1212
dependencies = [

socketsecurity/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
__author__ = 'socket.dev'
2-
__version__ = '2.2.16'
2+
__version__ = '2.2.17'
33
USER_AGENT = f'SocketPythonCLI/{__version__}'

socketsecurity/socketcli.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ def main_code():
8080
# Check for required dependencies if reachability analysis is enabled
8181
if config.reach:
8282
log.info("Reachability analysis enabled, checking for required dependencies...")
83-
required_deps = ["java", "npm", "uv", "npx"]
83+
required_deps = ["npm", "uv", "npx"]
8484
missing_deps = []
8585
found_deps = []
8686

0 commit comments

Comments
 (0)