RepoTrust

Leaderboard github.com

BVLC/caffe

Caffe: a fast open framework for deep learning.

  • View repository ↗
  • C++
  • ★ 34,555
  • commit 9b891540183d
  • scored 2026-11-14
  • scoring prov-5+qual-2+sec-2

AI provenance

0%

none-detected

Confidence
65%
Coverage
100%

Estimated share of AI-generated code. Explicit attribution is a lower bound.

Code quality

58/100

weak

Confidence
90%
Coverage
100%

Complexity, duplication, lint density, tests, CI, docs and review process.

Security

62/100

weak

Confidence
85%
Coverage
100%

Secrets, static analysis, vulnerable dependencies, CI and supply-chain posture.

AI provenance

0% none-detected

No AI attribution or AI-consistent velocity signals detected.

How the score is built

  • Explicitly attributed share0%
  • Unattributed share in AI-pace bursts0%
  • Estimated AI-generated share0%
  • AI tool configuration files0
  • Work sessions at AI pace0
  • Releases at AI pace0
  • Coding-style index (1.0+ means possible)0.16

Lines added per month all AI-attributed share

  1. 2013-0936,409 · 0% AI
  2. 2013-103,889 · 0% AI
  3. 2013-111,689 · 0% AI
  4. 2013-12825 · 0% AI
  5. 2014-01971 · 0% AI
  6. 2014-0214,322 · 0% AI
  7. 2014-039,481 · 0% AI
  8. 2014-044,462 · 0% AI
  9. 2014-052,855 · 0% AI
  10. 2014-064,803 · 0% AI
  11. 2014-077,564 · 0% AI
  12. 2014-087,064 · 0% AI
  13. 2014-098,076 · 0% AI
  14. 2014-106,626 · 0% AI
  15. 2014-111,579 · 0% AI
  16. 2014-121,368 · 0% AI
  17. 2015-014,449 · 0% AI
  18. 2015-023,679 · 0% AI
  19. 2015-032,363 · 0% AI
  20. 2015-04761 · 0% AI
  21. 2015-054,378 · 0% AI
  22. 2015-06319 · 0% AI
  23. 2015-072,032 · 0% AI
  24. 2015-081,681 · 0% AI
  25. 2015-092,124 · 0% AI
  26. 2015-10803 · 0% AI
  27. 2015-114,908 · 0% AI
  28. 2015-12768 · 0% AI
  29. 2016-012,849 · 0% AI
  30. 2016-02732 · 0% AI
  31. 2016-03624 · 0% AI
  32. 2016-041,056 · 0% AI
  33. 2016-05379 · 0% AI
  34. 2016-06544 · 0% AI
  35. 2016-0784 · 0% AI
  36. 2016-08107 · 0% AI
  37. 2016-0961 · 0% AI
  38. 2016-1016 · 0% AI
  39. 2016-11372 · 0% AI
  40. 2016-1245 · 0% AI
  41. 2017-01798 · 0% AI
  42. 2017-020 · 0% AI
  43. 2017-03150 · 0% AI
  44. 2017-0497 · 0% AI
  45. 2017-058 · 0% AI
  46. 2017-066 · 0% AI
  47. 2017-070 · 0% AI
  48. 2017-08217 · 0% AI
  49. 2017-09706 · 0% AI
  50. 2017-1098 · 0% AI
  51. 2017-111 · 0% AI
  52. 2017-1251 · 0% AI
  53. 2018-0121 · 0% AI
  54. 2018-0214 · 0% AI
  55. 2018-03773 · 0% AI
  56. 2018-0441 · 0% AI
  57. 2018-054 · 0% AI
  58. 2018-0717 · 0% AI
  59. 2018-081 · 0% AI
  60. 2019-030 · 0% AI
  61. 2019-121 · 0% AI

Evidence by analyzer

Explicit AI attributionok
attributed_commit_share
0.0%
attributed_commits
0
attributed_loc
0
attributed_loc_share
0.0%
commits
3,112
effective_loc
150,121
tools_detected
0
AI tool configurationok
artifacts
0
tools_configured
0
workflow_agents
0
Commit velocityok
excluded_import_loc
33,258
flagged_loc
0
flagged_loc_share
0.0%
flagged_units
0
max_loc_per_hour
951.64
measured_loc
116,863
median_loc_per_hour
60.34
pr_timed_units
6
pre_ai_era_burst_loc
7,554
pre_ai_era_bursts
3
pre_ai_era_measured_loc
116,863
work_units
1,457
Release velocityok
flagged_releases
0
max_loc_per_day
457.70
releases
13
Coding styleok7 items
count:assistant_voice
0
count:emoji_in_code
0
count:narrated_steps
6
count:placeholder
1
files:assistant_voice
0
files:emoji_in_code
0
files:narrated_steps
6
files:placeholder
1
index
0.16
lines_scanned
48,655
per_kloc:assistant_voice
0
per_kloc:emoji_in_code
0
per_kloc:narrated_steps
0.12
per_kloc:placeholder
0.02

Code quality

58 weak

Code quality is weak: test-to-source ratio 0.37, no CI test run detected; 17% of function code in complex or long functions; 16% duplicated lines. Weakest area: process.

