From ae73658c9c12f357cbfe8f510c8498d7a9baeef6 Mon Sep 17 00:00:00 2001 From: ernolf Date: Sun, 19 Jul 2026 03:21:08 +0200 Subject: [PATCH] build(release): bump version to 1.0.0 Signed-off-by: ernolf --- CHANGELOG.md | 27 ++++++++++++++++++++++++++- appinfo/info.xml | 2 +- composer.json | 2 +- composer.lock | 2 +- 4 files changed, 29 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 079987c..6d72fdc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,30 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.0.0] - 2026-07-19 + +### Breaking + +- All config keys were renamed to the `audit_http_client_*` scheme (`audit_http_client_logdir`, `…_loglevel`, `…_format`, `…_exclude_domains`); the old 0.2.0 key names are no longer read, there is no fallback — rename them in config.php when upgrading. + +### Added + +- Redact sensitive request and response headers by default +- Redact credentials from logged URIs (query parameters and path secrets) + +### Fixed + +- Declare supported PHP versions +- Adopt the optional handler parameter added to IClientService in NC 35 +- Replace the memcache stats store with a process-local array +- Report immediate-path compression stats honestly and injection failures louder +- Make middleware injection idempotent and header lookups case-insensitive +- Clamp the log level and count rewound stream reads once +- Substitute broken UTF-8 in log entries instead of dropping them; rethrow non-throwable rejection reasons cleanly +- Derive stream consumption from the read position and report detached bodies as unknown + +[1.0.0]: https://github.com/ernolf/admin_audit_http_client/releases/tag/v1.0.0 + ## [0.2.0] - 2026-05-12 ### Added @@ -17,6 +41,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - `audit_http_client_logs` config key (string, default `'both'`): selects log output format — `'json'`, `'plain'`, or `'both'` - `audit_http_client_logs_exclude_domain` config key (array, default `[]`): list of hostnames to exclude from logging; supports wildcard prefix (`*.example.com`) +[0.2.0]: https://github.com/ernolf/admin_audit_http_client/releases/tag/v0.2.0 + ## [0.1.0] - 2026-05-06 ### Added @@ -29,5 +55,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - `logdir_audit_http_client` config key with automatic fallback chain: explicit override → sibling of `logfile_audit` → sibling of `logfile` → `/admin_audit_http_client_logs/` - Log entries contain: request ID (`X-Nextcloud-ReqId`), timestamp, method, URI, HTTP version, status, request headers, response headers, cURL handler stats (`size_download`, `speed_download`, `total_time`, etc.), compression stats (`encoding`, `compressed_bytes`, `decompressed_bytes`, `ratio`) -[0.2.0]: https://github.com/ernolf/admin_audit_http_client/releases/tag/v0.2.0 [0.1.0]: https://github.com/ernolf/admin_audit_http_client/releases/tag/v0.1.0 diff --git a/appinfo/info.xml b/appinfo/info.xml index 2feb013..819135f 100644 --- a/appinfo/info.xml +++ b/appinfo/info.xml @@ -12,7 +12,7 @@ Extends admin_audit with logging of all outgoing HTTP requests made by Nextcloud's internal Guzzle-based HTTP client. Logs include method, URI, status code, HTTP version, request and response headers, cURL transfer statistics, and compression metrics. Credential-bearing headers such as Authorization and Cookie are always redacted. No UI, no routes — pure audit logging into per-host JSON and plain-text files below a configurable log directory. - 0.2.0 + 1.0.0 agpl [ernolf] - Raphael Gradenwitz AdminAuditHttpClient diff --git a/composer.json b/composer.json index 0ff8842..40c3633 100644 --- a/composer.json +++ b/composer.json @@ -1,7 +1,7 @@ { "name": "ernolf/admin_audit_http_client", "type": "nextcloud-app", - "version": "0.2.0", + "version": "1.0.0", "license": "AGPL-3.0-or-later", "config": { "platform": { diff --git a/composer.lock b/composer.lock index 45812f9..9c8d11d 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "b1148b2371b7a476e8f881d4b5e9b020", + "content-hash": "bbb4f8e4f1799b164dcb92dcf3b854dc", "packages": [ { "name": "bamarni/composer-bin-plugin",