Changes for version 1.6.0 - 2026-08-25

  • SECURITY FIXES
    • Added 'trust_proxies' configuration parameter to PAGI::FastAPI::Middleware::BotProtection, defaults to 0.
    • Added pow() reader method to PAGI::FastAPI::Middleware::BotProtection to expose the underlying PAGI::FastAPI::BotProtection::ProofOfWork instance for inspection and testing.
    • Fixed IP spoofing security vulnerability by ignoring untrusted 'X-Forwarded-For' headers unless 'trust_proxies' is explicitly enabled.
    • Properly extract the original client IP from comma-separated 'X-Forwarded-For' proxy chains when 'trust_proxies' is enabled.
  • TESTING
    • Added unit test: t/36-middleware_bot_protection_trust_proxies.t

Documentation

Modules

Asynchronous, Type-Safe Micro-Framework with Dependency Injection and OpenAPI & Swagger UI
Base Interface for PAGI::FastAPI Bot Protection
Stateless Proof-of-Work Bot Mitigation Engine
Request and Response Lifecycle Context for PAGI::FastAPI
Request Cookie Parsing Helper for PAGI::FastAPI
Dependency Injection Wrapper for PAGI::FastAPI
Asynchronous Proof-of-Work Bot Protection Middleware for PAGI::FastAPI
Typed Exception-to-Handler Dispatch for PAGI::FastAPI
Async Rate Limiting Middleware for PAGI::FastAPI
Pluggable Async Message Queue Facade for PAGI::FastAPI
Abstract Base Class for Message Queue Storage Drivers
Default In-Memory Storage Driver for PAGI::FastAPI::Queue
Abstract Base Class for Rate Limiting Storage Drivers
Default In-Memory Storage Driver for Rate Limiting
Base HTTP Response Class for PAGI::FastAPI
File Download Response for PAGI::FastAPI
HTML Response Class for PAGI::FastAPI
HTTP Redirect Response for PAGI::FastAPI
Server-Sent Events (SSE) Streaming Response for PAGI::FastAPI
Response Shape Validation and Filtering for PAGI::FastAPI
Path Parameter Validation for PAGI::FastAPI