Skip to content

Instantly share code, notes, and snippets.

@AngelOnFira
Created August 31, 2022 15:18
Show Gist options
  • Select an option

  • Save AngelOnFira/37a4294cfa9fa4bfcaedbffc907f8d59 to your computer and use it in GitHub Desktop.

Select an option

Save AngelOnFira/37a4294cfa9fa4bfcaedbffc907f8d59 to your computer and use it in GitHub Desktop.
Geiger breakdown of Warp web framework
Metric output format: x/y
x = unsafe code used by the build
y = total unsafe code found in the crate
Symbols:
🔒 = No `unsafe` usage found, declares #![forbid(unsafe_code)]
❓ = No `unsafe` usage found, missing #![forbid(unsafe_code)]
☢️ = `unsafe` usage found
Functions Expressions Impls Traits Methods Dependency
0/0 0/0 0/0 0/0 0/0 ❓ warp 0.3.2
17/17 538/630 11/13 1/1 15/19 ☢️ ├── bytes 1.1.0
0/0 4/4 0/0 0/0 0/0 ☢️ │ └── serde 1.0.132
0/0 0/0 0/0 0/0 0/0 ❓ │ └── serde_derive 1.0.132
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── proc-macro2 1.0.34
0/0 0/0 0/0 0/0 0/0 🔒 │ │ └── unicode-xid 0.2.2
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── quote 1.0.10
0/0 0/0 0/0 0/0 0/0 ❓ │ │ └── proc-macro2 1.0.34
0/0 45/45 3/3 0/0 2/2 ☢️ │ └── syn 1.0.82
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── proc-macro2 1.0.34
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── quote 1.0.10
0/0 0/0 0/0 0/0 0/0 🔒 │ └── unicode-xid 0.2.2
0/0 83/83 8/8 0/0 3/3 ☢️ ├── futures-channel 0.3.19
0/0 30/30 2/2 0/0 0/0 ☢️ │ ├── futures-core 0.3.19
0/0 2/2 0/0 0/0 0/0 ☢️ │ └── futures-sink 0.3.19
0/5 427/498 22/23 0/0 6/10 ☢️ ├── futures-util 0.3.19
0/0 83/83 8/8 0/0 3/3 ☢️ │ ├── futures-channel 0.3.19
0/0 30/30 2/2 0/0 0/0 ☢️ │ ├── futures-core 0.3.19
0/0 2/2 0/0 0/0 0/0 ☢️ │ ├── futures-sink 0.3.19
9/9 79/79 12/12 1/1 11/11 ☢️ │ ├── futures-task 0.3.19
36/37 2067/2140 0/0 0/0 16/16 ☢️ │ ├── memchr 2.4.1
0/20 12/327 0/2 0/0 2/30 ☢️ │ │ └── libc 0.2.112
0/0 8/167 0/0 0/0 0/0 ☢️ │ ├── pin-project-lite 0.2.7
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── pin-utils 0.1.0
0/0 25/25 0/0 0/0 3/3 ☢️ │ └── slab 0.4.5
0/0 4/4 0/0 0/0 0/0 ☢️ │ └── serde 1.0.132
0/0 3/3 0/0 0/0 0/0 ☢️ ├── headers 0.3.5
0/0 0/0 0/0 0/0 0/0 🔒 │ ├── base64 0.13.0
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── bitflags 1.3.2
17/17 538/630 11/13 1/1 15/19 ☢️ │ ├── bytes 1.1.0
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── headers-core 0.2.0
0/0 161/165 10/10 0/0 2/2 ☢️ │ │ └── http 0.2.5
17/17 538/630 11/13 1/1 15/19 ☢️ │ │ ├── bytes 1.1.0
0/0 0/0 0/0 0/0 0/0 ❓ │ │ ├── fnv 1.0.7
0/0 1/1 0/0 0/0 0/0 ☢️ │ │ └── itoa 0.4.8
0/0 161/165 10/10 0/0 2/2 ☢️ │ ├── http 0.2.5
0/0 0/0 0/0 0/0 0/0 🔒 │ ├── httpdate 1.0.2
0/0 0/2 0/0 0/0 0/0 ❓ │ ├── mime 0.3.16
1/1 83/83 0/0 0/0 0/0 ☢️ │ └── sha-1 0.9.8
0/0 6/6 0/0 0/0 0/0 ☢️ │ ├── block-buffer 0.9.0
1/1 295/295 20/20 8/8 5/5 ☢️ │ │ └── generic-array 0.14.4
0/0 4/4 0/0 0/0 0/0 ☢️ │ │ ├── serde 1.0.132
0/0 0/0 0/0 0/0 0/0 🔒 │ │ └── typenum 1.14.0
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── cfg-if 1.0.0
0/1 0/14 0/0 0/0 0/0 ❓ │ ├── cpufeatures 0.2.1
0/0 0/0 0/0 0/0 0/0 🔒 │ ├── digest 0.9.0
1/1 295/295 20/20 8/8 5/5 ☢️ │ │ └── generic-array 0.14.4
0/0 0/0 0/0 0/0 0/0 ❓ │ └── opaque-debug 0.3.0
0/0 161/165 10/10 0/0 2/2 ☢️ ├── http 0.2.5
0/1 50/67 2/13 0/1 2/2 ☢️ ├── hyper 0.14.16
17/17 538/630 11/13 1/1 15/19 ☢️ │ ├── bytes 1.1.0
0/0 83/83 8/8 0/0 3/3 ☢️ │ ├── futures-channel 0.3.19
0/0 30/30 2/2 0/0 0/0 ☢️ │ ├── futures-core 0.3.19
0/5 427/498 22/23 0/0 6/10 ☢️ │ ├── futures-util 0.3.19
0/0 3/3 0/0 0/0 0/0 ☢️ │ ├── h2 0.3.9
17/17 538/630 11/13 1/1 15/19 ☢️ │ │ ├── bytes 1.1.0
0/0 0/0 0/0 0/0 0/0 ❓ │ │ ├── fnv 1.0.7
0/0 30/30 2/2 0/0 0/0 ☢️ │ │ ├── futures-core 0.3.19
0/0 2/2 0/0 0/0 0/0 ☢️ │ │ ├── futures-sink 0.3.19
0/5 427/498 22/23 0/0 6/10 ☢️ │ │ ├── futures-util 0.3.19
0/0 161/165 10/10 0/0 2/2 ☢️ │ │ ├── http 0.2.5
0/0 37/42 1/1 0/0 0/0 ☢️ │ │ ├── indexmap 1.7.0
2/2 1082/1198 19/22 1/1 51/58 ☢️ │ │ │ ├── hashbrown 0.11.2
0/0 4/4 0/0 0/0 0/0 ☢️ │ │ │ │ └── serde 1.0.132
0/0 4/4 0/0 0/0 0/0 ☢️ │ │ │ └── serde 1.0.132
0/0 25/25 0/0 0/0 3/3 ☢️ │ │ ├── slab 0.4.5
20/25 1501/1834 96/102 1/1 63/69 ☢️ │ │ ├── tokio 1.15.0
17/17 538/630 11/13 1/1 15/19 ☢️ │ │ │ ├── bytes 1.1.0
0/20 12/327 0/2 0/0 2/30 ☢️ │ │ │ ├── libc 0.2.112
36/37 2067/2140 0/0 0/0 16/16 ☢️ │ │ │ ├── memchr 2.4.1
1/2 161/625 0/7 0/0 13/21 ☢️ │ │ │ ├── mio 0.7.14
0/20 12/327 0/2 0/0 2/30 ☢️ │ │ │ │ ├── libc 0.2.112
1/1 16/16 1/1 0/0 0/0 ☢️ │ │ │ │ └── log 0.4.14
0/0 0/0 0/0 0/0 0/0 ❓ │ │ │ │ ├── cfg-if 1.0.0
0/0 4/4 0/0 0/0 0/0 ☢️ │ │ │ │ └── serde 1.0.132
0/0 72/72 0/0 0/0 0/0 ☢️ │ │ │ ├── num_cpus 1.13.1
0/20 12/327 0/2 0/0 2/30 ☢️ │ │ │ │ └── libc 0.2.112
0/1 0/93 0/6 0/0 0/3 ❓ │ │ │ ├── once_cell 1.9.0
0/0 8/167 0/0 0/0 0/0 ☢️ │ │ │ ├── pin-project-lite 0.2.7
0/0 0/0 0/0 0/0 0/0 ❓ │ │ │ └── tokio-macros 1.7.0
0/0 0/0 0/0 0/0 0/0 ❓ │ │ │ ├── proc-macro2 1.0.34
0/0 0/0 0/0 0/0 0/0 ❓ │ │ │ ├── quote 1.0.10
0/0 45/45 3/3 0/0 2/2 ☢️ │ │ │ └── syn 1.0.82
2/2 333/350 5/5 0/0 6/6 ☢️ │ │ ├── tokio-util 0.6.9
17/17 538/630 11/13 1/1 15/19 ☢️ │ │ │ ├── bytes 1.1.0
0/0 30/30 2/2 0/0 0/0 ☢️ │ │ │ ├── futures-core 0.3.19
0/0 2/2 0/0 0/0 0/0 ☢️ │ │ │ ├── futures-sink 0.3.19
0/5 427/498 22/23 0/0 6/10 ☢️ │ │ │ ├── futures-util 0.3.19
1/1 16/16 1/1 0/0 0/0 ☢️ │ │ │ ├── log 0.4.14
0/0 8/167 0/0 0/0 0/0 ☢️ │ │ │ ├── pin-project-lite 0.2.7
0/0 25/25 0/0 0/0 3/3 ☢️ │ │ │ ├── slab 0.4.5
20/25 1501/1834 96/102 1/1 63/69 ☢️ │ │ │ └── tokio 1.15.0
0/0 0/0 1/1 0/0 0/0 ☢️ │ │ └── tracing 0.1.29
0/0 0/0 0/0 0/0 0/0 ❓ │ │ ├── cfg-if 1.0.0
1/1 16/16 1/1 0/0 0/0 ☢️ │ │ ├── log 0.4.14
0/0 8/167 0/0 0/0 0/0 ☢️ │ │ ├── pin-project-lite 0.2.7
0/0 35/56 0/4 0/0 2/2 ☢️ │ │ └── tracing-core 0.1.21
0/0 7/7 1/1 0/0 0/0 ☢️ │ │ └── lazy_static 1.4.0
0/0 161/165 10/10 0/0 2/2 ☢️ │ ├── http 0.2.5
0/0 8/8 0/0 0/0 0/0 ☢️ │ ├── http-body 0.4.4
17/17 538/630 11/13 1/1 15/19 ☢️ │ │ ├── bytes 1.1.0
0/0 161/165 10/10 0/0 2/2 ☢️ │ │ ├── http 0.2.5
0/0 8/167 0/0 0/0 0/0 ☢️ │ │ └── pin-project-lite 0.2.7
14/14 255/289 0/0 0/0 3/3 ☢️ │ ├── httparse 1.5.1
0/0 0/0 0/0 0/0 0/0 🔒 │ ├── httpdate 1.0.2
0/0 1/1 0/0 0/0 0/0 ☢️ │ ├── itoa 0.4.8
0/20 12/327 0/2 0/0 2/30 ☢️ │ ├── libc 0.2.112
0/0 8/167 0/0 0/0 0/0 ☢️ │ ├── pin-project-lite 0.2.7
3/6 488/601 2/2 0/0 3/4 ☢️ │ ├── socket2 0.4.2
0/20 12/327 0/2 0/0 2/30 ☢️ │ │ └── libc 0.2.112
20/25 1501/1834 96/102 1/1 63/69 ☢️ │ ├── tokio 1.15.0
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── tower-service 0.3.1
0/0 0/0 1/1 0/0 0/0 ☢️ │ ├── tracing 0.1.29
0/0 0/0 0/0 0/0 0/0 ❓ │ └── want 0.3.0
1/1 16/16 1/1 0/0 0/0 ☢️ │ ├── log 0.4.14
0/0 22/22 2/2 0/0 1/1 ☢️ │ └── try-lock 0.2.3
1/1 16/16 1/1 0/0 0/0 ☢️ ├── log 0.4.14
0/0 0/2 0/0 0/0 0/0 ❓ ├── mime 0.3.16
0/0 0/0 0/0 0/0 0/0 ❓ ├── mime_guess 2.0.3
0/0 0/2 0/0 0/0 0/0 ❓ │ ├── mime 0.3.16
0/0 0/0 0/0 0/0 0/0 ❓ │ └── unicase 2.6.0
0/0 0/0 0/0 0/0 0/0 ❓ ├── multipart 0.18.0
0/0 80/100 0/0 0/0 6/8 ☢️ │ ├── buf_redux 0.8.4
36/37 2067/2140 0/0 0/0 16/16 ☢️ │ │ ├── memchr 2.4.1
0/0 15/15 0/0 0/0 0/0 ☢️ │ │ └── safemem 0.3.3
14/14 255/289 0/0 0/0 3/3 ☢️ │ ├── httparse 1.5.1
0/0 7/7 1/1 0/0 0/0 ☢️ │ ├── lazy_static 1.4.0
1/1 16/16 1/1 0/0 0/0 ☢️ │ ├── log 0.4.14
0/0 0/2 0/0 0/0 0/0 ❓ │ ├── mime 0.3.16
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── mime_guess 2.0.3
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── quick-error 1.2.3
0/0 30/30 0/0 0/0 0/0 ☢️ │ ├── rand 0.8.4
0/20 12/327 0/2 0/0 2/30 ☢️ │ │ ├── libc 0.2.112
1/1 16/16 1/1 0/0 0/0 ☢️ │ │ ├── log 0.4.14
0/0 0/0 0/0 0/0 0/0 ❓ │ │ ├── rand_chacha 0.3.1
2/2 636/712 0/0 0/0 17/25 ☢️ │ │ │ ├── ppv-lite86 0.2.15
0/0 15/15 0/0 0/0 0/0 ☢️ │ │ │ ├── rand_core 0.6.3
2/4 50/149 1/1 0/0 3/3 ☢️ │ │ │ │ ├── getrandom 0.2.3
0/0 0/0 0/0 0/0 0/0 ❓ │ │ │ │ │ ├── cfg-if 1.0.0
0/20 12/327 0/2 0/0 2/30 ☢️ │ │ │ │ │ └── libc 0.2.112
0/0 4/4 0/0 0/0 0/0 ☢️ │ │ │ │ └── serde 1.0.132
0/0 4/4 0/0 0/0 0/0 ☢️ │ │ │ └── serde 1.0.132
0/0 15/15 0/0 0/0 0/0 ☢️ │ │ ├── rand_core 0.6.3
0/0 4/4 0/0 0/0 0/0 ☢️ │ │ └── serde 1.0.132
0/0 15/15 0/0 0/0 0/0 ☢️ │ ├── safemem 0.3.3
0/0 36/82 0/0 0/0 0/0 ☢️ │ ├── tempfile 3.2.0
0/0 0/0 0/0 0/0 0/0 ❓ │ │ ├── cfg-if 1.0.0
0/20 12/327 0/2 0/0 2/30 ☢️ │ │ ├── libc 0.2.112
0/0 30/30 0/0 0/0 0/0 ☢️ │ │ ├── rand 0.8.4
0/0 0/79 0/0 0/0 0/0 ❓ │ │ └── remove_dir_all 0.5.3
0/3 0/162 0/0 0/0 0/0 🔒 │ └── twoway 0.1.8
36/37 2067/2140 0/0 0/0 16/16 ☢️ │ └── memchr 2.4.1
0/0 3/3 0/0 0/0 0/0 ☢️ ├── percent-encoding 2.1.0
0/0 8/484 1/60 1/1 0/43 ☢️ ├── pin-project 1.0.8
0/0 0/0 0/0 0/0 0/0 ❓ │ └── pin-project-internal 1.0.8
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── proc-macro2 1.0.34
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── quote 1.0.10
0/0 45/45 3/3 0/0 2/2 ☢️ │ └── syn 1.0.82
0/0 5/5 1/1 0/0 0/0 ☢️ ├── scoped-tls 1.0.0
0/0 4/4 0/0 0/0 0/0 ☢️ ├── serde 1.0.132
0/0 4/7 0/0 0/0 0/0 ☢️ ├── serde_json 1.0.73
0/0 37/42 1/1 0/0 0/0 ☢️ │ ├── indexmap 1.7.0
0/0 7/7 0/0 0/0 0/0 ☢️ │ ├── itoa 1.0.1
7/9 587/723 0/0 0/0 2/2 ☢️ │ ├── ryu 1.0.9
0/0 4/4 0/0 0/0 0/0 ☢️ │ └── serde 1.0.132
0/0 4/4 0/0 0/0 0/0 ☢️ ├── serde_urlencoded 0.7.0
0/0 2/2 0/0 0/0 0/0 ☢️ │ ├── form_urlencoded 1.0.1
0/0 0/0 0/0 0/0 0/0 ❓ │ │ ├── matches 0.1.9
0/0 3/3 0/0 0/0 0/0 ☢️ │ │ └── percent-encoding 2.1.0
0/0 1/1 0/0 0/0 0/0 ☢️ │ ├── itoa 0.4.8
7/9 587/723 0/0 0/0 2/2 ☢️ │ ├── ryu 1.0.9
0/0 4/4 0/0 0/0 0/0 ☢️ │ └── serde 1.0.132
20/25 1501/1834 96/102 1/1 63/69 ☢️ ├── tokio 1.15.0
0/0 0/0 4/4 0/0 0/0 ☢️ ├── tokio-stream 0.1.8
0/0 30/30 2/2 0/0 0/0 ☢️ │ ├── futures-core 0.3.19
0/0 8/167 0/0 0/0 0/0 ☢️ │ ├── pin-project-lite 0.2.7
20/25 1501/1834 96/102 1/1 63/69 ☢️ │ ├── tokio 1.15.0
2/2 333/350 5/5 0/0 6/6 ☢️ │ └── tokio-util 0.6.9
0/0 0/0 0/0 0/0 0/0 ❓ ├── tokio-tungstenite 0.15.0
0/5 427/498 22/23 0/0 6/10 ☢️ │ ├── futures-util 0.3.19
1/1 16/16 1/1 0/0 0/0 ☢️ │ ├── log 0.4.14
0/0 8/484 1/60 1/1 0/43 ☢️ │ ├── pin-project 1.0.8
20/25 1501/1834 96/102 1/1 63/69 ☢️ │ ├── tokio 1.15.0
0/0 1/1 0/0 0/0 0/0 ☢️ │ └── tungstenite 0.14.0
0/0 0/0 0/0 0/0 0/0 🔒 │ ├── base64 0.13.0
1/1 193/193 0/0 0/0 0/0 ☢️ │ ├── byteorder 1.4.3
17/17 538/630 11/13 1/1 15/19 ☢️ │ ├── bytes 1.1.0
0/0 161/165 10/10 0/0 2/2 ☢️ │ ├── http 0.2.5
14/14 255/289 0/0 0/0 3/3 ☢️ │ ├── httparse 1.5.1
1/1 16/16 1/1 0/0 0/0 ☢️ │ ├── log 0.4.14
0/0 30/30 0/0 0/0 0/0 ☢️ │ ├── rand 0.8.4
1/1 83/83 0/0 0/0 0/0 ☢️ │ ├── sha-1 0.9.8
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── thiserror 1.0.30
0/0 0/0 0/0 0/0 0/0 ❓ │ │ └── thiserror-impl 1.0.30
0/0 0/0 0/0 0/0 0/0 ❓ │ │ ├── proc-macro2 1.0.34
0/0 0/0 0/0 0/0 0/0 ❓ │ │ ├── quote 1.0.10
0/0 45/45 3/3 0/0 2/2 ☢️ │ │ └── syn 1.0.82
0/0 0/0 0/0 0/0 0/0 ❓ │ ├── url 2.2.2
0/0 2/2 0/0 0/0 0/0 ☢️ │ │ ├── form_urlencoded 1.0.1
0/0 0/0 0/0 0/0 0/0 ❓ │ │ ├── idna 0.2.3
0/0 0/0 0/0 0/0 0/0 ❓ │ │ │ ├── matches 0.1.9
0/0 0/0 0/0 0/0 0/0 🔒 │ │ │ ├── unicode-bidi 0.3.7
0/0 4/4 0/0 0/0 0/0 ☢️ │ │ │ │ └── serde 1.0.132
0/0 20/20 0/0 0/0 0/0 ☢️ │ │ │ └── unicode-normalization 0.1.19
0/0 0/0 0/0 0/0 0/0 🔒 │ │ │ └── tinyvec 1.5.1
0/0 4/4 0/0 0/0 0/0 ☢️ │ │ │ ├── serde 1.0.132
0/0 0/0 0/0 0/0 0/0 ❓ │ │ │ └── tinyvec_macros 0.1.0
0/0 0/0 0/0 0/0 0/0 ❓ │ │ ├── matches 0.1.9
0/0 3/3 0/0 0/0 0/0 ☢️ │ │ ├── percent-encoding 2.1.0
0/0 4/4 0/0 0/0 0/0 ☢️ │ │ └── serde 1.0.132
0/0 3/3 0/0 0/0 0/0 ☢️ │ └── utf-8 0.7.6
2/2 333/350 5/5 0/0 6/6 ☢️ ├── tokio-util 0.6.9
0/0 0/0 0/0 0/0 0/0 ❓ ├── tower-service 0.3.1
0/0 0/0 1/1 0/0 0/0 ☢️ └── tracing 0.1.29
119/164 9638/12678 225/326 13/14 237/351
error: Found 1 warnings
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment