This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 8939f3da5cf9 Deprecate Paho component and disable related flaky test
on CI (#23187)
8939f3da5cf9 is described below
commit 8939f3da5cf924eb3306d142c4c04dc1386ec044
Author: Aurélien Pupier <[email protected]>
AuthorDate: Tue May 19 07:11:08 2026 +0200
Deprecate Paho component and disable related flaky test on CI (#23187)
* Deprecate Paho component
there were no new release since 2020 of the Java client, last
non-regulatory commit was in 2022
Signed-off-by: Aurélien Pupier <[email protected]>
* CAMEL-23484 - disable flaky Paho test on CI as component is now
deprecated
Signed-off-by: Aurélien Pupier <[email protected]>
---------
Signed-off-by: Aurélien Pupier <[email protected]>
---
.../resources/org/apache/camel/catalog/components/paho.json | 2 +-
components/camel-paho/pom.xml | 2 +-
.../resources/META-INF/org/apache/camel/component/paho/paho.json | 2 +-
.../META-INF/services/org/apache/camel/component.properties | 2 +-
components/camel-paho/src/main/docs/paho-component.adoc | 5 +++--
.../main/java/org/apache/camel/component/paho/PahoComponent.java | 1 +
.../java/org/apache/camel/component/paho/PahoConfiguration.java | 1 +
.../main/java/org/apache/camel/component/paho/PahoConstants.java | 1 +
.../main/java/org/apache/camel/component/paho/PahoConsumer.java | 1 +
.../main/java/org/apache/camel/component/paho/PahoEndpoint.java | 1 +
.../src/main/java/org/apache/camel/component/paho/PahoMessage.java | 1 +
.../main/java/org/apache/camel/component/paho/PahoPersistence.java | 1 +
.../main/java/org/apache/camel/component/paho/PahoProducer.java | 1 +
.../java/org/apache/camel/component/paho/PahoSendDynamicAware.java | 1 +
.../java/org/apache/camel/component/paho/PahoManualAcksTest.java | 3 +++
.../org/apache/camel/component/paho/PahoOverrideTopicTest.java | 3 +++
.../org/apache/camel/component/paho/PahoToDSendDynamicTest.java | 3 +++
.../src/test/java/org/apache/camel/component/paho/PahoToDTest.java | 3 +++
.../modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc | 7 ++++++-
.../org/apache/camel/builder/endpoint/StaticEndpointBuilders.java | 2 ++
.../camel/builder/endpoint/dsl/PahoEndpointBuilderFactory.java | 3 +++
21 files changed, 39 insertions(+), 7 deletions(-)
diff --git
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/paho.json
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/paho.json
index 56f38a7d9a90..2e6dc982d873 100644
---
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/paho.json
+++
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/paho.json
@@ -4,7 +4,7 @@
"name": "paho",
"title": "Paho",
"description": "Communicate with MQTT message brokers using Eclipse Paho
MQTT Client.",
- "deprecated": false,
+ "deprecated": true,
"firstVersion": "2.16.0",
"label": "messaging,iot",
"javaType": "org.apache.camel.component.paho.PahoComponent",
diff --git a/components/camel-paho/pom.xml b/components/camel-paho/pom.xml
index 2c402aef56d3..fb21d3a15036 100644
--- a/components/camel-paho/pom.xml
+++ b/components/camel-paho/pom.xml
@@ -29,7 +29,7 @@
<artifactId>camel-paho</artifactId>
<packaging>jar</packaging>
- <name>Camel :: Paho</name>
+ <name>Camel :: Paho (deprecated)</name>
<description>Camel Eclipse Paho support</description>
<properties>
diff --git
a/components/camel-paho/src/generated/resources/META-INF/org/apache/camel/component/paho/paho.json
b/components/camel-paho/src/generated/resources/META-INF/org/apache/camel/component/paho/paho.json
index 56f38a7d9a90..2e6dc982d873 100644
---
a/components/camel-paho/src/generated/resources/META-INF/org/apache/camel/component/paho/paho.json
+++
b/components/camel-paho/src/generated/resources/META-INF/org/apache/camel/component/paho/paho.json
@@ -4,7 +4,7 @@
"name": "paho",
"title": "Paho",
"description": "Communicate with MQTT message brokers using Eclipse Paho
MQTT Client.",
- "deprecated": false,
+ "deprecated": true,
"firstVersion": "2.16.0",
"label": "messaging,iot",
"javaType": "org.apache.camel.component.paho.PahoComponent",
diff --git
a/components/camel-paho/src/generated/resources/META-INF/services/org/apache/camel/component.properties
b/components/camel-paho/src/generated/resources/META-INF/services/org/apache/camel/component.properties
index 277a05a8ca3e..a00e3827f5f2 100644
---
a/components/camel-paho/src/generated/resources/META-INF/services/org/apache/camel/component.properties
+++
b/components/camel-paho/src/generated/resources/META-INF/services/org/apache/camel/component.properties
@@ -3,5 +3,5 @@ components=paho
groupId=org.apache.camel
artifactId=camel-paho
version=4.21.0-SNAPSHOT
-projectName=Camel :: Paho
+projectName=Camel :: Paho (deprecated)
projectDescription=Camel Eclipse Paho support
diff --git a/components/camel-paho/src/main/docs/paho-component.adoc
b/components/camel-paho/src/main/docs/paho-component.adoc
index 4de11d1c20ab..b21d646e0de2 100644
--- a/components/camel-paho/src/main/docs/paho-component.adoc
+++ b/components/camel-paho/src/main/docs/paho-component.adoc
@@ -1,10 +1,11 @@
-= Paho Component
+= Paho Component (deprecated)
:doctitle: Paho
:shortname: paho
:artifactid: camel-paho
:description: Communicate with MQTT message brokers using Eclipse Paho MQTT
Client.
:since: 2.16
-:supportlevel: Stable
+:supportlevel: Stable-deprecated
+:deprecated: *deprecated*
:tabs-sync-option:
:component-header: Both producer and consumer are supported
//Manually maintained attributes
diff --git
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoComponent.java
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoComponent.java
index 4c5eeff6aea1..02674d5e0de6 100644
---
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoComponent.java
+++
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoComponent.java
@@ -29,6 +29,7 @@ import org.eclipse.paho.client.mqttv3.MqttClient;
* Component to integrate with the Eclipse Paho MQTT library.
*/
@Component("paho")
+@Deprecated(since = "4.21")
public class PahoComponent extends DefaultComponent {
@Metadata
diff --git
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConfiguration.java
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConfiguration.java
index be743a609969..92ddea3598a2 100644
---
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConfiguration.java
+++
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConfiguration.java
@@ -27,6 +27,7 @@ import org.apache.camel.spi.UriParam;
import org.apache.camel.spi.UriParams;
@UriParams
+@Deprecated(since = "4.21")
public class PahoConfiguration implements Cloneable {
@UriParam
diff --git
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConstants.java
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConstants.java
index f1641514d6e2..7b4b8fb2585a 100644
---
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConstants.java
+++
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConstants.java
@@ -21,6 +21,7 @@ import org.apache.camel.spi.Metadata;
/**
* Constants to use when working with Paho component.
*/
+@Deprecated(since = "4.21")
public final class PahoConstants {
/**
diff --git
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConsumer.java
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConsumer.java
index 2cfcfe1c526b..4bde73ec28e8 100644
---
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConsumer.java
+++
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoConsumer.java
@@ -31,6 +31,7 @@ import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+@Deprecated(since = "4.21")
public class PahoConsumer extends DefaultConsumer {
private static final Logger LOG =
LoggerFactory.getLogger(PahoConsumer.class);
diff --git
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
index 359ae006f5ab..48773c9848a2 100644
---
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
+++
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoEndpoint.java
@@ -41,6 +41,7 @@ import
org.eclipse.paho.client.mqttv3.persist.MqttDefaultFilePersistence;
*/
@UriEndpoint(firstVersion = "2.16.0", scheme = "paho", title = "Paho",
category = { Category.MESSAGING, Category.IOT },
syntax = "paho:topic", headersClass = PahoConstants.class)
+@Deprecated(since = "4.21")
public class PahoEndpoint extends DefaultEndpoint implements
EndpointServiceLocation {
// Configuration members
diff --git
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoMessage.java
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoMessage.java
index 08ee8970dccc..fd99b33e0ddd 100644
---
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoMessage.java
+++
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoMessage.java
@@ -20,6 +20,7 @@ import org.apache.camel.CamelContext;
import org.apache.camel.support.DefaultMessage;
import org.eclipse.paho.client.mqttv3.MqttMessage;
+@Deprecated(since = "4.21")
public class PahoMessage extends DefaultMessage {
private transient MqttMessage mqttMessage;
diff --git
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoPersistence.java
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoPersistence.java
index 54e7687f5b9b..d1569e4a8ea3 100644
---
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoPersistence.java
+++
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoPersistence.java
@@ -16,6 +16,7 @@
*/
package org.apache.camel.component.paho;
+@Deprecated(since = "4.21")
public enum PahoPersistence {
FILE,
diff --git
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoProducer.java
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoProducer.java
index 22f2cc4397b0..f54fba544f42 100644
---
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoProducer.java
+++
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoProducer.java
@@ -28,6 +28,7 @@ import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+@Deprecated(since = "4.21")
public class PahoProducer extends DefaultAsyncProducer {
private static final Logger LOG =
LoggerFactory.getLogger(PahoProducer.class);
diff --git
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoSendDynamicAware.java
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoSendDynamicAware.java
index 74e05e20fa19..01c59d06a06b 100644
---
a/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoSendDynamicAware.java
+++
b/components/camel-paho/src/main/java/org/apache/camel/component/paho/PahoSendDynamicAware.java
@@ -31,6 +31,7 @@ import org.apache.camel.util.StringHelper;
* endpoint and its producer to service dynamic requests.
*/
@SendDynamic("paho")
+@Deprecated(since = "4.21")
public class PahoSendDynamicAware extends ServiceSupport implements
SendDynamicAware {
private CamelContext camelContext;
diff --git
a/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoManualAcksTest.java
b/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoManualAcksTest.java
index f289cc1971b2..bc57095791be 100644
---
a/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoManualAcksTest.java
+++
b/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoManualAcksTest.java
@@ -26,8 +26,11 @@ import
org.apache.camel.test.infra.core.DefaultCamelContextExtension;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
import org.junit.jupiter.api.extension.RegisterExtension;
+@DisabledIfSystemProperty(named = "ci.env.name", matches = ".*",
+ disabledReason = "Started to be very flaky on CI and
component is now deprecated")
public class PahoManualAcksTest extends PahoTestSupport {
@Order(2)
@RegisterExtension
diff --git
a/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoOverrideTopicTest.java
b/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoOverrideTopicTest.java
index 903a78716355..afd95f30e47e 100644
---
a/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoOverrideTopicTest.java
+++
b/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoOverrideTopicTest.java
@@ -25,8 +25,11 @@ import
org.apache.camel.test.infra.core.DefaultCamelContextExtension;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
import org.junit.jupiter.api.extension.RegisterExtension;
+@DisabledIfSystemProperty(named = "ci.env.name", matches = ".*",
+ disabledReason = "Started to be very flaky on CI and
component is now deprecated")
public class PahoOverrideTopicTest extends PahoTestSupport {
@Order(2)
diff --git
a/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoToDSendDynamicTest.java
b/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoToDSendDynamicTest.java
index e694417e90f3..f246719b27d6 100644
---
a/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoToDSendDynamicTest.java
+++
b/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoToDSendDynamicTest.java
@@ -24,10 +24,13 @@ import
org.apache.camel.test.infra.core.DefaultCamelContextExtension;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
import org.junit.jupiter.api.extension.RegisterExtension;
import static org.junit.jupiter.api.Assertions.assertEquals;
+@DisabledIfSystemProperty(named = "ci.env.name", matches = ".*",
+ disabledReason = "Started to be very flaky on CI and
component is now deprecated")
public class PahoToDSendDynamicTest extends PahoTestSupport {
@Order(2)
diff --git
a/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoToDTest.java
b/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoToDTest.java
index 6d208b1a8483..2db2fdded22e 100644
---
a/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoToDTest.java
+++
b/components/camel-paho/src/test/java/org/apache/camel/component/paho/PahoToDTest.java
@@ -24,8 +24,11 @@ import
org.apache.camel.test.infra.core.DefaultCamelContextExtension;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
import org.junit.jupiter.api.extension.RegisterExtension;
+@DisabledIfSystemProperty(named = "ci.env.name", matches = ".*",
+ disabledReason = "Started to be very flaky on CI and
component is now deprecated")
public class PahoToDTest extends PahoTestSupport {
@Order(2)
diff --git
a/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
b/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
index d484eda376cb..6025623bfa3a 100644
--- a/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
+++ b/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_21.adoc
@@ -18,7 +18,7 @@ See the xref:camel-upgrade-recipes-tool.adoc[documentation]
page for details.
The library used for Camel Grok component has been migrated from no more
maintained `io.krakens:java-grok` to its fork `io.github.whatap:java-grok`.
It implies small differences listed
https://github.com/whatap/java-grok#what-is-different-from-iokrakensjava-grok[here].
-=== camel-core
+=== camel-coreand camel-paho-mqtt5 are
The `camel-api` module now has an optional dependency on
`org.jspecify:jspecify` for null safety annotations
(`@NullMarked`, `@Nullable`). The dependency is `<optional>true</optional>`,
so it is not pulled transitively
@@ -546,3 +546,8 @@ The component camel-irc is deprecated. The library used had
no stable release si
=== Deprecation of camel-iec-60870
The component camel-iec-60870 is deprecated. The library used to implement it
NeoScada is no more maintained since 2021. There are no alternatives in Java
with compatible license.
+
+=== Deprecation of camel-paho
+
+The components camel-paho is deprecated. There were no new release since 2020
of the Java client, last non-regulatory commit was in 2022.
+
diff --git
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java
index 5dc5608e89dd..a5db916ace59 100644
---
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java
+++
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java
@@ -13052,6 +13052,7 @@ public class StaticEndpointBuilders {
* @param path topic
* @return the dsl builder
*/
+ @Deprecated
public static PahoEndpointBuilderFactory.PahoEndpointBuilder paho(String
path) {
return paho("paho", path);
}
@@ -13073,6 +13074,7 @@ public class StaticEndpointBuilders {
* @param path topic
* @return the dsl builder
*/
+ @Deprecated
public static PahoEndpointBuilderFactory.PahoEndpointBuilder paho(String
componentName, String path) {
return PahoEndpointBuilderFactory.endpointBuilder(componentName, path);
}
diff --git
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PahoEndpointBuilderFactory.java
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PahoEndpointBuilderFactory.java
index a69812ee7707..e0a147c1b5ab 100644
---
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PahoEndpointBuilderFactory.java
+++
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PahoEndpointBuilderFactory.java
@@ -2975,6 +2975,7 @@ public interface PahoEndpointBuilderFactory {
*
* @return the dsl builder for the headers' name.
*/
+ @Deprecated
default PahoHeaderNameBuilder paho() {
return PahoHeaderNameBuilder.INSTANCE;
}
@@ -2994,6 +2995,7 @@ public interface PahoEndpointBuilderFactory {
* @param path topic
* @return the dsl builder
*/
+ @Deprecated
default PahoEndpointBuilder paho(String path) {
return PahoEndpointBuilderFactory.endpointBuilder("paho", path);
}
@@ -3015,6 +3017,7 @@ public interface PahoEndpointBuilderFactory {
* @param path topic
* @return the dsl builder
*/
+ @Deprecated
default PahoEndpointBuilder paho(String componentName, String path) {
return PahoEndpointBuilderFactory.endpointBuilder(componentName,
path);
}