How the score is built

  • Complexity60
  • Duplication39
  • Lint and smells84
  • Tests and CI60
  • Documentation80
  • Type safety40
  • Review process30

Evidence by analyzer

Complexity (lizard)ok10 items
complex_functions
41
function_nloc
27,834
functions
2,827
long_functions
17
many_param_functions
126
mean_ccn
2.48
p90_ccn
5
risky_nloc_share
17.2%
Duplication (jscpd)ok10 items
compared_lines
52,517
duplicated_lines
8,269
duplicated_share
15.8%
files
314
Lintok
category:best-practice
14
category:correctness
94
category:maintainability
6
findings
114
scanned_lines
67,266
weighted_findings
46.25
Tests and CIok1 item
  • CI config: .travis.yml .travis.yml
check:ci_present
yes
check:ci_runs_lint
no
check:ci_runs_tests
no
check:has_tests
yes
check:test_ratio
no
check:tests_cochange
no
ci_files
1
cochange_commits
154
cochange_share
15.6%
source_lines
68,192
test_lines
25,425
test_ratio
0.37
Documentationok3 items
  • README.md README.md
  • LICENSE LICENSE
  • CONTRIBUTING.md CONTRIBUTING.md
check:changelog
no
check:contributing
yes
check:license
yes
check:readme
yes
readme_lines
30
Type safetyok
check:low_escape_density
yes
check:strict_config
no
escapes
0
escapes_per_kloc
0

Security

62 weak

Security posture is weak: 105 known vulnerabilities in 7 dependencies; 1 high-severity SAST findings. Weakest area: posture.

How the score is built

  • Secrets100
  • Static analysis (SAST)99
  • Vulnerable dependencies29
  • CI workflowsnot measured
  • Security posture0
  • OpenSSF Scorecard20

Evidence by analyzer

OpenSSF Scorecardok10 items
aggregate
2.60
check:Binary-Artifacts
yes
check:Branch-Protection
no
check:CII-Best-Practices
no
check:Code-Review
yes
check:Fuzzing
no
check:License
yes
check:Maintained
no
check:Pinned-Dependencies
no
check:SAST
no
check:Security-Policy
no
Package registriesok
checked
17
declared
17
lookup_errors
0
missing
0
recent
0
Secrets (gitleaks)ok
secrets_current
0
secrets_history
0
secrets_low_confidence
0
secrets_nonprod
0
Static analysis (opengrep)ok
findings
4
findings_high
1
findings_low
0
findings_medium
3
parse_errors
1
scanned_lines
67,266
weighted_findings
1.85
Dependencies (osv-scanner)ok
penalty
74
vulnerabilities
105
vulnerable_packages
7
vulns_critical
19
vulns_high
56
vulns_low
0
vulns_medium
16
vulns_unknown
14
CI workflows (zizmor)skipped
Security postureok
check:dependency_updates
no
check:lockfiles
yes
check:security_policy
no
check:signed_commits
no
signed_commit_share
4.5%
unpinned_manifests
0
Release downloadsok
binary_assets
0
signals
0
suspicious
0

Findings

19 critical58 high53 medium93 low

