|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to CipherStash Proxy will be documented in this file. |
| 4 | + |
| 5 | +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). |
| 6 | + |
| 7 | +## [Unreleased] |
| 8 | + |
| 9 | +## [2.1.20] - 2026-01-29 |
| 10 | + |
| 11 | +### Added |
| 12 | + |
| 13 | +- **Slow statement logging**: Enable with `CS_LOG__SLOW_STATEMENTS=true` to log detailed timing breakdowns when queries exceed a configurable threshold (default 2 seconds). Includes breakdown of parse, encrypt, server wait, and decrypt phases. |
| 14 | +- **Prometheus slow statement counter**: New `cipherstash_proxy_slow_statements_total` metric increments when slow statements are detected. |
| 15 | +- **Prometheus histogram labels**: Duration histograms now include `statement_type`, `protocol`, `mapped`, and `multi_statement` labels for granular performance analysis. |
| 16 | +- **Term filters for STE-VEC indexes**: Support for `term_filters` configuration in `eql_v2.add_search_config()`, enabling case-insensitive JSONB queries with the `downcase` filter. |
| 17 | + |
| 18 | +### Changed |
| 19 | + |
| 20 | +- Updated `cipherstash-client` to v0.32.2. |
| 21 | +- GitHub Actions jobs now timeout after 30 minutes. |
| 22 | +- ARM64 builds migrated to Blacksmith runners. |
| 23 | + |
| 24 | +## [2.1.9] - 2026-01-10 |
| 25 | + |
| 26 | +### Added |
| 27 | + |
| 28 | +- Encryption sanity checks for improved error detection. |
| 29 | +- Developer documentation updates. |
| 30 | + |
| 31 | +### Changed |
| 32 | + |
| 33 | +- Updated `cipherstash-client` to v0.31.1. |
| 34 | + |
| 35 | +## [2.1.8] - 2025-12-15 |
| 36 | + |
| 37 | +### Changed |
| 38 | + |
| 39 | +- Refactored EQL encryption logic. |
| 40 | +- JSONB containment operator transformation improvements. |
| 41 | +- Testing across multiple PostgreSQL versions. |
| 42 | + |
| 43 | +## [2.1.7] - 2025-11-27 |
| 44 | + |
| 45 | +### Added |
| 46 | + |
| 47 | +- Security documentation. |
| 48 | + |
| 49 | +### Changed |
| 50 | + |
| 51 | +- Improved ZeroKMS error handling. |
| 52 | +- Database connection CLI arguments now optional. |
| 53 | + |
| 54 | +## [2.1.6] - 2025-09-05 |
| 55 | + |
| 56 | +### Fixed |
| 57 | + |
| 58 | +- Accurate cipher cache sizing. |
| 59 | +- JSONB encrypted type protocol fixes. |
| 60 | + |
| 61 | +### Changed |
| 62 | + |
| 63 | +- Module restructuring. |
| 64 | + |
| 65 | +## [2.1.5] - 2025-08-21 |
| 66 | + |
| 67 | +### Added |
| 68 | + |
| 69 | +- `SET` command for `keyset_id` configuration. |
| 70 | +- Configurable cipher caching using async Moka. |
| 71 | + |
| 72 | +## [2.1.4] - 2025-08-08 |
| 73 | + |
| 74 | +### Changed |
| 75 | + |
| 76 | +- Updated EQL to v2.1.8. |
| 77 | + |
| 78 | +## [2.1.3] - 2025-08-01 |
| 79 | + |
| 80 | +### Added |
| 81 | + |
| 82 | +- Helm chart support. |
| 83 | +- JSONB operator integration tests. |
| 84 | +- Comprehensive proxy/EQL showcase crate. |
| 85 | + |
| 86 | +## [2.1.2] - 2025-07-16 |
| 87 | + |
| 88 | +### Fixed |
| 89 | + |
| 90 | +- Common Table Expression (CTE) table resolution in EQL mapper. |
| 91 | + |
| 92 | +## [2.1.1] - 2025-07-15 |
| 93 | + |
| 94 | +### Added |
| 95 | + |
| 96 | +- JSON indexing for EQL v2. |
| 97 | +- Prometheus metrics collection. |
| 98 | +- Multiple integration test frameworks. |
| 99 | + |
| 100 | +## [2.0.10] - 2025-06-26 |
| 101 | + |
| 102 | +### Added |
| 103 | + |
| 104 | +- `SET` command to disable mapping. |
| 105 | + |
| 106 | +## [2.0.9] - 2025-06-20 |
| 107 | + |
| 108 | +### Changed |
| 109 | + |
| 110 | +- Upgraded container base image to Ubuntu 25.10. |
| 111 | +- Updated sqltk dependency to v0.10.0. |
| 112 | + |
| 113 | +## [2.0.8] - 2025-06-18 |
| 114 | + |
| 115 | +### Added |
| 116 | + |
| 117 | +- Version string sent to ZeroKMS/CTS requests. |
| 118 | + |
| 119 | +### Fixed |
| 120 | + |
| 121 | +- Type-related issues in sqlparser. |
| 122 | + |
| 123 | +### Changed |
| 124 | + |
| 125 | +- Release workflow now triggers on release events. |
| 126 | + |
| 127 | +## [2.0.7] - 2025-06-12 |
| 128 | + |
| 129 | +### Added |
| 130 | + |
| 131 | +- Language-specific tests in integration suite. |
| 132 | +- PostgreSQL custom and domain type identifier handling. |
| 133 | + |
| 134 | +### Fixed |
| 135 | + |
| 136 | +- Docker image build processes in GitHub Actions. |
| 137 | + |
| 138 | +## [2.0.6] - 2025-06-09 |
| 139 | + |
| 140 | +### Added |
| 141 | + |
| 142 | +- TLS and Docker configuration documentation. |
| 143 | +- Expanded test coverage for order and group operations. |
| 144 | + |
| 145 | +### Changed |
| 146 | + |
| 147 | +- URL encoding for usernames in Docker entrypoint. |
| 148 | +- Preference for CRN over workspace_id and region. |
| 149 | + |
| 150 | +### Removed |
| 151 | + |
| 152 | +- Order and group transformers. |
| 153 | + |
| 154 | +## [2.0.5] - 2025-05-27 |
| 155 | + |
| 156 | +### Fixed |
| 157 | + |
| 158 | +- Cache usage in release artifact building. |
| 159 | + |
| 160 | +## [2.0.4] - 2025-05-26 |
| 161 | + |
| 162 | +### Added |
| 163 | + |
| 164 | +- OIDC support. |
| 165 | + |
| 166 | +### Fixed |
| 167 | + |
| 168 | +- Special character handling in database configuration. |
| 169 | +- "Insufficient data left in message" errors with null values. |
| 170 | + |
| 171 | +## [2.0.3] - 2025-05-26 |
| 172 | + |
| 173 | +### Fixed |
| 174 | + |
| 175 | +- Tests now ignore `CS_` environment variables during configuration validation. |
| 176 | + |
| 177 | +### Changed |
| 178 | + |
| 179 | +- Added environment debugging to AWS Marketplace release workflow. |
| 180 | + |
| 181 | +## [2.0.2] - 2025-05-22 |
| 182 | + |
| 183 | +### Added |
| 184 | + |
| 185 | +- Multi-platform Docker image builds. |
| 186 | + |
| 187 | +### Changed |
| 188 | + |
| 189 | +- Updated EQL to v2.0.1. |
| 190 | + |
| 191 | +## [2.0.1] - 2025-05-21 |
| 192 | + |
| 193 | +### Added |
| 194 | + |
| 195 | +- Encryption configuration validation. |
| 196 | +- pgbench performance testing integration. |
| 197 | +- ZeroKMS and CTS host configuration options. |
| 198 | +- `GROUP BY` SQL transformations. |
| 199 | +- EQL v2 decryption support. |
| 200 | +- Enhanced column configuration verification. |
| 201 | + |
| 202 | +### Fixed |
| 203 | + |
| 204 | +- Connection termination messaging. |
| 205 | + |
| 206 | +### Changed |
| 207 | + |
| 208 | +- Upgraded to Rust 1.86.0 compatibility. |
| 209 | +- Upgraded sqltk to v0.8.0. |
| 210 | + |
| 211 | +## [2.0.0] - 2025-03-27 |
| 212 | + |
| 213 | +### Added |
| 214 | + |
| 215 | +- Initial release of CipherStash Proxy. |
| 216 | +- Transparent proxy for PostgreSQL with automatic encryption/decryption. |
| 217 | +- Support for queries over encrypted values (equality, comparison, ordering). |
| 218 | +- Docker container deployment. |
| 219 | +- Integration with CipherStash ZeroKMS. |
| 220 | +- Encrypt Query Language (EQL) for indexing and searching encrypted data. |
| 221 | + |
| 222 | +[Unreleased]: https://github.com/cipherstash/proxy/compare/v2.1.20...HEAD |
| 223 | +[2.1.20]: https://github.com/cipherstash/proxy/releases/tag/v2.1.20 |
| 224 | +[2.1.9]: https://github.com/cipherstash/proxy/releases/tag/v2.1.9 |
| 225 | +[2.1.8]: https://github.com/cipherstash/proxy/releases/tag/v2.1.8 |
| 226 | +[2.1.7]: https://github.com/cipherstash/proxy/releases/tag/v2.1.7 |
| 227 | +[2.1.6]: https://github.com/cipherstash/proxy/releases/tag/v2.1.6 |
| 228 | +[2.1.5]: https://github.com/cipherstash/proxy/releases/tag/v2.1.5 |
| 229 | +[2.1.4]: https://github.com/cipherstash/proxy/releases/tag/v2.1.4 |
| 230 | +[2.1.3]: https://github.com/cipherstash/proxy/releases/tag/v2.1.3 |
| 231 | +[2.1.2]: https://github.com/cipherstash/proxy/releases/tag/v2.1.2 |
| 232 | +[2.1.1]: https://github.com/cipherstash/proxy/releases/tag/v2.1.1 |
| 233 | +[2.0.10]: https://github.com/cipherstash/proxy/releases/tag/v2.0.10 |
| 234 | +[2.0.9]: https://github.com/cipherstash/proxy/releases/tag/v2.0.9 |
| 235 | +[2.0.8]: https://github.com/cipherstash/proxy/releases/tag/v2.0.8 |
| 236 | +[2.0.7]: https://github.com/cipherstash/proxy/releases/tag/v2.0.7 |
| 237 | +[2.0.6]: https://github.com/cipherstash/proxy/releases/tag/v2.0.6 |
| 238 | +[2.0.5]: https://github.com/cipherstash/proxy/releases/tag/v2.0.5 |
| 239 | +[2.0.4]: https://github.com/cipherstash/proxy/releases/tag/v2.0.4 |
| 240 | +[2.0.3]: https://github.com/cipherstash/proxy/releases/tag/v2.0.3 |
| 241 | +[2.0.2]: https://github.com/cipherstash/proxy/releases/tag/v2.0.2 |
| 242 | +[2.0.1]: https://github.com/cipherstash/proxy/releases/tag/v2.0.1 |
| 243 | +[2.0.0]: https://github.com/cipherstash/proxy/releases/tag/v2.0.0 |
0 commit comments