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

Fix JacksonJsonProvider #111

Merged
merged 1 commit into from Dec 22, 2021
Merged

Fix JacksonJsonProvider #111

merged 1 commit into from Dec 22, 2021

Conversation

basil
Copy link
Member

@basil basil commented Dec 21, 2021

Fixes jenkinsci/gitlab-plugin#1206 by bundling the JAX-RS API JAR in the Jackson 2 API plugin. The new RealJenkinsRule-based test fails before this PR and passes with it. I have also written a functional test in jenkinsci/gitlab-plugin#1207 which fails before this PR and passes with it.

@basil basil requested a review from a team as a code owner December 21, 2021 17:16
@basil
Copy link
Member Author

basil commented Dec 21, 2021

@jenkinsci/jackson2-api-plugin-developers Could this please be merged and released? This problem is affecting multiple users of the GitLab plugin.

@basil
Copy link
Member Author

basil commented Dec 21, 2021

Users have tested this fix successfully:

I have installed the incremental build and so far our builds are working again.

@stevenschlansker
Copy link

stevenschlansker commented Dec 21, 2021

I tested:

Incremental build 2.13.1-243.v04a926c036e7 is available for testing. The incremental build is available from: https://repo.jenkins-ci.org/incrementals/org/jenkins-ci/plugins/jackson2-api/2.13.1-243.v04a926c036e7/

and confirm our Jenkins instance was unusable with latest release, and fixed by installing the snapshot with fix.

@jtnord
Copy link
Member

jtnord commented Dec 21, 2021

The Jackson plugin is used by a huge amount of plugins.
Would including jaxrs here impact them negatively in any way? Especially worried about having an upgrade nightmare (or conflicting annotations caused by classloaders leading to issues esp bit not restricted to any future package renaming in Jakarta landscape.

To put it another way should jaxrs be a plugin that is optional here?

On my phone so sorry if this is short and I can not look into this myself right now

@basil
Copy link
Member Author

basil commented Dec 21, 2021

I don't know, James.

@jtnord jtnord added the chore label Dec 22, 2021
@jtnord
Copy link
Member

jtnord commented Dec 22, 2021

a quick search for both the old and new jax-rs artifactId showed very few hits in the Jenkins org.
My attemots to quickly use usage-in-plugins to find anything that used javax.ws.rs. failed miserably - so for now going to merge this as -is - but we may need to split the jaxrs-api out into a separate plugin in future that we optionally depend on. (I notcied at the same time we are also bundling the jaxb ri which is something for me to fix....

@jtnord jtnord merged commit 773c36c into jenkinsci:master Dec 22, 2021
@basil basil deleted the jaxrs branch December 22, 2021 16:38
@dhruv-dave
Copy link

@jtnord when can we expect a new release?
Now that this pull request is merged, a new release will help us remove the work around we have put in place when dealing with gitlab-plugin issue: jenkinsci/gitlab-plugin#1206.
Thank you.

@rantoniuk
Copy link

Seems that this change somehow causes other side-effects - jenkinsci/jira-plugin#398 , @basil do you have an idea what can be the issue here?

@basil
Copy link
Member Author

basil commented Jan 5, 2022

Seems that this change somehow causes other side-effects - jenkinsci/jira-plugin#398 , @basil do you have an idea what can be the issue here?

Similar report in jenkinsci/urltrigger-plugin#45. I'll look into it. Do you have steps to reproduce the problem?

@basil
Copy link
Member Author

basil commented Jan 5, 2022

I think I see what is going on. I'm going to create a new JAX-RS 2 API plugin bundling Jersey 2, get that released, then remove JAX-RS from this plugin and add an optional dependency on the (new) JAX-RS 2 API plugin.

@basil
Copy link
Member Author

basil commented Jan 5, 2022

I'm going to create a new JAX-RS 2 API plugin bundling Jersey 2

Hosting request submitted: jenkins-infra/repository-permissions-updater#2292

@basil basil mentioned this pull request Jan 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
5 participants