Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/ParzivalHack/PySpector
/ functions
Functions
455 in github.com/ParzivalHack/PySpector
⨍
Functions
455
◇
Types & classes
111
↳
Endpoints
3
↓ 1 callers
Method
_l1_get
(self, key: str)
src/pyspector/ast_cache.py:326
↓ 1 callers
Method
_launch_monitor
(self)
src/pyspector/stats.py:181
↓ 1 callers
Method
_load_baseline_data
Load baseline data without touching any UI elements.
src/pyspector/triage.py:37
↓ 1 callers
Function
_schedule
(file_path: str)
src/pyspector/cli.py:1088
↓ 1 callers
Function
_sep_top
First horizontal split: introduces the two-column layout.
src/pyspector/stats.py:18
↓ 1 callers
Function
_top
()
src/pyspector/stats.py:15
↓ 1 callers
Function
_wrap
(code: str)
tests/unit/test_ai_rules.py:23
↓ 1 callers
Function
_wrap
(code: str)
tests/unit/test_missing_rules.py:16
↓ 1 callers
Function
_wrap
(code)
tests/unit/test_a_sink_rules.py:8
↓ 1 callers
Function
_wrap
(code: str)
tests/unit/test_group_a_rules.py:20
↓ 1 callers
Function
_wrap_in_function
Wrap code in a function so the taint engine's CFG builder processes it.
tests/unit/test_taint_engine_extension.py:18
↓ 1 callers
Function
analyze_program_for_taint
Main entry point for inter-procedural taint analysis
src/pyspector/_rust_core/src/analysis/taint_analysis.rs:141
↓ 1 callers
Function
build_call_graph
Builds a call graph from all parsed Python files.
src/pyspector/_rust_core/src/graph/call_graph_builder.rs:60
↓ 1 callers
Function
build_from_statements
A recursive function to build the CFG from a list of statements
src/pyspector/_rust_core/src/graph/cfg_builder.rs:17
↓ 1 callers
Function
check_node_match
(node: &AstNode, match_pattern: &str)
src/pyspector/_rust_core/src/analysis/ast_analysis.rs:61
↓ 1 callers
Function
compile_exclusions
(exclusions: &[String])
src/pyspector/_rust_core/src/analysis/mod.rs:170
↓ 1 callers
Function
compute_cvss_base_score
(vector: &str)
src/pyspector/_rust_core/src/supply_chain.rs:514
↓ 1 callers
Function
extract_function_params
(func_node: &AstNode)
src/pyspector/_rust_core/src/analysis/taint_analysis.rs:1635
↓ 1 callers
Function
find_call_sites
(node: &'a AstNode, sites: &mut Vec<&'a AstNode>)
src/pyspector/_rust_core/src/graph/call_graph_builder.rs:151
↓ 1 callers
Function
find_dependency_files
(root: &str)
src/pyspector/_rust_core/src/supply_chain.rs:200
↓ 1 callers
Function
find_functions
(node: &'a AstNode, functions: &mut Vec<&'a AstNode>)
src/pyspector/_rust_core/src/graph/call_graph_builder.rs:140
↓ 1 callers
Function
fires
(code, rule_id)
tests/unit/test_a_sink_rules.py:31
↓ 1 callers
Function
get_full_call_name
(call_node: &AstNode)
src/pyspector/_rust_core/src/graph/call_graph_builder.rs:171
↓ 1 callers
Function
get_startup_note
Fetches a tech joke or returns a fallback if offline.
src/pyspector/cli.py:35
↓ 1 callers
Function
get_subscript_base_names
Returns all Name identifiers in the base (non-slice) part of a Subscript. For `tainted_dict['key']` returns ["tainted_dict"].
src/pyspector/_rust_core/src/analysis/taint_analysis.rs:1627
↓ 1 callers
Function
get_subscript_container
Returns a dotted string representing the container of a Subscript node. For `request.GET['key']` returns "request.GET".
src/pyspector/_rust_core/src/analysis/taint_analysis.rs:1591
↓ 1 callers
Method
invalidate
Remove all cached data for a single file.
src/pyspector/ast_cache.py:287
↓ 1 callers
Function
is_in_comment_or_string
(line: &str)
src/pyspector/_rust_core/src/analysis/config_analysis.rs:66
↓ 1 callers
Method
is_sql_injectable
True if this origin should still trigger SQL sinks. ShellSanitized is still SQL-injectable (shlex.quote doesn't sanitize SQL).
src/pyspector/_rust_core/src/analysis/taint_analysis.rs:78
↓ 1 callers
Function
is_test_file
Returns true if a file path should be excluded from taint analysis. Excluded: test files, documentation code, and example code. These files are exclu
src/pyspector/_rust_core/src/graph/call_graph_builder.rs:24
↓ 1 callers
Function
node_has_property
(node: &AstNode, path: &[&str], expected_value: &str)
src/pyspector/_rust_core/src/analysis/ast_analysis.rs:86
↓ 1 callers
Function
parse_cargo_toml
(filepath: &str)
src/pyspector/_rust_core/src/supply_chain.rs:402
↓ 1 callers
Function
parse_dependency_file
(filepath: &str)
src/pyspector/_rust_core/src/supply_chain.rs:222
↓ 1 callers
Function
parse_pipfile
(filepath: &str)
src/pyspector/_rust_core/src/supply_chain.rs:366
↓ 1 callers
Function
parse_pyproject_toml
(filepath: &str)
src/pyspector/_rust_core/src/supply_chain.rs:288
↓ 1 callers
Function
parse_requirements_txt
(filepath: &str)
src/pyspector/_rust_core/src/supply_chain.rs:238
↓ 1 callers
Function
query_osv
Kept this for reference, but we use raw_query_osv
src/pyspector/_rust_core/src/supply_chain.rs:442
↓ 1 callers
Method
record_files
Record file-level metrics after AST generation.
src/pyspector/stats.py:100
↓ 1 callers
Method
record_final_issues
Record the issues that survive all filters.
src/pyspector/stats.py:153
↓ 1 callers
Method
record_raw_issues
(self, raw_issues: List[Any])
src/pyspector/stats.py:142
↓ 1 callers
Method
record_rules
(self, rules_toml_str: str)
src/pyspector/stats.py:115
↓ 1 callers
Method
render_table
(self)
src/pyspector/stats.py:207
↓ 1 callers
Function
run
(code, filename="app.py")
tests/unit/test_semantic_provenance.py:10
↓ 1 callers
Function
run
(code, filename="app.py")
tests/unit/test_a_sink_rules.py:13
↓ 1 callers
Function
run_analysis
(mut context: AnalysisContext)
src/pyspector/_rust_core/src/analysis/mod.rs:33
↓ 1 callers
Function
run_pyspector
(code: str, *, filename: str = "app.py")
tests/unit/test_taint_engine_extension.py:24
↓ 1 callers
Function
run_pyspector
(code: str, filename: str = "app.py")
tests/unit/test_missing_rules.py:21
↓ 1 callers
Function
run_pyspector
(code: str, filename: str = "app.py")
tests/unit/test_group_a_rules.py:25
↓ 1 callers
Function
run_pyspector_ai
(code: str, filename: str = "model_loader.py")
tests/unit/test_ai_rules.py:81
↓ 1 callers
Function
run_triage_tui
Initializes and runs the Textual Triage App.
src/pyspector/triage.py:217
↓ 1 callers
Function
run_wizard
()
src/pyspector/cli.py:437
↓ 1 callers
Method
save_and_quit
Save the baseline and exit.
src/pyspector/triage.py:195
↓ 1 callers
Function
scan_ast
Main entry point for AST scanning
src/pyspector/_rust_core/src/analysis/ast_analysis.rs:6
↓ 1 callers
Function
scan_dependencies
Public API
src/pyspector/_rust_core/src/supply_chain.rs:11
↓ 1 callers
Function
scan_file
(file_path: &str, content: &str, ruleset: &RuleSet)
src/pyspector/_rust_core/src/analysis/config_analysis.rs:4
↓ 1 callers
Function
should_skip_file
Determine if a file should be skipped during AST parsing.
src/pyspector/cli.py:137
↓ 1 callers
Method
toggle_ignore
Toggle ignore status for the current issue.
src/pyspector/triage.py:140
↓ 1 callers
Function
walk_ast
Recursively walks the AST, checking each node against pre-filtered rules. Rules are already filtered for this file — no exclusion checks needed here.
src/pyspector/_rust_core/src/analysis/ast_analysis.rs:25
Method
__init__
(self, issues: List[Dict[str, Any]], baseline_path: Path)
src/pyspector/triage.py:22
Method
__init__
( self, cache_dir: Optional[Path] = None, max_l1_entries: int = MAX_L1_ENTRIES, )
src/pyspector/ast_cache.py:254
Method
__init__
(self, issues: list, report_format: str)
src/pyspector/reporting.py:70
Method
__init__
(self)
src/pyspector/stats.py:47
Method
_chunk_hashes
(source: str)
src/pyspector/ast_cache.py:303
Function
_do_rescan
()
src/pyspector/cli.py:1033
Method
_monitor
()
src/pyspector/stats.py:188
Function
_rust_core
(m: &Bound<'_, PyModule>)
src/pyspector/_rust_core/src/lib.rs:106
Function
cli
PySpector: A high-performance, security-focused static analysis tool for Python, powered by Rust.
src/pyspector/cli.py:397
Method
compose
(self)
src/pyspector/triage.py:50
Method
default
(self, node: Any)
src/pyspector/_ast_encode.py:17
Function
default_confidence
()
src/pyspector/_rust_core/src/rules.rs:109
Function
default_triggers_on
()
src/pyspector/_rust_core/src/rules.rs:154
Method
elapsed
(self)
src/pyspector/stats.py:166
Function
example
()
tests/examples/hardcoded_anthropic_key.py:3
Method
from_transforms_to
Convert a sanitizer's transforms_to string to a TaintOrigin.
src/pyspector/_rust_core/src/analysis/taint_analysis.rs:83
Method
is_file_excluded
Returns true if the file should be excluded based on path patterns OR file content (file_content_exclude checked against the full file text).
src/pyspector/_rust_core/src/rules.rs:72
Method
loc_per_sec
(self)
src/pyspector/stats.py:172
Function
main
()
src/main.rs:154
Method
new
(file_path: String, content: String, ast_json: String)
src/pyspector/_rust_core/src/ast_parser.rs:23
Method
new
( rule_id: String, description: String, file_path: String, line_number: usize,
src/pyspector/_rust_core/src/issues.rs:44
Method
new
()
src/pyspector/_rust_core/src/analysis/taint_analysis.rs:132
Method
new
(id: BlockId)
src/pyspector/_rust_core/src/graph/representation.rs:21
Method
on_created
(self, event)
src/pyspector/cli.py:1109
Method
on_deleted
(self, event)
src/pyspector/cli.py:1110
Method
on_key
Handle key presses directly.
src/pyspector/triage.py:76
Method
on_modified
(self, event)
src/pyspector/cli.py:1108
Method
on_mount
Called after all widgets are mounted and ready.
src/pyspector/triage.py:60
Method
on_moved
(self, event)
src/pyspector/cli.py:1111
Function
run_scan_command
The main scan command with stats support.
src/pyspector/cli.py:545
Function
run_scan_py
( py: Python<'py>, path: String, rules_toml_str: String, config: &Bound<'py, PyDict>, pyth
src/pyspector/_rust_core/src/lib.rs:19
Function
scan
(req: web::Json<ScanRequest>)
src/main.rs:19
Function
scan_supply_chain_py
( py: Python<'py>, project_path: String, )
src/pyspector/_rust_core/src/lib.rs:80
Method
setUp
(self)
tests/unit/test_get_asts.py:12
Method
setUp
(self)
tests/unit/ast_cache_test.py:213
Method
tearDown
(self)
tests/unit/test_get_asts.py:39
Method
tearDown
(self)
tests/unit/ast_cache_test.py:217
Method
test_admin795_class_declaration_not_flagged
'class AdminPasswordChangeForm' is a Python class declaration. Python syntax: class keyword → DeveloperDefined name context.
tests/unit/test_semantic_provenance.py:47
Method
test_admin795_fires_on_actual_inline_credential
Lowercase variable with password=password pattern still fires.
tests/unit/test_semantic_provenance.py:57
Method
test_admin795_not_flagged_in_tests
admin/password in test files should not trigger ADMIN795.
tests/unit/test_false_positive_reductions.py:205
Method
test_algorithms_none_fires
(self)
tests/unit/test_missing_rules.py:208
Method
test_app_debug_assignment_fires
(self)
tests/unit/test_missing_rules.py:262
← previous
next →
101–200 of 455, ranked by callers