SeverityRuleLocationMessageTool
critical osv/GHSA-332p-7hrc-92wf python/requirements.txt [email protected] (PyPI) is affected by GHSA-332p-7hrc-92wf Dependencies (osv-scanner)
critical osv/GHSA-3f63-hfp8-52jq python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-457, GHSA-3f63-hfp8-52jq Dependencies (osv-scanner)
critical osv/GHSA-43fq-w8qq-v88h python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2020-80, GHSA-43fq-w8qq-v88h Dependencies (osv-scanner)
critical osv/GHSA-57h3-9rgr-c24m python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-35, GHSA-57h3-9rgr-c24m Dependencies (osv-scanner)
critical osv/GHSA-5x8w-8jj5-q52h python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4330, GHSA-5x8w-8jj5-q52h Dependencies (osv-scanner)
critical osv/GHSA-7534-mm45-c74v python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-331, GHSA-7534-mm45-c74v Dependencies (osv-scanner)
critical osv/GHSA-8g5g-8vmr-9782 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4332, GHSA-8g5g-8vmr-9782 Dependencies (osv-scanner)
critical osv/GHSA-8m9x-pxwq-j236 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2014-87, GHSA-8m9x-pxwq-j236 Dependencies (osv-scanner)
critical osv/GHSA-8q59-q68h-6hv4 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-142, GHSA-8q59-q68h-6hv4 Dependencies (osv-scanner)
critical osv/GHSA-8vj2-vxx3-667w python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2022-10, GHSA-8vj2-vxx3-667w Dependencies (osv-scanner)
critical osv/GHSA-92mr-v722-f48m python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2015-25, GHSA-92mr-v722-f48m Dependencies (osv-scanner)
critical osv/GHSA-9fq2-x9r6-wfmf python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2019-108, GHSA-9fq2-x9r6-wfmf Dependencies (osv-scanner)
critical osv/GHSA-9j59-75qj-795w python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2022-168, GHSA-9j59-75qj-795w Dependencies (osv-scanner)
critical osv/GHSA-hvr8-466p-75rh python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2016-7, GHSA-hvr8-466p-75rh Dependencies (osv-scanner)
critical osv/GHSA-p49h-hjvm-jg3h python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2020-83, GHSA-p49h-hjvm-jg3h Dependencies (osv-scanner)
critical osv/GHSA-r7rm-8j6h-r933 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2020-82, GHSA-r7rm-8j6h-r933 Dependencies (osv-scanner)
critical osv/GHSA-rprw-h62v-c2w7 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2018-49, GHSA-rprw-h62v-c2w7 Dependencies (osv-scanner)
critical osv/GHSA-vcqg-3p29-xw73 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2020-81, GHSA-vcqg-3p29-xw73 Dependencies (osv-scanner)
critical osv/PYSEC-2026-4363 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4363 Dependencies (osv-scanner)
high opengrep/python.lang.best-practice.open-never-closed scripts/cpp_lint.py:4471 file object opened without corresponding close Lint
high osv/GHSA-27h8-gf7j-v5hc python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4326, GHSA-27h8-gf7j-v5hc Dependencies (osv-scanner)
high osv/GHSA-2fc2-6r4j-p65h python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2018-34, GHSA-2fc2-6r4j-p65h Dependencies (osv-scanner)
high osv/GHSA-3c5c-7235-994j python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2016-19, GHSA-3c5c-7235-994j Dependencies (osv-scanner)
high osv/GHSA-3j72-p6qg-6xp7 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4341, GHSA-3j72-p6qg-6xp7 Dependencies (osv-scanner)
high osv/GHSA-3wvg-mj6g-m9cv python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-41, GHSA-3wvg-mj6g-m9cv Dependencies (osv-scanner)
high osv/GHSA-3xv8-3j54-hgrp python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2020-77, GHSA-3xv8-3j54-hgrp Dependencies (osv-scanner)
high osv/GHSA-44wm-f244-xhp3 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-1793, GHSA-44wm-f244-xhp3 Dependencies (osv-scanner)
high osv/GHSA-4558-3h8r-v8xp python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4327, GHSA-4558-3h8r-v8xp Dependencies (osv-scanner)
high osv/GHSA-45hq-cxwh-f6vc python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-2255, GHSA-45hq-cxwh-f6vc Dependencies (osv-scanner)
high osv/GHSA-5545-2q6w-2gh6 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-856, GHSA-5545-2q6w-2gh6 Dependencies (osv-scanner)
high osv/GHSA-58r4-6rv3-gfh8 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4329, GHSA-58r4-6rv3-gfh8 Dependencies (osv-scanner)
high osv/GHSA-5gm3-px64-rw72 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2020-172, GHSA-5gm3-px64-rw72 Dependencies (osv-scanner)
high osv/GHSA-5x94-69rx-g8h2 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-2254, GHSA-5x94-69rx-g8h2 Dependencies (osv-scanner)
high osv/GHSA-62p4-gmf7-7g93 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-3493, GHSA-62p4-gmf7-7g93 Dependencies (osv-scanner)
high osv/GHSA-6r8x-57c9-28j4 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-3451, GHSA-6r8x-57c9-28j4 Dependencies (osv-scanner)
high osv/GHSA-7fc2-rm35-2pp7 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2017-47, GHSA-7fc2-rm35-2pp7 Dependencies (osv-scanner)
high osv/GHSA-7gcm-g887-7qv7 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-1805, GHSA-7gcm-g887-7qv7 Dependencies (osv-scanner)
high osv/GHSA-7mwm-ghpf-9vrm python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4331, GHSA-7mwm-ghpf-9vrm Dependencies (osv-scanner)
high osv/GHSA-7r7m-5h27-29hp python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-92, GHSA-7r7m-5h27-29hp Dependencies (osv-scanner)
high osv/GHSA-8843-m7mw-mxqm python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2020-78, GHSA-8843-m7mw-mxqm Dependencies (osv-scanner)
high osv/GHSA-8ghj-p4vj-mr35 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2023-227, GHSA-8ghj-p4vj-mr35 Dependencies (osv-scanner)
high osv/GHSA-8gq9-2x98-w8hf python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-899, GHSA-8gq9-2x98-w8hf Dependencies (osv-scanner)
high osv/GHSA-8qvm-5x2c-j2w7 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-1806, GHSA-8qvm-5x2c-j2w7 Dependencies (osv-scanner)
high osv/GHSA-8v84-f9pq-wr9x python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-2253, GHSA-8v84-f9pq-wr9x Dependencies (osv-scanner)
high osv/GHSA-8xjq-8fcg-g5hw python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-36, GHSA-8xjq-8fcg-g5hw Dependencies (osv-scanner)
high osv/GHSA-8xjv-v9xq-m5h9 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2016-6, GHSA-8xjv-v9xq-m5h9 Dependencies (osv-scanner)
high osv/GHSA-95q3-8gr9-gm8w python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-42, GHSA-95q3-8gr9-gm8w Dependencies (osv-scanner)
high osv/GHSA-9hw9-ch79-4vh6 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-3453, GHSA-9hw9-ch79-4vh6 Dependencies (osv-scanner)
high osv/GHSA-9v9v-9qvf-h2hj python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4343, GHSA-9v9v-9qvf-h2hj Dependencies (osv-scanner)
high osv/GHSA-cfmr-38g9-f2h7 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2014-10, GHSA-cfmr-38g9-f2h7 Dependencies (osv-scanner)
high osv/GHSA-cqhg-xjhh-p8hf python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2020-76, GHSA-cqhg-xjhh-p8hf Dependencies (osv-scanner)
high osv/GHSA-cw6w-4rcx-xphc python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2018-33, GHSA-cw6w-4rcx-xphc Dependencies (osv-scanner)
high osv/GHSA-f4w8-cv6p-x6r5 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-40, GHSA-f4w8-cv6p-x6r5 Dependencies (osv-scanner)
high osv/GHSA-f5g8-5qq7-938w python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-69, GHSA-f5g8-5qq7-938w Dependencies (osv-scanner)
high osv/GHSA-frgw-fgh6-9g52 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2017-1, GHSA-frgw-fgh6-9g52 Dependencies (osv-scanner)
high osv/GHSA-g6rj-rv7j-xwp4 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-139, GHSA-g6rj-rv7j-xwp4 Dependencies (osv-scanner)
high osv/GHSA-g842-9rc4-69pw python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4338, GHSA-g842-9rc4-69pw Dependencies (osv-scanner)
high osv/GHSA-h5rf-vgqx-wjv2 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2015-16, GHSA-h5rf-vgqx-wjv2 Dependencies (osv-scanner)
high osv/GHSA-hj69-c76v-86wr python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2020-84, GHSA-hj69-c76v-86wr Dependencies (osv-scanner)
high osv/GHSA-j6f7-g425-4gmx python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2015-15, GHSA-j6f7-g425-4gmx Dependencies (osv-scanner)
high osv/GHSA-j7hp-h8jx-5ppr python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-1794, GHSA-j7hp-h8jx-5ppr Dependencies (osv-scanner)
high osv/GHSA-j7mj-748x-7p78 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2019-110, GHSA-j7mj-748x-7p78 Dependencies (osv-scanner)
high osv/GHSA-jwvw-v7c5-m82h python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2017-65, GHSA-jwvw-v7c5-m82h Dependencies (osv-scanner)
high osv/GHSA-m2vv-5vj5-2hm7 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2022-42979, GHSA-m2vv-5vj5-2hm7 Dependencies (osv-scanner)
high osv/GHSA-mvg9-xffr-p774 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-37, GHSA-mvg9-xffr-p774 Dependencies (osv-scanner)
high osv/GHSA-pchr-8j38-3x4p python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4334, GHSA-pchr-8j38-3x4p Dependencies (osv-scanner)
high osv/GHSA-phj9-mv4w-65pm python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-2256, GHSA-phj9-mv4w-65pm Dependencies (osv-scanner)
high osv/GHSA-pq7m-3gw7-gq5x python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2022-12, GHSA-pq7m-3gw7-gq5x Dependencies (osv-scanner)
high osv/GHSA-q5hq-fp76-qmrc python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-93, GHSA-q5hq-fp76-qmrc Dependencies (osv-scanner)
high osv/GHSA-vj42-xq3r-hr3r python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2020-79, GHSA-vj42-xq3r-hr3r Dependencies (osv-scanner)
high osv/GHSA-vqcj-wrf2-7v73 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-70, GHSA-vqcj-wrf2-7v73 Dependencies (osv-scanner)
high osv/GHSA-w4vg-rf63-f3j3 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2016-9, GHSA-w4vg-rf63-f3j3 Dependencies (osv-scanner)
high osv/GHSA-x895-2wrm-hvp7 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2014-22, GHSA-x895-2wrm-hvp7 Dependencies (osv-scanner)
high osv/GHSA-xcvg-w56q-r89m python/requirements.txt [email protected] (PyPI) is affected by GHSA-xcvg-w56q-r89m Dependencies (osv-scanner)
high osv/GHSA-xgh8-jp6q-p5x8 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4335, GHSA-xgh8-jp6q-p5x8 Dependencies (osv-scanner)
high osv/GHSA-xj96-63gp-2gmr python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-3454, GHSA-xj96-63gp-2gmr Dependencies (osv-scanner)
high opengrep/python.lang.security.audit.dangerous-system-call-audit tools/extra/plot_training_log.py.example:113 Found dynamic content used in a system call. This is dangerous if external data can reach this function call because it allows a malicious actor to execute commands. Use the 'subprocess' module instead, which is easier to use without... Static analysis (opengrep)
medium opengrep/python.lang.best-practice.unspecified-open-encoding python/detect.py:127 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding python/draw_net.py:48 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding scripts/copy_notebook.py:17 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding scripts/copy_notebook.py:30 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding scripts/copy_notebook.py:32 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.maintainability.is-function-without-parentheses scripts/cpp_lint.py:1803 Is "is_derived" a function or an attribute? If it is a function, you may have meant self.is_derived() because self.is_derived is always true. Lint
medium opengrep/python.lang.maintainability.is-function-without-parentheses scripts/cpp_lint.py:1806 Is "is_struct" a function or an attribute? If it is a function, you may have meant self.is_struct() because self.is_struct is always true. Lint
medium opengrep/python.lang.maintainability.is-function-without-parentheses scripts/cpp_lint.py:1809 Is "is_struct" a function or an attribute? If it is a function, you may have meant self.is_struct() because self.is_struct is always true. Lint
medium opengrep/python.lang.maintainability.is-function-without-parentheses scripts/cpp_lint.py:1836 Is "is_derived" a function or an attribute? If it is a function, you may have meant self.is_derived() because self.is_derived is always true. Lint
medium opengrep/python.lang.maintainability.is-function-without-parentheses scripts/cpp_lint.py:1844 Is "is_struct" a function or an attribute? If it is a function, you may have meant self.is_struct() because self.is_struct is always true. Lint
medium opengrep/python.lang.maintainability.is-function-without-parentheses scripts/cpp_lint.py:2117 Is "is_struct" a function or an attribute? If it is a function, you may have meant classinfo.is_struct() because classinfo.is_struct is always true. Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding scripts/download_model_binary.py:33 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding scripts/split_caffe_proto.py:28 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding scripts/split_caffe_proto.py:34 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding tools/extra/extract_seconds.py:45 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding tools/extra/extract_seconds.py:52 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.correctness.use-sys-exit tools/extra/extract_seconds.py:71 Detected use of `exit`. Use `sys.exit` over the python shell `exit` built-in. `exit` is a helper for the interactive shell and may not be available on all Python implementations. Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding tools/extra/parse_log.py:169 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding tools/extra/parse_log.py:39 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium opengrep/python.lang.best-practice.unspecified-open-encoding tools/extra/summarize.py:24 Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding="utf-8"). Lint
medium osv/GHSA-29gw-9793-fvw7 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2023-17, GHSA-29gw-9793-fvw7 Dependencies (osv-scanner)
medium osv/GHSA-4fx9-vc88-q2xc python/requirements.txt [email protected] (PyPI) is affected by GHSA-4fx9-vc88-q2xc Dependencies (osv-scanner)
medium osv/GHSA-4rm8-3hmm-39fg python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4340, GHSA-4rm8-3hmm-39fg Dependencies (osv-scanner)
medium osv/GHSA-4vwq-x64q-j4cj python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2015-24, GHSA-4vwq-x64q-j4cj Dependencies (osv-scanner)
medium osv/GHSA-4x4j-2g7c-83w6 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-2257, GHSA-4x4j-2g7c-83w6 Dependencies (osv-scanner)
medium osv/GHSA-66gw-5xpf-gfp5 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2017-46, GHSA-66gw-5xpf-gfp5 Dependencies (osv-scanner)
medium osv/GHSA-f7c7-j99h-c22f python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-857, GHSA-f7c7-j99h-c22f Dependencies (osv-scanner)
medium osv/GHSA-fpfv-jqm9-f5jm python/requirements.txt [email protected] (PyPI) is affected by GHSA-fpfv-jqm9-f5jm Dependencies (osv-scanner)
medium osv/GHSA-hggx-3h72-49ww python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2016-5, GHSA-hggx-3h72-49ww Dependencies (osv-scanner)
medium osv/GHSA-p8hx-v2p6-rp84 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-4337, GHSA-p8hx-v2p6-rp84 Dependencies (osv-scanner)
medium osv/GHSA-pw3c-h7wp-cvhx python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2022-8, GHSA-pw3c-h7wp-cvhx Dependencies (osv-scanner)
medium osv/GHSA-q326-jhw3-699g python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2017-45, GHSA-q326-jhw3-699g Dependencies (osv-scanner)
medium osv/GHSA-r854-96gq-rfg3 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2014-23, GHSA-r854-96gq-rfg3 Dependencies (osv-scanner)
medium osv/GHSA-rwr3-c2q8-gm56 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2016-8, GHSA-rwr3-c2q8-gm56 Dependencies (osv-scanner)
medium osv/GHSA-vx6w-vv9f-6gvg python/requirements.txt [email protected] (PyPI) is affected by GHSA-vx6w-vv9f-6gvg Dependencies (osv-scanner)
medium osv/GHSA-wjx4-4jcj-g98j python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2026-165, GHSA-wjx4-4jcj-g98j Dependencies (osv-scanner)
medium osv/GHSA-wqgw-9xfh-qf2g python/requirements.txt [email protected] (PyPI) is affected by GHSA-wqgw-9xfh-qf2g Dependencies (osv-scanner)
medium osv/GHSA-xrcv-f9gm-v42c python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2022-9, GHSA-xrcv-f9gm-v42c Dependencies (osv-scanner)
medium osv/PYSEC-2020-73 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2020-73 Dependencies (osv-scanner)
medium osv/PYSEC-2021-137 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-137 Dependencies (osv-scanner)
medium osv/PYSEC-2021-138 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-138 Dependencies (osv-scanner)
medium osv/PYSEC-2021-317 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-317 Dependencies (osv-scanner)
medium osv/PYSEC-2021-38 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-38 Dependencies (osv-scanner)
medium osv/PYSEC-2021-39 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-39 Dependencies (osv-scanner)
medium osv/PYSEC-2021-94 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2021-94 Dependencies (osv-scanner)
medium osv/PYSEC-2022-42980 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2022-42980 Dependencies (osv-scanner)
medium osv/PYSEC-2022-48 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2022-48 Dependencies (osv-scanner)
medium osv/PYSEC-2023-102 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2023-102 Dependencies (osv-scanner)
medium osv/PYSEC-2023-114 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2023-114 Dependencies (osv-scanner)
medium osv/PYSEC-2023-175 python/requirements.txt [email protected] (PyPI) is affected by PYSEC-2023-175 Dependencies (osv-scanner)
medium opengrep/python.lang.security.insecure-hash-algorithm-sha1 scripts/download_model_binary.py:65 Detected SHA1 hash algorithm which is considered insecure. SHA1 is not collision resistant and is therefore not suitable as a cryptographic signature. Use SHA256 or SHA3 instead. [confidence medium] Static analysis (opengrep)
medium opengrep/python.lang.security.audit.dynamic-urllib-use-detected scripts/download_model_binary.py:73 Detected a dynamic value being used with urllib. urllib supports 'file://' schemes, so a dynamic value controlled by a malicious actor may allow them to read arbitrary files. Audit uses of urllib calls to ensure user data cannot control... Static analysis (opengrep)
medium opengrep/c.lang.security.insecure-use-string-copy-fn src/gtest/gtest.h:2672 Finding triggers whenever there is a strcpy or strncpy used. This is an issue because strcpy does not affirm the size of the destination array and strncpy will not automatically NULL-terminate strings. This can lead to buffer overflows,... Static analysis (opengrep)
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command data/mnist/get_mnist.sh:12 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command data/mnist/get_mnist.sh:13 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/build_docs.sh:10 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/build_docs.sh:23 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/deploy_docs.sh:12 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/deploy_docs.sh:23 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/deploy_docs.sh:24 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/deploy_docs.sh:25 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/deploy_docs.sh:28 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/deploy_docs.sh:29 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-command-substitution-in-command scripts/deploy_docs.sh:30 The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or other separators specified by the IFS variable. You should surround it with double quotes to avoid splitting the result. Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/deploy_docs.sh:37 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/deploy_docs.sh:45 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/download_model_from_gist.sh:11 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/download_model_from_gist.sh:20 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/download_model_from_gist.sh:21 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/download_model_from_gist.sh:22 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/download_model_from_gist.sh:23 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/gather_examples.sh:10 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/gather_examples.sh:11 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/gather_examples.sh:14 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/gather_examples.sh:17 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-command-substitution-in-command scripts/gather_examples.sh:19 The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or other separators specified by the IFS variable. You should surround it with double quotes to avoid splitting the result. Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/gather_examples.sh:19 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/gather_examples.sh:20 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-command-substitution-in-command scripts/gather_examples.sh:27 The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or other separators specified by the IFS variable. You should surround it with double quotes to avoid splitting the result. Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/gather_examples.sh:27 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/gather_examples.sh:28 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/gather_examples.sh:6 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/build.sh:11 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/build.sh:4 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/build.sh:5 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/build.sh:7 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/build.sh:8 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure-cmake.sh:12 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure-cmake.sh:18 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure-cmake.sh:25 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure-cmake.sh:31 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure-cmake.sh:8 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure-make.sh:12 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure-make.sh:20 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure-make.sh:26 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure-make.sh:33 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure.sh:10 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure.sh:4 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure.sh:5 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure.sh:7 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/configure.sh:8 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:100 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:106 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:108 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:23 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:27 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:49 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:5 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:52 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:53 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:6 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:62 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:64 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:67 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:73 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:81 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:84 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:85 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:86 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:88 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:90 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-deps.sh:91 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-python-deps.sh:5 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-python-deps.sh:6 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/install-python-deps.sh:8 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/setup-venv.sh:11 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/setup-venv.sh:18 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/setup-venv.sh:5 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/setup-venv.sh:6 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/test.sh:12 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/test.sh:4 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/test.sh:5 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/travis/test.sh:7 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/upload_model_to_gist.sh:23 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/upload_model_to_gist.sh:26 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/upload_model_to_gist.sh:9 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command tools/extra/parse_log.sh:16 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command tools/extra/parse_log.sh:17 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command tools/extra/parse_log.sh:29 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command tools/extra/parse_log.sh:30 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command tools/extra/parse_log.sh:31 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command tools/extra/parse_log.sh:39 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command tools/extra/parse_log.sh:40 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command tools/extra/parse_log.sh:42 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command tools/extra/parse_log.sh:43 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command tools/extra/parse_log.sh:46 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint

