rust-proxmox-s3-client (1.4.0-1) trixie; urgency=medium

  * change threshold callback from global to per-instance.

 -- Proxmox Support Team <support@proxmox.com>  Fri, 10 Apr 2026 01:18:08 +0200

rust-proxmox-s3-client (1.3.0-1) trixie; urgency=medium

  * fix Content-Type for put and copy object requests, use the IANA registered
    `application/octet-stream` instead of the non-standard `binary/octet`.
    Also set Content-Type explicitly in copy_object to avoid failures with S3
    providers that drop source metadata on REPLACE directive.

  * add persistent shared request counters, tracking API requests per method
    and upload/download traffic volume via shared memory mappings. Counters
    are periodically flushed to disk and synced on client drop.

  * add configurable notification thresholds for request counters, triggering
    a callback when a counter exceeds its threshold value.

 -- Proxmox Support Team <support@proxmox.com>  Wed, 01 Apr 2026 23:24:35 +0200

rust-proxmox-s3-client (1.2.6-1) trixie; urgency=medium

  * early return when request timeout deadline reached

  * move exponential backoff to after the response state check

  * fix #6858: s3-client: retry request on 500, 503 and 504 status codes

  * fix double URI encoding of copy_object destination key

  * return dedicated error type for delete object response

  * extend provider quirks by delete objects via delete object

  * return list of errors when deleting by prefix

  * add proxy configuration as optional client option

 -- Proxmox Support Team <support@proxmox.com>  Wed, 11 Mar 2026 15:40:37 +0100

rust-proxmox-s3-client (1.2.5-1) trixie; urgency=medium

  * s3-client: make truncation flag optional in list object v2 response

 -- Proxmox Support Team <support@proxmox.com>  Fri, 16 Jan 2026 09:09:55 +0100

rust-proxmox-s3-client (1.2.4-1) stable; urgency=medium

  * make storage class in list objects v2 response optional, as some providers
    (e.g. Google cloud) do not include this field.

  * fix #7008: drop unused optional object list v2 response fields.

  * add shared rate-limiter via https connector.

 -- Proxmox Support Team <support@proxmox.com>  Fri, 21 Nov 2025 19:10:01 +0100

rust-proxmox-s3-client (1.2.3-1) stable; urgency=medium

  * fix #6906: s3-client: conditionally set Content-Length header

 -- Proxmox Support Team <support@proxmox.com>  Tue, 14 Oct 2025 15:06:38 +0200

rust-proxmox-s3-client (1.2.2-1) trixie; urgency=medium

  * drop non-ambiguous mention of chunks in error message.
  * bump s3 request timeout from 1 minute to 30 minutes, which would allow an
    average download rate of about 2.3 KiB/s for a 4 MiB data blob, which is
    about the maximum we currently download in one go.
  * add retry logic for transient client errors using an exponentially
    increasing backoff time and a maximum of 3 tries for the retries.

 -- Proxmox Support Team <support@proxmox.com>  Mon, 15 Sep 2025 21:15:36 +0200

rust-proxmox-s3-client (1.2.1-1) trixie; urgency=medium

  * update proxmox-schema to 5.0.0

 -- Proxmox Support Team <support@proxmox.com>  Thu, 04 Sep 2025 10:44:40 +0200

rust-proxmox-s3-client (1.2.0-1) stable; urgency=medium

  * expose default timeout for s3 api requests

  * dynamically calculate put request timeout based on payload

  * allow setting custom timeout when sending requests

  * properly uri encode request query parameters

  * drop to restrictive minimum length check in region schema

 -- Proxmox Support Team <support@proxmox.com>  Mon, 25 Aug 2025 14:16:46 +0200

rust-proxmox-s3-client (1.1.1-1) stable; urgency=medium

  * s3-client: fix non-optional date header for api response parsing

 -- Proxmox Support Team <support@proxmox.com>  Mon, 11 Aug 2025 14:21:37 +0200

rust-proxmox-s3-client (1.1.0-1) trixie; urgency=medium

  * don't discriminate 403 status code for get-object response, it's meaning
    is provider dependent and cannot be derived in a generic fashion.

  * conditionally compile by `api-types` feature.

 -- Proxmox Support Team <support@proxmox.com>  Wed, 06 Aug 2025 19:11:08 +0200

rust-proxmox-s3-client (1.0.7-1) trixie; urgency=medium

  * extend client config and options by optional provider specific S3 protocol
    quirks.

  * various refactoring and code clean ups.

 -- Proxmox Support Team <support@proxmox.com>  Tue, 05 Aug 2025 16:27:14 +0200

rust-proxmox-s3-client (1.0.6-1) trixie; urgency=medium

  * restrict bucket template pattern to start of endpoint url.

  * implement list buckets method.

  * make bucket name optional in S3 client options.

  * api types: add bucket list item type.

 -- Proxmox Support Team <support@proxmox.com>  Thu, 31 Jul 2025 14:38:45 +0200

rust-proxmox-s3-client (1.0.5-1) trixie; urgency=medium

  * api types: make regex for S3 region more flexible, to allow e.g. accessing
    Hetzner S3 object storage.

 -- Proxmox Support Team <support@proxmox.com>  Fri, 25 Jul 2025 15:27:20 +0200

rust-proxmox-s3-client (1.0.4-1) trixie; urgency=medium

  * fix invalid request for empty delete-objects call.

  * log error response body for invalid request status codes to help
    debugging.

 -- Proxmox Support Team <support@proxmox.com>  Wed, 23 Jul 2025 13:04:33 +0200

rust-proxmox-s3-client (1.0.3-1) trixie; urgency=medium

  * merge secrets config with client config

  * split config api type into 3 config structs

 -- Proxmox Support Team <support@proxmox.com>  Tue, 22 Jul 2025 21:42:10 +0200

rust-proxmox-s3-client (1.0.2-1) trixie; urgency=medium

  * check the maximum allowed length of the S3 object key property.

 -- Proxmox Support Team <support@proxmox.com>  Mon, 21 Jul 2025 20:35:36 +0200

rust-proxmox-s3-client (1.0.1-1) trixie; urgency=medium

  * refacout out wrap upload with retry into dedicated methods

 -- Proxmox Support Team <support@proxmox.com>  Mon, 21 Jul 2025 17:26:37 +0200

rust-proxmox-s3-client (1.0.0-1) trixie; urgency=medium

  * initial packaging

 -- Proxmox Support Team <support@proxmox.com>  Mon, 07 Jul 2025 09:33:10 +0200
