|  | 
| 95 | 95 |       <version>${druid.version}</version> | 
| 96 | 96 |       <scope>provided</scope> | 
| 97 | 97 |     </dependency> | 
|  | 98 | +    <dependency> | 
|  | 99 | +      <groupId>org.apache.druid</groupId> | 
|  | 100 | +      <artifactId>druid-processing</artifactId> | 
|  | 101 | +      <version>${druid.version}</version> | 
|  | 102 | +      <scope>provided</scope> | 
|  | 103 | +    </dependency> | 
| 98 | 104 |   </dependencies> | 
| 99 | 105 | 
 | 
| 100 | 106 |   <build> | 
|  | 
| 154 | 160 |         <version>${maven-enforcer-plugin.version}</version> | 
| 155 | 161 |         <configuration> | 
| 156 | 162 |           <rules> | 
| 157 |  | -            <banDuplicatePomDependencyVersions /> | 
| 158 |  | -            <banDynamicVersions /> | 
| 159 | 163 |             <banDuplicatePomDependencyVersions /> | 
| 160 | 164 |             <banDynamicVersions /> | 
| 161 | 165 |             <requireActiveProfile> | 
| 162 |  | -              <profiles>druid-30.0.1,druid-31.0.1,druid-33.0.0</profiles> | 
|  | 166 | +              <profiles>druid-30.0.1,druid-33.0.0,druid-34.0.0</profiles> | 
| 163 | 167 |               <all>false</all> | 
| 164 | 168 |             </requireActiveProfile> | 
| 165 | 169 |             <requireJavaVersion> | 
|  | 
| 333 | 337 |           <version>2.12.7.1</version> | 
| 334 | 338 |           <scope>provided</scope> | 
| 335 | 339 |         </dependency> | 
| 336 |  | -        <dependency> | 
| 337 |  | -          <groupId>org.apache.druid</groupId> | 
| 338 |  | -          <artifactId>druid-processing</artifactId> | 
| 339 |  | -          <version>${druid.version}</version> | 
| 340 |  | -          <scope>provided</scope> | 
| 341 |  | -        </dependency> | 
| 342 | 340 |       </dependencies> | 
| 343 | 341 |     </profile> | 
| 344 | 342 |     <profile> | 
| 345 |  | -      <!-- LTS version as of 25.3 --> | 
| 346 |  | -      <id>druid-31.0.1</id> | 
|  | 343 | +      <id>druid-33.0.0</id> | 
| 347 | 344 |       <properties> | 
| 348 | 345 |         <java.version>17</java.version> | 
| 349 |  | -        <druid.version>31.0.1</druid.version> | 
|  | 346 | +        <druid.version>33.0.0</druid.version> | 
| 350 | 347 |         <guava.version>32.0.1-jre</guava.version> | 
| 351 | 348 |         <guice.version>4.1.0</guice.version> | 
| 352 | 349 |         <!-- | 
| 353 |  | -        jackson.version in 31.0.1 is actually specified as 2.12.7.20221012 but according to the release notes | 
|  | 350 | +        jackson.version in 33.0.0 is actually specified as 2.12.7.20221012 but according to the release notes | 
| 354 | 351 |         https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.12#micro-patches that is "only" the BOM which | 
| 355 | 352 |         specifies almost all dependencies to be 2.12.7 with the exception of jackson-databind which is at 2.12.7.1: | 
| 356 | 353 |         https://repo1.maven.org/maven2/com/fasterxml/jackson/jackson-bom/2.12.7.20221012/jackson-bom-2.12.7.20221012.pom | 
|  | 
| 365 | 362 |           <version>2.12.7.1</version> | 
| 366 | 363 |           <scope>provided</scope> | 
| 367 | 364 |         </dependency> | 
| 368 |  | -        <dependency> | 
| 369 |  | -          <groupId>org.apache.druid</groupId> | 
| 370 |  | -          <artifactId>druid-processing</artifactId> | 
| 371 |  | -          <version>${druid.version}</version> | 
| 372 |  | -          <scope>provided</scope> | 
| 373 |  | -        </dependency> | 
| 374 | 365 |       </dependencies> | 
| 375 | 366 |     </profile> | 
| 376 | 367 |     <profile> | 
| 377 |  | -      <id>druid-33.0.0</id> | 
|  | 368 | +      <id>druid-34.0.0</id> | 
| 378 | 369 |       <properties> | 
| 379 | 370 |         <java.version>17</java.version> | 
| 380 |  | -        <druid.version>33.0.0</druid.version> | 
| 381 |  | -        <guava.version>32.0.1-jre</guava.version> | 
| 382 |  | -        <guice.version>4.1.0</guice.version> | 
| 383 |  | -        <!-- | 
| 384 |  | -        jackson.version in 33.0.0 is actually specified as 2.12.7.20221012 but according to the release notes | 
| 385 |  | -        https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.12#micro-patches that is "only" the BOM which | 
| 386 |  | -        specifies almost all dependencies to be 2.12.7 with the exception of jackson-databind which is at 2.12.7.1: | 
| 387 |  | -        https://repo1.maven.org/maven2/com/fasterxml/jackson/jackson-bom/2.12.7.20221012/jackson-bom-2.12.7.20221012.pom | 
| 388 |  | -        so we override that here | 
| 389 |  | -        --> | 
| 390 |  | -        <jackson.version>2.12.7</jackson.version> | 
|  | 371 | +        <druid.version>34.0.0</druid.version> | 
|  | 372 | +        <guava.version>32.1.3-jre</guava.version> | 
|  | 373 | +        <guice.version>5.1.0</guice.version> | 
|  | 374 | +        <jackson.version>2.18.4</jackson.version> | 
| 391 | 375 |       </properties> | 
| 392 | 376 |       <dependencies> | 
|  | 377 | +        <!-- | 
|  | 378 | +        In druid-server 34.0.0 all the jackson dependencies are specified to be 2.18.4 with the exception of jackson-core which is at 2.18.4.1: | 
|  | 379 | +        https://github.com/apache/druid/blob/druid-34.0.0/pom.xml#L103, so we override that here | 
|  | 380 | +        --> | 
| 393 | 381 |         <dependency> | 
| 394 | 382 |           <groupId>com.fasterxml.jackson.core</groupId> | 
| 395 |  | -          <artifactId>jackson-databind</artifactId> | 
| 396 |  | -          <version>2.12.7.1</version> | 
| 397 |  | -          <scope>provided</scope> | 
| 398 |  | -        </dependency> | 
| 399 |  | -        <dependency> | 
| 400 |  | -          <groupId>org.apache.druid</groupId> | 
| 401 |  | -          <artifactId>druid-processing</artifactId> | 
| 402 |  | -          <version>${druid.version}</version> | 
|  | 383 | +          <artifactId>jackson-core</artifactId> | 
|  | 384 | +          <version>2.18.4.1</version> | 
| 403 | 385 |           <scope>provided</scope> | 
| 404 | 386 |         </dependency> | 
| 405 | 387 |       </dependencies> | 
|  | 388 | +      <!-- | 
|  | 389 | +        We need to override the guice version using <dependencyManagement> here, otherwise maven chooses the highest | 
|  | 390 | +        possible version in the range given by https://github.com/FasterXML/jackson-modules-base/blob/jackson-modules-base-2.18.4/guice/pom.xml#L30 | 
|  | 391 | +        which for some reason also wins in the conflict resolution, resulting in another version of the dependency than druid uses | 
|  | 392 | +      --> | 
|  | 393 | +      <dependencyManagement> | 
|  | 394 | +        <dependencies> | 
|  | 395 | +          <dependency> | 
|  | 396 | +            <groupId>com.google.inject</groupId> | 
|  | 397 | +            <artifactId>guice</artifactId> | 
|  | 398 | +            <version>${guice.version}</version> | 
|  | 399 | +            <scope>provided</scope> | 
|  | 400 | +          </dependency> | 
|  | 401 | +        </dependencies> | 
|  | 402 | +      </dependencyManagement> | 
| 406 | 403 |     </profile> | 
| 407 | 404 |   </profiles> | 
| 408 | 405 | 
 | 
|  | 
0 commit comments