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

[Security] Exclude and remove freebuilder dependency #10869

Merged
merged 1 commit into from
Jun 18, 2021

Conversation

lhotari
Copy link
Member

@lhotari lhotari commented Jun 9, 2021

Motivation

Freebuilder is an annotation processor used in Bookkeeper's StorageClientSetting interface:

https://github.com/apache/bookkeeper/blob/16e8ba772bb5cf4c7546fb559bd9d455d4e42625/stream/clients/java/base/src/main/java/org/apache/bookkeeper/clients/config/StorageClientSettings.java#L27-L33

The annotation processor is only needed at compile time.

The Freebuilder library gets flagged as a vulnerable library by Sonatype IQ. This causes Pulsar distribution to be flagged as vulnerable since Freebuilder is a transitive dependency.

Additional context

There's a separate issue in Bookkeeper to change the dependency to optional / compileOnly: apache/bookkeeper#2732

Modifications

Exclude freebuilder library and replace the code that used shaded dependencies from the freebuilder library.

@lhotari lhotari added this to the 2.9.0 milestone Jun 9, 2021
@lhotari lhotari self-assigned this Jun 9, 2021
Copy link
Contributor

@eolivelli eolivelli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

good catch!

We had an entire jar in the class path only for "Sets.newHashSet" of a shaded library !

@lhotari lhotari requested review from aahmed-se and jerrypeng June 10, 2021 10:22
@aahmed-se
Copy link
Contributor

Approved

@sijie sijie merged commit 406770c into apache:master Jun 18, 2021
yangl pushed a commit to yangl/pulsar that referenced this pull request Jun 23, 2021
### Motivation

[Freebuilder](https://github.com/inferred/FreeBuilder) is an annotation processor used in Bookkeeper's StorageClientSetting interface:

https://github.com/apache/bookkeeper/blob/16e8ba772bb5cf4c7546fb559bd9d455d4e42625/stream/clients/java/base/src/main/java/org/apache/bookkeeper/clients/config/StorageClientSettings.java#L27-L33

The annotation processor is only needed at compile time.

The Freebuilder library gets flagged as a vulnerable library by Sonatype IQ. This causes Pulsar distribution to be flagged as vulnerable since Freebuilder is a transitive dependency.

### Additional context

There's a separate issue in Bookkeeper to change the dependency to optional / compileOnly: apache/bookkeeper#2732 

### Modifications

Exclude freebuilder library and replace the code that used shaded dependencies from the freebuilder library.
codelipenghui pushed a commit that referenced this pull request Jun 25, 2021
### Motivation

[Freebuilder](https://github.com/inferred/FreeBuilder) is an annotation processor used in Bookkeeper's StorageClientSetting interface:

https://github.com/apache/bookkeeper/blob/16e8ba772bb5cf4c7546fb559bd9d455d4e42625/stream/clients/java/base/src/main/java/org/apache/bookkeeper/clients/config/StorageClientSettings.java#L27-L33

The annotation processor is only needed at compile time.

The Freebuilder library gets flagged as a vulnerable library by Sonatype IQ. This causes Pulsar distribution to be flagged as vulnerable since Freebuilder is a transitive dependency.

### Additional context

There's a separate issue in Bookkeeper to change the dependency to optional / compileOnly: apache/bookkeeper#2732 

### Modifications

Exclude freebuilder library and replace the code that used shaded dependencies from the freebuilder library.

(cherry picked from commit 406770c)
@codelipenghui codelipenghui added the cherry-picked/branch-2.8 Archived: 2.8 is end of life label Jun 25, 2021
bharanic-dev pushed a commit to bharanic-dev/pulsar that referenced this pull request Mar 18, 2022
### Motivation

[Freebuilder](https://github.com/inferred/FreeBuilder) is an annotation processor used in Bookkeeper's StorageClientSetting interface:

https://github.com/apache/bookkeeper/blob/16e8ba772bb5cf4c7546fb559bd9d455d4e42625/stream/clients/java/base/src/main/java/org/apache/bookkeeper/clients/config/StorageClientSettings.java#L27-L33

The annotation processor is only needed at compile time.

The Freebuilder library gets flagged as a vulnerable library by Sonatype IQ. This causes Pulsar distribution to be flagged as vulnerable since Freebuilder is a transitive dependency.

### Additional context

There's a separate issue in Bookkeeper to change the dependency to optional / compileOnly: apache/bookkeeper#2732 

### Modifications

Exclude freebuilder library and replace the code that used shaded dependencies from the freebuilder library.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants