viirya commented on PR #32:
URL:
https://github.com/apache/spark-connect-gateway/pull/32#issuecomment-5734381709
Closing for now — deferring rather than rejecting. `jsonwebtoken` 10 only
just
landed (SPARK-59552), and 11 needs a source change that deserves its own
review
rather than riding along in a dependency batch.
The blocker is not the version itself. `Algorithm` became a non-exhaustive
enum in
11, so the match in `build_pem_key` no longer compiles:
```
error[E0004]: non-exhaustive patterns: `_` not covered
--> crates/auth/src/jwt.rs:171:21
```
That needs a catch-all arm, and what goes in it is a behavioural decision
about the
auth path, not boilerplate: a future `jsonwebtoken` release can now add an
algorithm without a major bump, and the gateway has to decide what it does
when it
meets one it does not recognise. Refusing looks right — guessing a key
parser for
an unknown algorithm would be a silent misconfiguration — but that belongs
in a PR
where it is the subject, with a test covering the new arm, not buried in a
version
bump.
For whoever picks this up, the upgrade does otherwise check out. I verified
locally
on top of current `main`, keeping the `["use_pem", "rust_crypto"]` provider
selection from SPARK-59552:
- All 11 algorithms `crates/config` accepts still sign and verify end to end
(HS256/384/512, RS256/384/512, PS256/384/512, ES256, ES384), with real
openssl-generated keys.
- 204 tests pass, `clippy --workspace --all-targets -D warnings` and
`cargo fmt --check` clean.
So the remaining work is the catch-all arm and a test for it.
One note for the next batch: this branch was cut before #29 merged, so as
filed it
reverted `jsonwebtoken` to `"9"` and dropped the provider selection.
Rebasing onto
current `main` is required before judging the real diff.
Thanks, dependabot.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]