diff --git a/Makefile b/Makefile index abffbac..99b48b8 100644 --- a/Makefile +++ b/Makefile @@ -26,7 +26,7 @@ BUILD_DIR := $(CURDIR)/build # the package version from there directly. The C code picks up VERSION # via the generated src/version.h (written by the version-header target # below and depended on by the module build). -VERSION := 0.7.2 +VERSION := 0.8.0 NGINX_SRC ?= diff --git a/debian/changelog b/debian/changelog index e5db033..8134236 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,23 @@ +nginx-ipng-stats-plugin (0.8.0-1) unstable; urgency=medium + + * Pre-release v0.8.0. + - Log handler now accounts for request bodies that nginx + discarded before any handler could read them (rate-limit + 403, auth_request denial, 413 on fixed Content-Length, + early `return 4xx;` on POST). Those paths route through + ngx_http_discard_request_body / HTTP/2 skip_data, both of + which drop bytes without touching r->request_length — + leaving nginx_ipng_bytes_in_total blind to most of the + wire on rate-limited POST-heavy workloads (observed ~20x + gap against btop on a CT-log-style box). When + r->discard_body is set and the client advertised a + Content-Length, we now add content_length_n to bin_sz. + Normal 200-OK POSTs are unchanged. See docs/nginx-issues.md + for the full analysis of which nginx paths update + r->request_length and which don't. + + -- Pim van Pelt Wed, 22 Apr 2026 09:59:53 +0200 + nginx-ipng-stats-plugin (0.7.2-1) unstable; urgency=medium * Pre-release v0.7.2.