# Changelog

All notable changes to this project will be documented in this file.

## [0.28.1] - 2026-04-22

### Documentation

- Encryption key header ([#416](https://github.com/s2-streamstore/s2/issues/416))

<!-- generated by git-cliff -->

## [0.28.0] - 2026-04-20

### Refactor

- [**breaking**] Replace encryption modes with stream cipher metadata and key-only headers ([#403](https://github.com/s2-streamstore/s2/issues/403))

<!-- generated by git-cliff -->

## [0.27.17] - 2026-04-17

### Bug Fixes

- Dashed string repr for AEGIS-256 and AES-256-GCM modes ([#400](https://github.com/s2-streamstore/s2/issues/400))

<!-- generated by git-cliff -->

## [0.27.16] - 2026-04-16

### Features

- Add `DecryptionFailed` error code ([#396](https://github.com/s2-streamstore/s2/issues/396))

<!-- generated by git-cliff -->

## [0.27.15] - 2026-04-15

### Refactor

- Remove implicit optional config resolution ([#389](https://github.com/s2-streamstore/s2/issues/389))

<!-- generated by git-cliff -->

## [0.27.14] - 2026-04-14

### Features

- Request-time data encryption ([#349](https://github.com/s2-streamstore/s2/issues/349))
- Enforce allowed encryption modes via stream config ([#376](https://github.com/s2-streamstore/s2/issues/376))

### Refactor

- Clarify encryption spec, mode, and format semantics ([#375](https://github.com/s2-streamstore/s2/issues/375))
- Decouple JSON extraction rejection from axum ([#348](https://github.com/s2-streamstore/s2/issues/348))

### Miscellaneous Tasks

- Ignore basin state when deserializing BasinInfo ([#350](https://github.com/s2-streamstore/s2/issues/350))

<!-- generated by git-cliff -->

## [0.27.13] - 2026-03-20

### Features

- Align basin info with stream info ([#338](https://github.com/s2-streamstore/s2/issues/338))

<!-- generated by git-cliff -->

## [0.27.12] - 2026-03-19

### Refactor

- Remove basin creating state ([#333](https://github.com/s2-streamstore/s2/issues/333))

### Miscellaneous Tasks

- Sync specs submodule ([#334](https://github.com/s2-streamstore/s2/issues/334))

<!-- generated by git-cliff -->

## [0.27.11] - 2026-03-15

### Bug Fixes

- Terminate framed stream after encoding errors ([#328](https://github.com/s2-streamstore/s2/issues/328))

<!-- generated by git-cliff -->

## [0.27.10] - 2026-03-13

### Performance

- Avoid intermediate SSE batch allocations ([#320](https://github.com/s2-streamstore/s2/issues/320))

<!-- generated by git-cliff -->

## [0.27.9] - 2026-03-04

### Features

- Add authn/authz error codes and surface token source in cli ([#286](https://github.com/s2-streamstore/s2/issues/286))

### Bug Fixes

- Bound decompressed frame payload size ([#288](https://github.com/s2-streamstore/s2/issues/288))

<!-- generated by git-cliff -->

## [0.27.8] - 2026-03-03

### Miscellaneous Tasks

- Update Cargo.toml dependencies

<!-- generated by git-cliff -->

## [0.27.7] - 2026-02-24

### Features

- Support creating resources from spec ([#239](https://github.com/s2-streamstore/s2/issues/239))

### Documentation

- Display default values for `create_stream_on_*` config ([#241](https://github.com/s2-streamstore/s2/issues/241))

<!-- generated by git-cliff -->

## [0.27.6] - 2026-02-15

### Miscellaneous Tasks

- Add crate-level doc comment ([#213](https://github.com/s2-streamstore/s2/issues/213))

<!-- generated by git-cliff -->

## [0.27.5] - 2026-02-15

### Miscellaneous Tasks

- Updated the following local packages: s2-common

<!-- generated by git-cliff -->

## [0.27.4] - 2026-02-12

### Miscellaneous Tasks

- Update Cargo.toml dependencies

<!-- generated by git-cliff -->

## [0.27.3] - 2026-02-05

### Miscellaneous Tasks

- Rejig versioning and release workflow ([#163](https://github.com/s2-streamstore/s2/issues/163))

<!-- generated by git-cliff -->

## [0.27.2] - 2026-02-05

<!-- generated by git-cliff -->

## [0.27.1] - 2026-02-04

<!-- generated by git-cliff -->

## [0.27.0] - 2026-02-03

<!-- generated by git-cliff -->

## [0.26.9] - 2026-02-02

<!-- generated by git-cliff -->

## [0.26.8] - 2026-01-30

<!-- generated by git-cliff -->

## [0.26.7] - 2026-01-30

<!-- generated by git-cliff -->

## [0.26.6] - 2026-01-30

<!-- generated by git-cliff -->

## [0.26.5] - 2026-01-30

<!-- generated by git-cliff -->

## [0.26.4] - 2026-01-29

<!-- generated by git-cliff -->

## [0.26.3] - 2026-01-29

<!-- generated by git-cliff -->

## [0.26.2] - 2026-01-29

<!-- generated by git-cliff -->

## [0.26.1] - 2026-01-29

<!-- generated by git-cliff -->

## [0.26.0] - 2026-01-28

### Bug Fixes

- *(openapi)* Docs ([#96](https://github.com/s2-streamstore/s2/issues/96))

### Miscellaneous Tasks

- Sync specs submodule ([#97](https://github.com/s2-streamstore/s2/issues/97))

<!-- generated by git-cliff -->
