Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Changelog

All notable changes to this project are documented in this file. This project
adheres to [Semantic Versioning](https://semver.org/).

## [5.0.0](https://github.com/gmoon/s3proxy/compare/v4.2.1...v5.0.0) (2026-10-31)

### ⚠ BREAKING CHANGES

* **errors:** `fetch()`, `send()`, and `init()` now reject with a sanitized
`S3ProxyError` (status `500`) for previously-unclassified errors instead of
the raw `S3ServiceException`/AWS error. The original error is preserved on
`err.cause` for server-side logging. The known mappings — `S3NotFound` (404),
`S3Forbidden` (403), `S3InvalidRange` (416) — are unchanged. Consumers that
branch on raw AWS error types or messages must read `err.cause` instead.
* **streaming:** a mid-stream S3 failure (after status and headers have already
been sent) now terminates (destroys) the response rather than `end()`-ing it,
so a truncated body surfaces as a broken connection instead of a silently
short "successful" response. Affects `pipe()`, `middleware()`, and the
static-site adapter.

### 🔒 Security

* sanitize unmapped S3 errors so AWS internals (bucket region/endpoint,
request id, bucket name) can no longer leak into proxied error responses, and
switch the core streaming path to `stream.pipeline()` so the S3 source socket
is torn down when a client disconnects mid-transfer
([#124](https://github.com/gmoon/s3proxy/pull/124))
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "s3proxy",
"version": "4.2.1",
"version": "5.0.0",
"description": "Streaming web proxy for AWS S3",
"main": "dist/src/index.js",
"types": "dist/src/index.d.ts",
Expand Down
Loading