From b2c8eb1adac1e7330521e8df028b815974c601b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Attila=20M=C3=A9sz=C3=A1ros?= Date: Wed, 9 Jul 2025 12:14:46 +0200 Subject: [PATCH 1/3] feat: add experimental annotation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Annotation would serve to mark experimental features. Signed-off-by: Attila Mészáros --- .../operator/api/reconciler/Experimental.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java diff --git a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java new file mode 100644 index 0000000000..cadcdce971 --- /dev/null +++ b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java @@ -0,0 +1,19 @@ +package io.javaoperatorsdk.operator.api.reconciler; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + + +/** + * Marks experimental features. + * + * Experimental features are not yet stable and may change in future releases. Usually based + * on the feedback of the users. + * + * */ +@Retention(RetentionPolicy.SOURCE) +@Target({ElementType.METHOD, ElementType.TYPE}) +public @interface Experimental { +} From 8f47e51886f6124243f2ecd19146795366dda5a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Attila=20M=C3=A9sz=C3=A1ros?= Date: Wed, 9 Jul 2025 12:58:11 +0200 Subject: [PATCH 2/3] format MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Attila Mészáros --- .../operator/api/reconciler/Experimental.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java index cadcdce971..ba38a226e4 100644 --- a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java +++ b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java @@ -5,15 +5,12 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; - /** * Marks experimental features. * - * Experimental features are not yet stable and may change in future releases. Usually based - * on the feedback of the users. - * - * */ + *

Experimental features are not yet stable and may change in future releases. Usually based on + * the feedback of the users. + */ @Retention(RetentionPolicy.SOURCE) @Target({ElementType.METHOD, ElementType.TYPE}) -public @interface Experimental { -} +public @interface Experimental {} From 809726b30f4fcb558d17f0f2780939846efefb93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Attila=20M=C3=A9sz=C3=A1ros?= Date: Wed, 9 Jul 2025 14:33:50 +0200 Subject: [PATCH 3/3] add value MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Attila Mészáros --- .../operator/api/reconciler/Experimental.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java index ba38a226e4..ae219fbd1d 100644 --- a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java +++ b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Experimental.java @@ -12,5 +12,13 @@ * the feedback of the users. */ @Retention(RetentionPolicy.SOURCE) -@Target({ElementType.METHOD, ElementType.TYPE}) -public @interface Experimental {} +@Target({ElementType.METHOD, ElementType.TYPE, ElementType.FIELD, ElementType.PACKAGE}) +public @interface Experimental { + + /** + * Describes why the annotated element is experimental. + * + * @return the experimental description. + */ + String value(); +}