-
Notifications
You must be signed in to change notification settings - Fork 0
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
Update all non-major dependencies - autoclosed #2
Closed
Conversation
This file contains 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
Codecov Report
@@ Coverage Diff @@
## master #2 +/- ##
============================================
- Coverage 65.13% 64.16% -0.98%
+ Complexity 47 44 -3
============================================
Files 18 15 -3
Lines 218 173 -45
Branches 11 13 +2
============================================
- Hits 142 111 -31
+ Misses 73 61 -12
+ Partials 3 1 -2
|
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
4 times, most recently
from
July 5, 2022 11:33
c3a3590
to
c6b3aa3
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
3 times, most recently
from
July 12, 2022 14:57
c8c9062
to
b5e83a1
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 1, 2022 15:54
b5e83a1
to
3437b98
Compare
renovate
bot
changed the title
Update all non-major dependencies
Update all non-major dependencies to v1.7.0
Aug 9, 2022
renovate
bot
changed the title
Update all non-major dependencies to v1.7.0
Update all non-major dependencies
Aug 10, 2022
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
2 times, most recently
from
August 22, 2022 10:57
1ba79b1
to
b8fd472
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
3 times, most recently
from
August 29, 2022 12:21
b8aaa3c
to
d65c36b
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
7 times, most recently
from
September 12, 2022 16:41
f52b31c
to
a8c0961
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
from
September 15, 2022 18:37
a8c0961
to
d48ef9d
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
from
October 3, 2022 10:24
d48ef9d
to
b67cf00
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
2 times, most recently
from
October 17, 2022 15:52
df931b6
to
c05bf99
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
3 times, most recently
from
October 24, 2022 13:59
006faf7
to
d8bcdde
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
3 times, most recently
from
November 14, 2022 18:25
8c66d6e
to
b7998ca
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
3 times, most recently
from
December 2, 2022 15:32
354846a
to
0b52252
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
3 times, most recently
from
December 16, 2022 18:33
0b49e16
to
73787c2
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
from
December 23, 2022 14:50
73787c2
to
e0f8d3c
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
from
March 12, 2023 17:56
e0f8d3c
to
f7bdac0
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
2 times, most recently
from
March 30, 2023 03:47
1f431e8
to
e10a436
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
from
April 22, 2023 03:20
e10a436
to
a3f995f
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
from
May 29, 2023 15:51
a3f995f
to
163fc71
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
from
June 29, 2023 23:34
163fc71
to
732e90e
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
from
August 11, 2023 08:38
732e90e
to
416de5c
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
4 times, most recently
from
September 8, 2023 08:47
737866c
to
a12ce14
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
from
September 19, 2023 02:53
a12ce14
to
50e0bed
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
3 times, most recently
from
October 7, 2023 11:18
5ef30e1
to
5348a95
Compare
renovate
bot
force-pushed
the
renovate/all-minor-patch
branch
from
October 11, 2023 05:05
5348a95
to
396d87a
Compare
renovate
bot
changed the title
Update all non-major dependencies
Update all non-major dependencies - autoclosed
Oct 11, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
None yet
0 participants
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.
This PR contains the following updates:
1.6.0
->1.7.0
3.1.1
->3.1.8
0.9.1
->0.12.2
1.69
->1.70
18.0.0
->18.0.2
18.0.0
->18.0.2
1.597-bfedcb9
->1.606-f718741
1.43-2c07755
->1.51-23d1761
1.0.17
->1.0.20
Release Notes
spring-cloud/spring-cloud-contract (org.springframework.cloud:spring-cloud-contract-wiremock)
v3.1.8
: 3.1.8Compare Source
🐞 Bug Fixes
❤️ Contributors
Thank you to all the contributors who worked on this release:
@shanman190
v3.1.7
Compare Source
v3.1.6
Compare Source
v3.1.5
Compare Source
v3.1.4
Compare Source
v3.1.3
Compare Source
v3.1.2
Compare Source
jwtk/jjwt (io.jsonwebtoken:jjwt)
v0.12.2
Compare Source
This is a follow-up release to finalize the work in 0.12.1 that tried to fix a reflection scope problem
on >= JDK 17. The 0.12.1 fix worked, but only if the importing project or application did not have its own
module-info.java
file.This release removes that reflection code entirely in favor of a JJWT-native implementation, eliminating JPMS
module (scope) problems on >= JDK 17. As such,
--add-opens
flags are no longer required to use JJWT.The fix has been tested up through JDK 21 in a separate application environment (out of JJWT's codebase) to assert
expected functionality in a 'clean room' environment in a project both with and without
module-info.java
usage.v0.12.1
Compare Source
Enabled reflective access on JDK 17+ to
java.io.ByteArrayInputStream
andsun.security.util.KeyUtil
forjjwt-impl.jar
v0.12.0
Compare Source
This is a big release! JJWT now fully supports Encrypted JSON Web Tokens (JWE), JSON Web Keys (JWK) and more! See the
sections below enumerating all new features as well as important notes on breaking changes or backwards-incompatible
changes made in preparation for the upcoming 1.0 release.
Because breaking changes are being introduced, it is strongly recommended to wait until the upcoming 1.0 release
where you can address breaking changes one time only.
Those that need immediate JWE encryption and JWK key support
however will likely want to upgrade now and deal with the smaller subset of breaking changes in the 1.0 release.
Simplified Starter Jar
Those upgrading to new modular JJWT versions from old single-jar versions will transparently obtain everything
they need in their Maven, Gradle or Android projects.
JJWT's early releases had one and only one .jar:
jjwt.jar
. Later releases moved to a modular design with 'api' and'impl' jars including 'plugin' jars for Jackson, GSON, org.json, etc. Some users upgrading from the earlier single
jar to JJWT's later versions have been frustrated by being forced to learn how to configure the more modular .jars.
This release re-introduces the
jjwt.jar
artifact again, but this time it is simply an empty .jar with Mavenmetadata that will automatically transitively download the following into a project, retaining the old single-jar
behavior:
jjwt-api.jar
jjwt-impl.jar
jjwt-jackson.jar
Naturally, developers are still encouraged to configure the modular .jars as described in JJWT's documentation for
greater control and to enable their preferred JSON parser, but this stop-gap should help those unaware when upgrading.
JSON Web Encryption (JWE) Support!
This has been a long-awaited feature for JJWT, years in the making, and it is quite extensive - so many encryption
algorithms and key management algorithms are defined by the JWA specification, and new API concepts had to be
introduced for all of them, as well as extensive testing with RFC-defined test vectors. The wait is over!
All JWA-defined encryption algorithms and key management algorithms are fully implemented and supported and
available immediately. For example:
Many other RSA and Elliptic Curve examples are in the full README documentation.
JSON Web Key (JWK) Support!
Representing cryptographic keys - SecretKeys, RSA Public and Private Keys, Elliptic Curve Public and
Private keys - as fully encoded JSON objects according to the JWK specification - is now fully implemented and
supported. The new
Jwks
utility class exists to create JWK builders and parsers as desired. For example:Many JJWT users won't need to use JWKs explicitly, but some JWA Key Management Algorithms (and lots of RFC test
vectors) utilize JWKs when transmitting JWEs. As this was required by JWE, it is now implemented in full for
JWE use as well as general-purpose JWK support.
JWK Thumbprint and JWK Thumbprint URI support
The JWK Thumbprint and
JWK Thumbprint URI RFC specifications are now fully supported. Please
see the README.md file's corresponding named sections for both for full documentation and usage examples.
JWS Unencoded Payload Option (
b64
) supportThe JSON Web Signature (JWS) Unencoded Payload Option RFC specification
is now fully supported. Please see the README.md corresponding named section for documentation and usage examples.
Better PKCS11 and Hardware Security Module (HSM) support
Previous versions of JJWT enforced that Private Keys implemented the
RSAKey
andECKey
interfaces to enforce keylength requirements. With this release, JJWT will still perform those checks when those data types are available,
but if not, as is common with keys from PKCS11 and HSM KeyStores, JJWT will still allow those Keys to be used,
expecting the underlying Security Provider to enforce any key requirements. This should reduce or eliminate any
custom code previously written to extend JJWT to use keys from those KeyStores or Providers.
Additionally, PKCS11/HSM tests using SoftHSMv2 are run on every build with
every JWS MAC and Signature algorithm and every JWE Key algorithm to ensure continued stable support with
Android and Sun PKCS11 implementations and spec-compliant Hardware Security Modules that use the PKCS11 interface
(such as YubiKey, etc.)
Custom Signature Algorithms
The
io.jsonwebtoken.SignatureAlgorithm
enum has been deprecated in favor of newio.jsonwebtoken.security.SecureDigestAlgorithm
,io.jsonwebtoken.security.MacAlgorithm
, andio.jsonwebtoken.security.SignatureAlgorithm
interfaces to allow custom algorithm implementations. The new nestedJwts.SIG
static inner class is a registry of all standard JWS algorithms as expected, exactly like theold enum. This change was made because enums are a static concept by design and cannot
support custom values: those who wanted to use custom signature algorithms could not do so until now. The new
interfaces now allow anyone to plug in and support custom algorithms with JJWT as desired.
KeyBuilder and KeyPairBuilder
Because the
io.jsonwebtoken.security.Keys#secretKeyFor
andio.jsonwebtoken.security.Keys#keyPairFor
methodsaccepted the now-deprecated
io.jsonwebtoken.SignatureAlgorithm
enum, they have also been deprecated in favor ofcalling new
key()
orkeyPair()
builder methods onMacAlgorithm
andSignatureAlgorithm
instances directly.For example:
The builders allow for customization of the JCA
Provider
andSecureRandom
during Key or KeyPair generation if desired, whereasthe old enum-based static utility methods did not.
Preparation for 1.0
Now that the JWE and JWK specifications are implemented, only a few things remain for JJWT to be considered at
version 1.0. We have been waiting to apply the 1.0 release version number until the entire set of JWT specifications
are fully supported and we drop JDK 7 support (to allow users to use JDK 8 APIs). To that end, we have had to
deprecate some concepts, or in some cases, completely break backwards compatibility to ensure the transition to
1.0 (and JDK 8 APIs) are possible. Most backwards-incompatible changes are listed in the next section below.
Backwards Compatibility Breaking Changes, Warnings and Deprecations
io.jsonwebtoken.Jwt
'sgetBody()
method has been deprecated in favor of a newgetPayload()
method toreflect correct JWT specification nomenclature/taxonomy.
io.jsonwebtoken.Jws
'sgetSignature()
method has been deprecated in favor of a newgetDigest()
method tosupport expected congruent behavior with
Jwe
instances (both have digests).io.jsonwebtoken.JwtParser
'sparseContentJwt
,parseClaimsJwt
,parseContentJws
, andparseClaimsJws
methodshave been deprecated in favor of more intuitive respective
parseUnsecuredContent
,parseUnsecuredClaims
,parseSignedContent
andparseSignedClaims
methods.io.jsonwebtoken.CompressionCodec
is now deprecated in favor of the newio.jsonwebtoken.io.CompressionAlgorithm
interface. This is to guarantee API congruence with all other JWT-identifiable algorithm IDs that can be set as a
header value.
io.jsonwebtoken.CompressionCodecResolver
has been deprecated in favor of the newJwtParserBuilder#addCompressionAlgorithms
method.Breaking Changes
io.jsonwebtoken.Claims
andio.jsonwebtoken.Header
instances are now immutable to enhance security and threadsafety. Creation and mutation are supported with newly introduced
ClaimsBuilder
andHeaderBuilder
concepts.Even though mutation methods have migrated, there are a couple that have been removed entirely:
io.jsonwebtoken.JwsHeader#setAlgorithm
has been removed - theJwtBuilder
will always set the appropriatealg
header automatically based on builder state.io.jsonwebtoken.Header#setCompressionAlgorithm
has been removed - theJwtBuilder
will always set the appropriatezip
header automatically based on builder state.io.jsonwebtoken.Jwts
'sheader(Map)
,jwsHeader()
andjwsHeader(Map)
methods have been removed in favorof the new
header()
method that returns aHeaderBuilder
to support method chaining and dynamicHeader
typecreation. The
HeaderBuilder
will dynamically create aHeader
,JwsHeader
orJweHeader
automatically based onbuilder state.
Similarly,
io.jsonwebtoken.Jwts
'sclaims()
static method has been changed to return aClaimsBuilder
insteadof a
Claims
instance.JWTs that do not contain JSON Claims now have a payload type of
byte[]
instead ofString
(that is,Jwt<byte[]>
instead ofJwt<String>
). This is because JWTs, especially when used with thecty
(Content Type) header, are capable of handling any type of payload, not just Strings. The previous JJWTreleases didn't account for this, and now the API accurately reflects the JWT RFC specification payload
capabilities. Additionally, the name of
plaintext
has been changed tocontent
in method names and JavaDoc toreflect this taxonomy. This change has impacted the following JJWT APIs:
The
JwtBuilder
'ssetPayload(String)
method has been deprecated in favor of two new methods:setContent(byte[])
, andsetContent(byte[], String contentType)
These new methods allow any kind of content
within a JWT, not just Strings. The existing
setPayload(String)
method implementation has been changed todelegate to this new
setContent(byte[])
method with the argument's UTF-8 bytes, for examplesetContent(payloadString.getBytes(StandardCharsets.UTF_8))
.The
JwtParser
'sJwt<Header, String> parsePlaintextJwt(String plaintextJwt)
andJws<String> parsePlaintextJws(String plaintextJws)
methods have been changed toJwt<Header, byte[]> parseContentJwt(String plaintextJwt)
andJws<byte[]> parseContentJws(String plaintextJws)
respectively.JwtHandler
'sonPlaintextJwt(String)
andonPlaintextJws(String)
methods have been changed toonContentJwt(byte[])
andonContentJws(byte[])
respectively.io.jsonwebtoken.JwtHandlerAdapter
has been changed to reflect the above-mentioned name andString
-to-byte[]
argument changes, as well adding the
abstract
modifier. This class was never intendedto be instantiated directly, and is provided for subclassing only. The missing modifier has been added to ensure
the class is used as it had always been intended.
io.jsonwebtoken.SigningKeyResolver
'sresolveSigningKey(JwsHeader, String)
method has been changed toresolveSigningKey(JwsHeader, byte[])
.io.jsonwebtoken.JwtParser
is now immutable. All mutation/modification methods (setters, etc) deprecated 4 yearsago have been removed. All parser configuration requires using the
JwtParserBuilder
.Similarly,
io.jsonwebtoken.Jwts
'sparser()
method deprecated 4 years ago has been changed to now return aJwtParserBuilder
instead of a directJwtParser
instance. The previousJwts.parserBuilder()
method has beenremoved as it is now redundant.
The
JwtParserBuilder
no longer supportsPrivateKey
s for signature verification. This was an oldlegacy behavior scheduled for removal years ago, and that change is now complete. For various cryptographic/security
reasons, asymmetric public/private key signatures should always be created with
PrivateKey
s and verified withPublicKey
s.io.jsonwebtoken.CompressionCodec
implementations are no longer discoverable viajava.util.ServiceLoader
due toruntime performance problems with the JDK's
ServiceLoader
implementation perhttps://github.com/jwtk/jjwt/issues/648/648. Custom implementations should be made available to the
JwtParser
viathe new
JwtParserBuilder#addCompressionAlgorithms
method.Prior to this release, if there was a serialization problem when serializing the JWT Header, an
IllegalStateException
was thrown. If there was a problem when serializing the JWT claims, an
IllegalArgumentException
wasthrown. This has been changed up to ensure consistency: any serialization error with either headers or claims
will now throw a
io.jsonwebtoken.io.SerializationException
.Parsing of unsecured JWTs (
alg
header ofnone
) are now disabled by default as mandated byRFC 7518, Section 3.6. If you require parsing of
unsecured JWTs, you must call the
JwtParserBuilder#enableUnsecured()
method, but note the securityimplications mentioned in that method's JavaDoc before doing so.
io.jsonwebtoken.gson.io.GsonSerializer
now requiresGson
instances that have a registeredGsonSupplierSerializer
type adapter, for example:This is to ensure JWKs have
toString()
and application log safety (do not print secure material), but stillserialize to JSON correctly.
io.jsonwebtoken.InvalidClaimException
and it's two subclasses (IncorrectClaimException
andMissingClaimException
)were previously mutable, allowing the corresponding claim name and claim value to be set on the exception after
creation. These should have always been immutable without those setters (just getters), and this was a previous
implementation oversight. This release has ensured they are immutable without the setters.
keycloak/keycloak (org.keycloak:keycloak-spring-security-adapter)
v18.0.2
Compare Source
v18.0.1
Compare Source
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate. View repository job log here.