Skip to content

deps: upgrade cipherstash-client to 0.35.0 and EQL to 2.3.0#394

Draft
freshtonic wants to merge 2 commits into
mainfrom
feat/bump-eql-and-cipherstash-client
Draft

deps: upgrade cipherstash-client to 0.35.0 and EQL to 2.3.0#394
freshtonic wants to merge 2 commits into
mainfrom
feat/bump-eql-and-cipherstash-client

Conversation

@freshtonic
Copy link
Copy Markdown
Contributor

Bump cipherstash-client, cipherstash-config and cts-common to 0.35.0, and CS_EQL_VERSION to the eql-2.3.0 release.

0.35.0 reworks the EQL types for the 2.3 payload format:

  • EqlCiphertext is now a #[serde(tag = "k")] enum (Encrypted / SteVec) and identifier is a method rather than a field.
  • encrypt_eql returns the new EqlOutput type (Store / Query). The encrypt path now carries EqlOutput; the decrypt path keeps EqlCiphertext. EqlOutput is not Clone, so vec![None; n] is replaced with iterator construction.
  • EqlError::CouldNotDecryptDataForKeyset gained a source field.
  • IndexType::SteVec gained a mode field.

Rewrite the data_row tests to build wire messages programmatically from the new EQL 2.3.0 types instead of hardcoded payload bytes.

Acknowledgment

By submitting this pull request, I confirm that CipherStash can use, modify, copy, and redistribute this contribution, under the terms of CipherStash's choice.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 21, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 051a2cd4-04d5-459a-8926-7662038dbce5

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/bump-eql-and-cipherstash-client

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Bump cipherstash-client, cipherstash-config and cts-common to 0.35.0,
and CS_EQL_VERSION to the eql-2.3.0 release.

0.35.0 reworks the EQL types for the 2.3 payload format:

- `EqlCiphertext` is now a `#[serde(tag = "k")]` enum (Encrypted / SteVec)
  and `identifier` is a method rather than a field.
- `encrypt_eql` returns the new `EqlOutput` type (Store / Query). The
  encrypt path now carries `EqlOutput`; the decrypt path keeps
  `EqlCiphertext`. `EqlOutput` is not `Clone`, so `vec![None; n]` is
  replaced with iterator construction.
- `EqlError::CouldNotDecryptDataForKeyset` gained a `source` field.
- `IndexType::SteVec` gained a `mode` field.

Rewrite the data_row tests to build wire messages programmatically from
the new EQL 2.3.0 types instead of hardcoded payload bytes.
cipherstash-client 0.35.0 emits SteVec storage payloads (`k: "sv"`) with
no top-level `c` field — the root ciphertext lives in `sv[0].c`. EQL
2.3.0's `eql_v2._encrypted_check_c` CHECK constraint required a top-level
`c`, so every insert/update of an encrypted JSONB column was rejected
(integration test `update_with_param_jsonb`).

EQL 2.3.1 fixes `check_encrypted` to accept either `c` or `sv` at the
root. Bump CS_EQL_VERSION to eql-2.3.1.
@freshtonic freshtonic force-pushed the feat/bump-eql-and-cipherstash-client branch from c5f1f80 to 0a55b23 Compare May 21, 2026 04:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant