Skip to content

Add httpclient5-bom module - #937

Open
garydgregory wants to merge 1 commit into
apache:masterfrom
garydgregory:bom_pom
Open

garydgregory wants to merge 1 commit into
apache:masterfrom
garydgregory:bom_pom

Conversation

@garydgregory

Copy link
Copy Markdown
Member

Provide dependency management for all eight HttpClient artifacts.

See also https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

@garydgregory
garydgregory requested a balanced review from Copilot November 12, 2026 14:42

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Warning

Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.

Copilot review overview

2 open issues
What changed in this PR

Adds a new Maven BOM module to centrally manage versions for the HttpClient 5 artifact set.

Changes:

  • Adds httpclient5-bom to the reactor build.
  • Introduces a new httpclient5-bom POM that manages versions for eight org.apache.httpcomponents.client5 artifacts.
File Description
pom.xml Adds the new BOM module to the multi-module build.
httpclient5-bom/​pom.xml Defines the BOM (packaging=pom) and its managed artifact list.

Review effort: Lite

Comment thread httpclient5-bom/pom.xml
Comment on lines +30 to +37
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcomponents-parent</artifactId>
<version>15</version>
<relativePath/>
</parent>
<groupId>org.apache.httpcomponents.client5</groupId>
<artifactId>httpclient5-bom</artifactId>
<version>5.7-beta2-SNAPSHOT</version>
Comment thread httpclient5-bom/pom.xml Outdated
<packaging>pom</packaging>
<name>Apache HttpComponents Client BOM</name>
<description>Bill of Materials for Apache HttpComponents Client</description>
<url>https://hc.apache.org/httpcomponents-client-5.7.x/${project.version}/</url>
Provide dependency management for all eight HttpClient artifacts.

See also https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Warning

Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.

Copilot review overview

5 open issues

Review effort: Lite

Comment thread httpclient5-bom/pom.xml
Comment on lines +42 to +49
<properties>
<javaVersion>8</javaVersion>
<minimalJavaBuildVersion>17</minimalJavaBuildVersion>
<maven.compiler.source>${javaVersion}</maven.compiler.source>
<maven.compiler.target>${javaVersion}</maven.compiler.target>
<!-- A BOM has no bytecode to check. -->
<animal.sniffer.skip>true</animal.sniffer.skip>
</properties>
Comment thread httpclient5-bom/pom.xml
Comment on lines +29 to +37
<parent>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcomponents-parent</artifactId>
<version>15</version>
<relativePath/>
</parent>
<groupId>org.apache.httpcomponents.client5</groupId>
<artifactId>httpclient5-bom</artifactId>
<version>5.7-beta2-SNAPSHOT</version>
Comment thread httpclient5-bom/pom.xml
information on the Apache Software Foundation, please see
<http://www.apache.org />.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
Comment thread httpclient5-bom/pom.xml
<parent>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcomponents-parent</artifactId>
<version>15</version>

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

@garydgregory Is there a reason the parent of this module has to be org.apache.httpcomponents:httpcomponents-parent and not the project parent httpclient5-parent?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I was trying to follow https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#bill-of-materials-bom-poms but our POMs are not set up that way currently. Making it as you suggest might create a circular dependency. I'll try it.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

@garydgregory You do not have to. I just wanted to know if that had been intentional.

@ok2c ok2c left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

@garydgregory You need to pacify Copilot but otherwise looks OK to me.

Please do make a symmetric change to core as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants