Commit Graph

3 Commits

Author SHA1 Message Date
Claudio Ortolina 6f865a7b4d ML-173: replace aws-sdk with aws4 + built-in fetch
Replace @aws-sdk/client-s3 (~150 transitive deps, ~14MB) with aws4
(0 transitive deps, ~40KB) and Node.js built-in fetch+crypto for
S3 ListObjectsV2 against Hetzner Object Storage.

- New s3-client.ts: SigV4 signing via aws4, regex-based XML parsing
  with namespace tolerance, pagination support, 5 error categories
- 29 unit tests (node:test, zero-dependency) covering signing,
  parsing, entities, missing fields, pagination, abort, errors
- Settlement guard for double done(null) on abort
- XML entity decoding and regex metacharacter escaping
- Dependency surface: 150 packages → 1 (aws4, single-file, auditable)
2026-05-09 10:46:07 +01:00
Claudio Ortolina d3459a28f1 Update npm dependencies
npm:
  @aws-sdk/client-s3 3.1041.0 => 3.1045.0
  @smithy/config-resolver 4.4.17 => 4.5.0
  @smithy/core 3.23.17 => 3.24.0
  @smithy/credential-provider-imds 4.2.14 => 4.3.0
  @smithy/eventstream-serde-browser 4.2.14 => 4.3.0
  @smithy/eventstream-serde-config-resolver 4.3.14 => 4.4.0
  @smithy/eventstream-serde-node 4.2.14 => 4.3.0
  @smithy/fetch-http-handler 5.3.17 => 5.4.0
  @smithy/hash-blob-browser 4.2.15 => 4.3.0
  @smithy/hash-node 4.2.14 => 4.3.0
  @smithy/hash-stream-node 4.2.14 => 4.3.0
  @smithy/invalid-dependency 4.2.14 => 4.3.0
  @smithy/is-array-buffer 4.2.2 => 4.3.0
  @smithy/md5-js 4.2.14 => 4.3.0
  @smithy/middleware-content-length 4.2.14 => 4.3.0
  @smithy/middleware-endpoint 4.4.32 => 4.5.0
  @smithy/middleware-retry 4.5.7 => 4.6.0
  @smithy/middleware-serde 4.2.20 => 4.3.0
  @smithy/middleware-stack 4.2.14 => 4.3.0
  @smithy/node-config-provider 4.3.14 => 4.4.0
  @smithy/node-http-handler 4.6.1 => 4.7.0
  @smithy/property-provider 4.2.14 => 4.3.0
  @smithy/protocol-http 5.3.14 => 5.4.0
  @smithy/shared-ini-file-loader 4.4.9 => 4.5.0
  @smithy/signature-v4 5.3.14 => 5.4.0
  @smithy/smithy-client 4.12.13 => 4.13.0
  @smithy/url-parser 4.2.14 => 4.3.0
  @smithy/util-base64 4.3.2 => 4.4.0
  @smithy/util-body-length-browser 4.2.2 => 4.3.0
  @smithy/util-body-length-node 4.2.3 => 4.3.0
  @smithy/util-config-provider 4.2.2 => 4.3.0
  @smithy/util-defaults-mode-browser 4.3.49 => 4.4.0
  @smithy/util-defaults-mode-node 4.2.54 => 4.3.0
  @smithy/util-endpoints 3.4.2 => 3.5.0
  @smithy/util-middleware 4.2.14 => 4.3.0
  @smithy/util-retry 4.3.6 => 4.4.0
  @smithy/util-stream 4.5.25 => 4.6.0
  @smithy/util-utf8 4.2.2 => 4.3.0
  @smithy/util-waiter 4.3.0 => 4.4.0
  fast-xml-builder 1.1.5 => 1.2.0
  strnum 2.2.3 => 2.3.0
  @smithy/chunked-blob-reader 5.2.2 => removed
  @smithy/chunked-blob-reader-native 4.2.3 => removed
  @smithy/eventstream-codec 4.2.14 => removed
  @smithy/querystring-builder 4.2.14 => removed
  @smithy/querystring-parser 4.2.14 => removed
  @smithy/service-error-classification 4.3.1 => removed
  @smithy/uuid 1.1.2 => removed
  xml-naming added 0.1.0
2026-05-08 18:19:43 +01:00
Claudio Ortolina 179ac35130 Add pi extension to browse database backups 2026-05-01 22:23:44 +01:00