-
Notifications
You must be signed in to change notification settings - Fork 0
feat(numeric): encrypted-domain scalar type for numeric/Decimal #242
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
tobyhede
wants to merge
22
commits into
eql_v3
Choose a base branch
from
v3-domain-type-numeric
base: eql_v3
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
22 commits
Select commit
Hold shift + click to select a range
24814e9
feat(fixtures): add scalar fixtures
tobyhede d99cb65
feat(codegen): add domain generator
tobyhede e400463
feat(int4): add int4 domains
tobyhede b75f0ac
feat(lint): add domain lints
tobyhede a674ab2
test(matrix): add scalar matrix
tobyhede 3afa5dc
style(codegen): use proper-cased role phrases in file-header briefs
tobyhede 93de071
feat(aggregates): per-domain MIN/MAX for the encrypted-domain family
tobyhede ab887e9
style: apply cargo fmt + markdown linter fix
tobyhede 25e7d0a
chore(int4): address review feedback
tobyhede 5507776
ci(test-eql): scope permissions and disable credential persistence
tobyhede 8a4c77e
style(tests): tighten Rust idioms in scalar_domains and matrix
tobyhede cd57ac2
fix(aggregates): retain composite-type MIN/MAX alongside per-domain a…
tobyhede ceb4a2f
test(int4): sync fixture assertions with 17-value generator
tobyhede 537f264
docs(int4): sync encrypted-domain reference docs with generator
tobyhede eafa24f
refactor(test-matrix): slim ordered_numeric_matrix! to suite/scalar/e…
tobyhede b82939d
test(test-matrix): make matrix coverage reviewable and prove arms hav…
tobyhede ea0b822
refactor(test-matrix): share one cartesian-product driver across cate…
tobyhede 31bf95a
refactor(test-matrix): drop dead assert_plan_uses_index, tighten exports
tobyhede e021622
refactor(test-matrix): drop redundant named format args, minor idioms
tobyhede 7dfe2b1
test(test-matrix): cover ORDER BY NULLS FIRST/LAST for ordered domains
tobyhede 80f8cfe
style(test-matrix): flush-left SQL continuations in order_by_nulls arm
tobyhede a746f22
feat(numeric): add encrypted-domain scalar type for numeric/Decimal
tobyhede File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,69 @@ | ||
| name: "Macro expand EQL" | ||
|
|
||
| # Regenerates the int4 matrix `cargo expand` snapshot and fails if it has | ||
| # drifted from the committed copy. This is a body-level fidelity backstop for | ||
| # the `ordered_numeric_matrix!` / `scalar_domain_matrix!` macros — the | ||
| # name-inventory snapshot (test-eql.yml `matrix-coverage` job) catches | ||
| # add/remove of whole arms; this catches changes *inside* the generated bodies. | ||
| # | ||
| # Non-blocking by design: it is NOT a required PR check. `cargo expand` needs a | ||
| # nightly toolchain, so it is isolated off the PR path. | ||
| # - nightly schedule (the backstop that flags a forgotten local regen) | ||
| # - manual workflow_dispatch | ||
| # | ||
| # The toolchain is pinned (nightly-2026-05-01) in lockstep with the | ||
| # `test:matrix:expand` mise task so the snapshot only moves when the macro | ||
| # moves, not when nightly reformats its expansion. Bump both together. | ||
| on: | ||
| schedule: | ||
| # 03:00 UTC daily | ||
| - cron: "0 3 * * *" | ||
|
|
||
| workflow_dispatch: | ||
|
|
||
| env: | ||
| FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true" | ||
| MISE_VERBOSE: "1" | ||
|
|
||
| defaults: | ||
| run: | ||
| shell: bash -l {0} | ||
|
|
||
| permissions: | ||
| contents: read | ||
|
|
||
| jobs: | ||
| macro-expand: | ||
| name: "Macro expand drift (nightly)" | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 30 | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v6 | ||
| with: | ||
| persist-credentials: false | ||
|
|
||
| - uses: jdx/mise-action@v4 | ||
| with: | ||
| version: 2026.4.0 | ||
| install: true | ||
| cache: true | ||
|
|
||
| - uses: Swatinem/rust-cache@v2 | ||
| with: | ||
| workspaces: tests/sqlx | ||
| shared-key: sqlx-tests | ||
|
|
||
| # Pinned nightly — keep the date in lockstep with the `cargo +nightly-...` | ||
| # invocation in the `test:matrix:expand` mise task. rustfmt formats the | ||
| # expansion deterministically. | ||
| - name: Install pinned nightly + cargo-expand | ||
| run: | | ||
| rustup toolchain install nightly-2026-05-01 --profile minimal --component rustfmt | ||
| cargo binstall -y cargo-expand | ||
|
|
||
| - name: Regenerate and verify the matrix expansion snapshot | ||
| run: | | ||
| mise run test:matrix:expand | ||
| git diff --exit-code -- tests/sqlx/snapshots/int4_expanded.rs \ | ||
| || { echo "Expansion snapshot stale — run 'mise run test:matrix:expand' (needs the pinned nightly) and commit."; exit 1; } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add the PR link and avoid overstating ordering readiness.
This entry is missing the required PR link suffix, and it currently reads as fully supporting ordered comparisons even though PR
#242documents an outstanding ordering comparator gap (issue#241). Please append the PR link and tighten wording to reflect the current limitation until#241lands.As per coding guidelines, "When making a user-facing change, write the CHANGELOG.md entry by picking the right section (
Added/Changed/Deprecated/Removed/Fixed/Security), leading with the user-visible fact, then a short 'Why' explanation, then a PR link in parentheses. Match existing entries' tone and density - a single dense paragraph per entry, not a bullet list".🤖 Prompt for AI Agents