Skip to content
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

Migrate to Jakarta EE 10, Jersey 3.x, and Jetty 12 #570

Merged
merged 3 commits into from
May 28, 2024

Commits on May 17, 2024

  1. Migrate to Jakarta EE 10, Jersey 3.x, and Jetty 12

    Migrates `javax` namespaces to their `jakarta` counterparts.
    
    Performs the following notable version bumps:
    
    * Jakarta Servlet API: `4.0.1` -> `6.0.0` (latest)
    * JAXB: `2.3.6` -> `4.0.5` (latest)
    * Jersey: `2.41` -> `3.1.6` (latest)
    * Jetty: `10.0.18` -> `12.0.9` (latest)
    
    The following changes were necessary due to compatibility issues with Jakarta EE 10:
    
    * `io.jsonwebtoken:jjwt`: `0.9.1` -> `0.12.5`
      * Signing and verifying of JWTs with Alpine's `SecretKey` no longer worked. I'm not sure why it worked before, but now the library complained about AES keys not being suitable for HMAC signing. I modified the `JsonWebToken` class to use Alpine's public/private key pair instead, which works. It changes the signature algorithm to `RS512`. I believe this change makes sense anyway.
    * The default implementation of `jakarta.json` is Eclipse Parsson. Replaced `org.glassfish:javax-json` with it.
    * The default implementation of `jakarta.mail-api` is Eclipse Angus. Added it.
    
    Signed-off-by: nscuro <nscuro@protonmail.com>
    nscuro committed May 17, 2024
    Configuration menu
    Copy the full SHA
    42309bd View commit details
    Browse the repository at this point in the history

Commits on May 23, 2024

  1. Configuration menu
    Copy the full SHA
    18162a2 View commit details
    Browse the repository at this point in the history
  2. Avoid breaking change in key used for JWT signing

    Instead of switching to public/private key pair, convert the secret key to the appropriate `HmacSHA*` algorithm instead. Switching the keys used for signing would have been a breaking change.
    
    Signed-off-by: nscuro <nscuro@protonmail.com>
    nscuro committed May 23, 2024
    Configuration menu
    Copy the full SHA
    a3687b4 View commit details
    Browse the repository at this point in the history