Commit Graph

473 Commits

Author SHA1 Message Date
Brian Demers c21c30a025
Merge pull request #496 from jwtk/service-loader
Replace hardcoded class names and reflection with ServiceLoader

Fixes: #458
2019-10-24 14:35:50 -07:00
Brian Demers 7037d64d24 Reduce scope of Service Loader work to CompressionCodecs and JsonSerializers
Fixes: #458
2019-10-23 09:14:08 -07:00
Jaap Coomans ef32a1386d Use ServiceLoader instead of reflection to resolve implementation classes.
By using ServiceLoader the hardcoded dependency of implementation classes becomes obsolete, so that the API will be truly independent from the implementation. Also this approach paves the way for migration to JPMS modules, as these also leverage the ServiceLoader API.

Use ServiceLoader instead of reflection to resolve CompressionCodec implementation classes.

Isolate key- and key-pair generators and use ServiceLoader instead of reflection to invert dependencies.

Move FactoryLoader logic to Services class and improve package layout.

Resolve Deserializer using the ServiceLoader instead of reflection and hardcoded reference.

Resolve Serializer using the ServiceLoader instead of reflection and hardcoded reference.
2019-10-23 09:13:58 -07:00
Christian Schneider bf7e300d6b Remove extensions true, move jar plugin near bundle-plugin to show th… (#514)
* Remove extensions true, move jar plugin near bundle-plugin to show their configs are related

* Reverted to original version to make sure it still works on jdk7
2019-10-09 11:15:30 -04:00
Dominic Jodoin a9e5b47daa Cache Maven dependencies (#513) 2019-10-05 13:08:52 -04:00
Brian Demers ebdb4426f6
Update version to 0.11.0-SNAPSHOT (#506)
via: `mvn versions:set -DnewVersion=0.11.0-SNAPSHOT -DgenerateBackupPoms=false`
2019-10-03 12:09:48 -04:00
Brian Demers 7eb9c514b0
Fixes test error caused by groovy type coercion (#509)
* Fixes test error caused by groovy type coercion

A long was being treated as a float

* Fixes test error caused by groovy type coercion

A long was being treated as a float
2019-10-03 12:09:23 -04:00
sal0max 56db77ed7e Add missing bracket (#511) 2019-10-02 19:06:23 -04:00
Brian Demers 94d151129d
Add JwtParserBuilder as the preferred way to create a JwtParser instance (#486)
- Added new JwtParserBuilder
- Copied mutator methods from JwtParser into new JwtParserBuilder
- Marked said methods as deprecated in JwtParser
- Copied JwtParserTest and JwtsTest to Deprecated*, as to retain coverage on methods that will be removed in 1.0
- Added ImmutableJwtParser
  This is a stop gap until 1.0, all of the mutable methods will now throw a IllegalStateException.
  NOTE: this only comes into place when using the new Jwts.parserBuilder(), Jwts.parser() is unchanged.

Fixes: #473
2019-10-01 12:03:20 -04:00
Brian Demers a236656c00
Fix minor Javadoc error in JacksonDeserializer (#505)
missing `#` in @link tag
2019-10-01 12:00:56 -04:00
Brian Demers 7090bf39c3
Add support for custom type deserialization with Jackson (#495)
- Adds new constructor JacksonDeserializer(Map<String, Class> claimTypeMap), which will enable later calls Claims.get("key", CustomType.class) to work as expectd
 - Adds new Maps utility class to make map creation fluent

Fixes: #369
2019-09-30 17:24:57 -04:00
Brian Demers a0060d60f9
Fix duplicate japicmp plugin definition in root pom (#504)
Merge japicmp plugin definitions - caused by a merge
2019-09-30 14:59:21 -04:00
Brian Demers 6e74be0b8d
Fix split package issue in extensions/jackson and extensions/orgjson (#488)
* Fix split package issue in extensions/jackson and extensions/orgjson

This moves the implementation specific classes:
- `io.jsonwebtoken.io.Jackson*` to `io.jsonwebtoken.jackson.io.Jackson*`
- `io.jsonwebtoken.io.OrgJson*` to `io.jsonwebtoken.orgjson.io.OrgJson*`

* Add Backwards Compatibility Warning to CHANGELOG
* Add `jjwt-jackson:deprecated` and `jjwt-orgjson:deprecated` modules to retain backward-compatible versions of the Jackson and OrgJson Serializers (this is built with the shade plugin and binary compatibility validated with japicmp)

Fixes: #399
2019-09-27 17:11:19 -04:00
Christian Schneider b5958202c0 Reenable using the manifest from maven-bundle-plugin run (#503)
* Reenable using the manifest from maven-bundle-plugin run

* Also enable manifest changes again

* Remove import tweaks. Add optional bnd.bnd config
2019-09-27 13:52:45 -04:00
Brian Demers c246385be1
Updating to jackson-databind 2.9.10 (#498) 2019-09-25 14:28:34 -04:00
Brian Demers c0d8b8e8e9
Add support for testing with JDK11 2019-09-25 14:14:38 -04:00
Brian Demers b327aeab7e Add support for testing with JDK11
There were a couple issues preventing running the build with Java 11
- A groovy bug - fixed with a version bump https://issues.apache.org/jira/browse/GROOVY-8727
- The ASM version that is embedded in easymock does NOT support Java 11 classes - worked around by stubbing out those usages instead
- javadoc modules issue - fixed by setting the Javadoc source version to 1.7
2019-09-24 18:57:06 -04:00
Brian Demers 50fc773eb9
Merge pull request #490 from jwtk/mvn-wrapper
Add maven-wrapper and configure CI to use it
2019-09-18 17:04:51 -04:00
Brian Demers 8f8be59be2 Add maven-wrapper and configure CI to use it
NOTE: also disable verbose artifact download messages
2019-09-17 18:11:56 -04:00
Brian Demers 5339faf87f
Add license-maven-plugin to mange headers
and apply missing headers

usage:
# validate license headers exist
mvn license:check

# apply headers (to files without headers)
mvn license:format
2019-09-17 16:19:07 -04:00
Brian Demers 40d77324a4
Merge pull request #485 from jwtk/jackson-2993
Upgrade Jackson Databind 2.9.9.3
2019-09-12 18:06:26 -04:00
Brian Demers cf9196d575 Setting travis-ci dist to trusty in order to install older java versions 2019-09-12 17:45:49 -04:00
Brian Demers 718f357c58 Upgrade Jackson Databind 2.9.9.3
Fixes: #484
2019-09-12 17:45:36 -04:00
Les Hazlewood ff8a6bfe58
Merge pull request #414 from patton73/master
Added Gson serialization/deserialization Extension
2019-07-17 22:13:58 -04:00
patton73 9cc7ecbeef Fix for missing test. 2019-07-17 23:36:21 +02:00
patton73 73f7f9915b Fixes for reviews. Hope i did not forget something. 2019-07-17 22:51:18 +02:00
patton73 2bb8e4d02e Fixes for reviews. Hope i did not forget something. 2019-07-17 22:46:18 +02:00
Les Hazlewood ec3298af18
Merge pull request #472 from longtimeago/84
#84 JwtBuilder.setClaims() now accepts `Map<String, ?> claims`
2019-07-16 13:53:35 -04:00
Andrea Paternesi bb1fb76ce9 last fix to the pom? 2019-07-16 17:00:20 +02:00
Andrea Paternesi e3a172b93d Fix to pom file. 2019-07-16 16:41:58 +02:00
Andrea Paternesi 222032a208 Final fix. Typo fixes. And test coverage. 2019-07-16 16:36:12 +02:00
Andrea Paternesi 262c527674 Fix locator paths and added tests. 2019-07-16 16:19:23 +02:00
Andrea Paternesi 134f25b536 Fix locator paths and added tests. 2019-07-16 16:19:13 +02:00
Andrea Paternesi 486305f6c3 changed pom to match master version 0.10.8 2019-07-16 10:02:44 +02:00
patton73 fd52e0ffc2 Merge remote-tracking branch 'upstream/master' 2019-07-15 20:51:57 +02:00
Paul Polishchuk dd638c2b3a JwtBuilder.setClaims() now accepts `Map<String, ?> claims`
This would allow to pass `Map<String,String>`
2019-07-15 10:46:02 +03:00
Les Hazlewood 17c3dcefd0
Merge pull request #471 from jwtk/470-travis-cleanup
Update .travis.yml
2019-07-13 14:55:50 -04:00
Les Hazlewood 2bc058c5f0 470: Update .travis.yml. Fixes #470. 2019-07-13 14:28:57 -04:00
Les Hazlewood f7386deb4b
Merge pull request #469 from jwtk/468-probot-stale
Enabled probot-stale GitHub App.  Fixes #468.
2019-07-12 18:54:14 -04:00
Les Hazlewood c595aff81c Enabled probot-stale GitHub App. Fixes #468. 2019-07-12 18:53:23 -04:00
Les Hazlewood caa7b0e942 [maven-release-plugin] prepare for next development iteration 2019-07-11 20:12:25 -04:00
Les Hazlewood b292b891ca [maven-release-plugin] prepare release 0.10.7 2019-07-11 20:12:20 -04:00
Les Hazlewood e820dfb410
Merge pull request #467 from jwtk/450-release
Issue 450: prepping docs for the 0.10.7 release.  Fixes #450.
2019-07-11 20:09:24 -04:00
Les Hazlewood 6b39e5bb72 Issue 450: prepping docs for the 0.10.7 release. Fixes #450. 2019-07-11 19:57:19 -04:00
Les Hazlewood 81dd6c5238
Merge pull request #466 from jwtk/449-doc-help
Issue 449: updated docs to better clarify help and contributing.
2019-07-11 19:48:46 -04:00
Les Hazlewood 4c5d009ee4 Issue 449: updated docs to better clarify help and contributing. Fixes #449. 2019-07-11 19:33:05 -04:00
Les Hazlewood 41f81570e9
Merge pull request #463 from jwtk/461-jackson-upgrade
Issue 461: upgraded Jackson version to 2.9.9.1. Fixes #461.
2019-07-11 16:45:23 -04:00
Les Hazlewood 4ae8f6d9c9 Issue 461: upgraded Jackson version to 2.9.9.1. Fixes #461. 2019-07-11 16:05:52 -04:00
patton73 9bf487f0b7 Updated RuntimeClasspath Serializer/Deserializer 2019-06-21 19:55:05 +02:00
Les Hazlewood 86b6096946
Merge pull request #406 from jwtk/392-deflate-fix
Refactored DeflateCompressionCodec to eliminate memory leak.
2019-03-10 13:15:33 -04:00