Repository Analysis

actix/actix-web

Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust.

5.7 Low AI signal View on GitHub
5.7
Adjusted Score
5.7
Raw Score
100%
Time Factor
2026-05-28
Last Push
24,654
Stars
Rust
Language
93,827
Lines of Code
381
Files
506
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 0HIGH 0MEDIUM 11LOW 495

Pattern Findings

506 matches across 4 categories. Click a row to expand file-level details.

Over-Commented Block480 hits · 472 pts
SeverityFileLineSnippet
LOWactix-http/examples/tls_rustls.rs1//! Demonstrates TLS configuration (via Rustls) for HTTP/1.1 and HTTP/2 connections.
LOWactix-http/src/error.rs181
LOWactix-http/src/error.rs261
LOWactix-http/src/config.rs21/// Default HTTP/1 response write buffer size.
LOWactix-http/src/config.rs81
LOWactix-http/src/lib.rs1//! HTTP types and services for the Actix ecosystem.
LOWactix-http/src/service.rs41/// # Automatic HTTP Version Selection
LOWactix-http/src/keep_alive.rs1use std::time::Duration;
LOWactix-http/src/extensions.rs41 pub fn new() -> Extensions {
LOWactix-http/src/extensions.rs61 .insert(TypeId::of::<T>(), Box::new(val))
LOWactix-http/src/extensions.rs81 /// ```
LOWactix-http/src/extensions.rs101 pub fn get_mut<T: 'static>(&mut self) -> Option<&mut T> {
LOWactix-http/src/extensions.rs121 pub fn get_or_insert<T: 'static>(&mut self, value: T) -> &mut T {
LOWactix-http/src/extensions.rs141 .entry(TypeId::of::<T>())
LOWactix-http/src/extensions.rs161 pub fn remove<T: 'static>(&mut self) -> Option<T> {
LOWactix-http/src/builder.rs101 /// Set client request timeout (for first request).
LOWactix-http/src/builder.rs141 #[deprecated(since = "3.0.0", note = "Renamed to `client_disconnect_timeout`.")]
LOWactix-http/src/responses/builder.rs21///
LOWactix-http/src/responses/builder.rs61 ///
LOWactix-http/src/responses/builder.rs101 }
LOWactix-http/src/body/size.rs1/// Body size hint.
LOWactix-http/src/body/size.rs21
LOWactix-http/src/body/message_body.rs21/// - Empty body: `()`
LOWactix-http/src/body/message_body.rs41/// fn size(&self) -> BodySize {
LOWactix-http/src/body/message_body.rs61
LOWactix-http/src/body/message_body.rs81 /// method again may panic, block forever, or cause other kinds of problems; this trait places
LOWactix-http/src/body/either.rs21 /// middleware's own error responses use the default `Right` variant of `BoxBody`. Of course,
LOWactix-http/src/body/utils.rs21/// use bytes::Bytes;
LOWactix-http/src/body/utils.rs41#[display("limit exceeded while collecting body bytes")]
LOWactix-http/src/body/utils.rs61/// assert!(bytes.is_empty());
LOWactix-http/src/requests/request.rs181
LOWactix-http/src/h1/decoder.rs501 ///
LOWactix-http/src/h1/dispatcher.rs1021 "dispatcher should not be in keep-alive phase if state is not none: {:?}",
LOWactix-http/src/h1/dispatcher.rs1101 return Ok(false);
LOWactix-http/src/header/map.rs1//! A multi-value [`HeaderMap`] and its iterators.
LOWactix-http/src/header/map.rs21///
LOWactix-http/src/header/map.rs81
LOWactix-http/src/header/map.rs101 HeaderMap::default()
LOWactix-http/src/header/map.rs161 /// map.insert(header::ACCEPT, HeaderValue::from_static("text/plain"));
LOWactix-http/src/header/map.rs181 ///
LOWactix-http/src/header/map.rs201 /// map.insert(header::ACCEPT, HeaderValue::from_static("text/plain"));
LOWactix-http/src/header/map.rs241 /// consistent for each call to `get` if the map has not changed.
LOWactix-http/src/header/map.rs261 /// assert!(map.get(header::HOST).is_none());
LOWactix-http/src/header/map.rs281 /// let mut map = HeaderMap::new();
LOWactix-http/src/header/map.rs301 /// Returns an iterator over all values associated with a header name.
LOWactix-http/src/header/map.rs321 /// assert!(set_cookies_iter.next().is_none());
LOWactix-http/src/header/map.rs341 ///
LOWactix-http/src/header/map.rs361 /// # use actix_http::header::{self, HeaderMap, HeaderValue};
LOWactix-http/src/header/map.rs381 /// let removed = map.insert(header::ACCEPT, HeaderValue::from_static("text/plain"));
LOWactix-http/src/header/map.rs401 /// let mut map = HeaderMap::new();
LOWactix-http/src/header/map.rs421 }
LOWactix-http/src/header/map.rs441 /// assert!(removed.next().is_none());
LOWactix-http/src/header/map.rs461 Ok(Cow::Borrowed(name)) => self.inner.remove(name),
LOWactix-http/src/header/map.rs481 /// assert!(map.is_empty());
LOWactix-http/src/header/map.rs501 ///
LOWactix-http/src/header/map.rs521 /// let mut iter = map.iter();
LOWactix-http/src/header/map.rs541 }
LOWactix-http/src/header/map.rs561 /// assert_eq!(keys.len(), 2);
LOWactix-http/src/header/map.rs601
LOWactix-http/src/header/common.rs1//! Common header names not defined in [`http`].
420 more matches not shown…
Decorative Section Separators8 hits · 36 pts
SeverityFileLineSnippet
MEDIUMactix-web/src/middleware/mod.rs87//! ╭────────────────────┼────╮
MEDIUMactix-web/src/middleware/mod.rs89//! │ ╭──────────────────┼───╮│
MEDIUMactix-web/src/middleware/mod.rs91//! │ │ ╭────────────────┼──╮││
MEDIUMactix-web/src/middleware/mod.rs93//! │ │ │ ╭──────────────┼─╮│││
MEDIUMactix-web/src/middleware/mod.rs99//! │ │ │ ╰──────────────┼─╯│││
MEDIUMactix-web/src/middleware/mod.rs100//! │ │ ╰────────────────┼──╯││
MEDIUMactix-web/src/middleware/mod.rs101//! │ ╰──────────────────┼───╯│
MEDIUMactix-web/src/middleware/mod.rs102//! ╰────────────────────┼────╯
Fake / Example Data15 hits · 21 pts
SeverityFileLineSnippet
LOWactix-multipart/src/test.rs66/// Bytes::from_static(b"Lorem ipsum."),
LOWactix-multipart/src/test.rs72/// assert!(find(&body, b"Lorem ipsum.").is_some());
LOWactix-multipart/src/test.rs267 Bytes::from_static(b"Lorem ipsum dolor\nsit ame."),
LOWactix-multipart/src/test.rs281 Lorem ipsum dolor\n\
LOWactix-multipart/src/test.rs291 Bytes::from_static(b"Lorem ipsum dolor\nsit ame."),
LOWactix-multipart/src/test.rs301 Lorem ipsum dolor\n\
LOWactix-multipart/src/test.rs309 TestFormField::new("foo", Bytes::from_static(b"Lorem ipsum dolor\nsit ame.")),
LOWactix-multipart/src/test.rs320 Lorem ipsum dolor\n\
LOWactix-multipart/src/test.rs338 Bytes::from_static(b"Lorem ipsum dolor\nsit ame."),
LOWactix-web/src/types/readlines.rs185 b"Lorem Ipsum is simply dummy text of the printing and typesetting\n\
LOWactix-web/src/types/readlines.rs186 industry. Lorem Ipsum has been the industry's standard dummy\n\
LOWactix-web/src/types/readlines.rs187 Contrary to popular belief, Lorem Ipsum is not simply random text.",
LOWactix-web/src/types/readlines.rs194 "Lorem Ipsum is simply dummy text of the printing and typesetting\n"
LOWactix-web/src/types/readlines.rs199 "industry. Lorem Ipsum has been the industry's standard dummy\n"
LOWactix-web/src/types/readlines.rs204 "Contrary to popular belief, Lorem Ipsum is not simply random text."
AI Slop Vocabulary3 hits · 9 pts
SeverityFileLineSnippet
MEDIUMactix-web/src/extract.rs22/// leverage extractors when implementing middlewares.
MEDIUMactix-web/src/app.rs69 /// Any [`Data<T>`] type added here can utilize its extractor implementation in handlers.
MEDIUMactix-web/src/guard/mod.rs9//! Fundamentally, a guard is a predicate function that receives a reference to a request context