Tools and coverage

Every analyzer that ran on this commit. A failed or skipped tool is a coverage gap: its share of the score is left out and the coverage figure drops.

AnalyzerPillarStatusVersionFindingsNote
AI tool configurationAI provenanceoksignatures-v10
Explicit AI attributionAI provenanceoksignatures-v10
Release velocityAI provenanceokprov-50
Coding styleAI provenanceok—0
Commit velocityAI provenanceokprov-50
Complexity (lizard)Code qualityoklizard 1.25.10
DocumentationCode qualityok—0
Duplication (jscpd)Code qualityokrepotrust-dup-w60
LintCode qualityokopengrep 1.33.1; rules f1d2b562b414114
Tests and CICode qualityok—0
Type safetyCode qualityok—0
CI workflows (zizmor)Securityskipped—0
Dependencies (osv-scanner)Securityokosv-scanner version: 2.7.1105
Release downloadsSecurityok—0
Security postureSecurityok—0
Package registriesSecurityok—0
Static analysis (opengrep)Securityokopengrep 1.33.1; rules f1d2b562b4144
OpenSSF ScorecardSecurityokscorecard v5.6.00
Secrets (gitleaks)Securityokgitleaks 8.30.10

Score history

ScoredCommitScoringAI provenanceQualitySecurity
2026-11-149b891540183dprov-5+qual-2+sec-20%5862

Embed a badge

Maintainers can show these in a README. Badges update when the repository is re-scored.

[![RepoTrust ai](https://repotrust.synapticcyber.com/badge/github.com/BVLC/caffe/ai.svg)](https://repotrust.synapticcyber.com/r/github.com/BVLC/caffe/)
[![RepoTrust quality](https://repotrust.synapticcyber.com/badge/github.com/BVLC/caffe/quality.svg)](https://repotrust.synapticcyber.com/r/github.com/BVLC/caffe/)
[![RepoTrust security](https://repotrust.synapticcyber.com/badge/github.com/BVLC/caffe/security.svg)](https://repotrust.synapticcyber.com/r/github.com/BVLC/caffe/)
Full text report
  • Repository: https://github.com/BVLC/caffe
  • Commit: 9b891540183ddc834a02b2bd81b31afae71b2153
  • Generated: 2026-11-14T15:14:56+00:00
  • Scorer 0.1.0, scoring prov-5+qual-2+sec-2, report schema v2

Scores

Pillar Score Signal Confidence Coverage
AI provenance (estimated AI-generated share) 0 none-detected 65% 100%
Code quality 58 weak 90% 100%
Security 62 weak 85% 100%

AI provenance

No AI attribution or AI-consistent velocity signals detected.

  • Explicitly attributed share (lower bound): 0.0%

  • Unattributed share in AI-consistent velocity bursts: 0.0%

  • Estimated AI-generated share: 0.0%

  • Stylometry index: 0.16 per 1,000 lines (narrated steps 6, placeholders 1, assistant phrasing 0, emoji 0). Reported as a signal, not scored.

Month Lines added Attributed to AI
2017-09 706 0%
2017-10 98 0%
2017-11 1 0%
2017-12 51 0%
2018-01 21 0%
2018-02 14 0%
2018-03 773 0%
2018-04 41 0%
2018-05 4 0%
2018-07 17 0%
2018-08 1 0%
2019-12 1 0%

Evidence

  • placeholder or demo-only phrasing: % For demo purposes we will use the cat image (matlab/demo/)
  • step-by-step narration comment: # Next, we complain if there's a comment too near the text (scripts/cpp_)
  • step-by-step narration comment: // first, compute diff_i * y_i / s_i (src/caffe/la)
  • step-by-step narration comment: // First, compute the diff (src/caffe/la)
  • step-by-step narration comment: // Finally, set the backward flag (src/caffe/ne)
  • step-by-step narration comment: // finally, merge in any NetState specified by the train_state (highest (src/caffe/so)
  • step-by-step narration comment: // First, print c as a literal in the most readable form we can find. (src/gtest/gt)

AI provenance describes how code was produced; it is not a quality judgment. Unless attribution is explicit, these are signals consistent with AI generation, not proof. Squash/rebase workflows, imported code, and rewritten history reduce accuracy.

Code quality

Code quality is weak: test-to-source ratio 0.37, no CI test run detected; 17% of function code in complex or long functions; 16% duplicated lines. Weakest area: process.

Area Score
Complexity (lizard) 60
Duplication 39
Code smells (Opengrep) 84
Tests and CI 60
Documentation 80
Type safety 40
Process (Scorecard review/maintenance) 30
  • Functions: 2,827; mean complexity 2.5, 90th percentile 5; 41 complex and 17 long functions
  • Duplicated lines: 15.8% of 52,517 compared
  • Tests: 25,425 test lines for 68,192 source lines (ratio 0.37); CI test commands: none detected; 16% of recent source commits also change tests
  • Docs missing or thin: changelog

Most complex functions:

Security

Security posture is weak: 105 known vulnerabilities in 7 dependencies; 1 high-severity SAST findings. Weakest area: posture.

Area Score
Secrets (gitleaks, tree + history) 100
Static analysis (Opengrep) 99
Vulnerable dependencies (OSV) 29
CI workflows (zizmor) n/a
Posture (policy, updates, signing, lockfiles) 0
OpenSSF Scorecard 20
  • Known vulnerabilities: 105 in 7 packages (critical 19, high 56, medium 16, low 0)

  • Posture checks passed: lockfiles; missing: security policy, dependency updates, signed commits

  • OpenSSF Scorecard aggregate: 2.6/10 (published 2026-10-19)

Top findings

Severity Finding Location
critical osv/GHSA-8m9x-pxwq-j236: [email protected] (PyPI) is affected by PYSEC-2014-87, GHSA-8m9x-pxwq-j236 python/requirements.txt
critical osv/GHSA-hvr8-466p-75rh: [email protected] (PyPI) is affected by PYSEC-2016-7, GHSA-hvr8-466p-75rh python/requirements.txt
critical osv/GHSA-43fq-w8qq-v88h: [email protected] (PyPI) is affected by PYSEC-2020-80, GHSA-43fq-w8qq-v88h python/requirements.txt
critical osv/GHSA-vcqg-3p29-xw73: [email protected] (PyPI) is affected by PYSEC-2020-81, GHSA-vcqg-3p29-xw73 python/requirements.txt
critical osv/GHSA-r7rm-8j6h-r933: [email protected] (PyPI) is affected by PYSEC-2020-82, GHSA-r7rm-8j6h-r933 python/requirements.txt
critical osv/GHSA-p49h-hjvm-jg3h: [email protected] (PyPI) is affected by PYSEC-2020-83, GHSA-p49h-hjvm-jg3h python/requirements.txt
critical osv/GHSA-7534-mm45-c74v: [email protected] (PyPI) is affected by PYSEC-2021-331, GHSA-7534-mm45-c74v python/requirements.txt
critical osv/GHSA-57h3-9rgr-c24m: [email protected] (PyPI) is affected by PYSEC-2021-35, GHSA-57h3-9rgr-c24m python/requirements.txt
critical osv/GHSA-8vj2-vxx3-667w: [email protected] (PyPI) is affected by PYSEC-2022-10, GHSA-8vj2-vxx3-667w python/requirements.txt
critical osv/GHSA-9j59-75qj-795w: [email protected] (PyPI) is affected by PYSEC-2022-168, GHSA-9j59-75qj-795w python/requirements.txt
critical osv/GHSA-5x8w-8jj5-q52h: [email protected] (PyPI) is affected by PYSEC-2026-4330, GHSA-5x8w-8jj5-q52h python/requirements.txt
critical osv/GHSA-8g5g-8vmr-9782: [email protected] (PyPI) is affected by PYSEC-2026-4332, GHSA-8g5g-8vmr-9782 python/requirements.txt
critical osv/PYSEC-2026-4363: [email protected] (PyPI) is affected by PYSEC-2026-4363 python/requirements.txt
critical osv/GHSA-3f63-hfp8-52jq: [email protected] (PyPI) is affected by PYSEC-2026-457, GHSA-3f63-hfp8-52jq python/requirements.txt
critical osv/GHSA-332p-7hrc-92wf: [email protected] (PyPI) is affected by GHSA-332p-7hrc-92wf python/requirements.txt
critical osv/GHSA-92mr-v722-f48m: [email protected] (PyPI) is affected by PYSEC-2015-25, GHSA-92mr-v722-f48m python/requirements.txt
critical osv/GHSA-9fq2-x9r6-wfmf: [email protected] (PyPI) is affected by PYSEC-2019-108, GHSA-9fq2-x9r6-wfmf python/requirements.txt
critical osv/GHSA-rprw-h62v-c2w7: [email protected] (PyPI) is affected by PYSEC-2018-49, GHSA-rprw-h62v-c2w7 python/requirements.txt
critical osv/GHSA-8q59-q68h-6hv4: [email protected] (PyPI) is affected by PYSEC-2021-142, GHSA-8q59-q68h-6hv4 python/requirements.txt
high opengrep/python.lang.security.audit.dangerous-system-call-audit: Found dynamic content used in a system call. This is dangerous if external data can reach this function call because it allows a malicious actor to execute commands. Use the 'subprocess' module instead, which is easier to use without accidentally exposing a command injection vulnerability. [confidence low] tools/extra/plot_training_log.py.example:113
high osv/GHSA-cfmr-38g9-f2h7: [email protected] (PyPI) is affected by PYSEC-2014-10, GHSA-cfmr-38g9-f2h7 python/requirements.txt
high osv/GHSA-x895-2wrm-hvp7: [email protected] (PyPI) is affected by PYSEC-2014-22, GHSA-x895-2wrm-hvp7 python/requirements.txt
high osv/GHSA-j6f7-g425-4gmx: [email protected] (PyPI) is affected by PYSEC-2015-15, GHSA-j6f7-g425-4gmx python/requirements.txt
high osv/GHSA-h5rf-vgqx-wjv2: [email protected] (PyPI) is affected by PYSEC-2015-16, GHSA-h5rf-vgqx-wjv2 python/requirements.txt
high osv/GHSA-3c5c-7235-994j: [email protected] (PyPI) is affected by PYSEC-2016-19, GHSA-3c5c-7235-994j python/requirements.txt

Static signals only: the scorer never runs the project's code. Secret findings are pattern matches that were not verified, and secret values are never stored.

Repository profile

  • Source lines: 68,192; test lines: 25,425
Language Lines
C++ 62,441
C 19,561
Python 9,775
Objective-C 926
Shell 914