From 617da6247da1dd535105690fa933c1f58a1a4fa6 Mon Sep 17 00:00:00 2001 From: Chris Bono Date: Thu, 15 Jun 2023 22:32:45 -0500 Subject: [PATCH] [Docs] Add project status/evolution section (#415) Resolves #412 --- README.adoc | 2 ++ .../src/main/asciidoc/intro.adoc | 4 ++++ .../src/main/asciidoc/project-state.adoc | 21 +++++++++++++++++++ .../main/asciidoc/version-compatibility.adoc | 7 +++++-- 4 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 spring-pulsar-docs/src/main/asciidoc/project-state.adoc diff --git a/README.adoc b/README.adoc index 04267d5d..b283d274 100644 --- a/README.adoc +++ b/README.adoc @@ -6,6 +6,8 @@ Spring Pulsar provides a basic Spring-friendly API for developing https://pulsar **#TIP#**: Most of the ideas in this project are borrowed from the Spring for Apache Kafka project, thus a familiarity with it would help. +include::spring-pulsar-docs/src/main/asciidoc/project-state.adoc[leveloffset=+1] + == Getting Started The {docs}/html/[reference documentation] includes a {docs}/html/#quick-tourhtml[quick tour] section. diff --git a/spring-pulsar-docs/src/main/asciidoc/intro.adoc b/spring-pulsar-docs/src/main/asciidoc/intro.adoc index 62981dbd..be742499 100644 --- a/spring-pulsar-docs/src/main/asciidoc/intro.adoc +++ b/spring-pulsar-docs/src/main/asciidoc/intro.adoc @@ -4,6 +4,8 @@ This project provides a basic Spring-friendly API for developing https://pulsar. On a very high level, Spring for Apache Pulsar provides a `PulsarTemplate` for publishing to a Pulsar topic and a `PulsarListener` annotation for consuming from a Pulsar topic. In addition, it also provides various convenience APIs for Spring developers to ramp up their development journey into Apache Pulsar. +include::project-state.adoc[leveloffset=+1] + == Supported Versions The supported versions for the underlying libraries required by the framework are as follows: @@ -34,6 +36,8 @@ The supported versions for the underlying libraries required by the framework ar NOTE: The **Version Used** is the version of the library targeted by Spring Pulsar {spring-pulsar-version} (the version of the framework this reference guide belongs to). +Details for other versions and compatibility can be found in the <>. + == Building the Project If you have cloned the project locally, follow these steps to build the project from the source code. diff --git a/spring-pulsar-docs/src/main/asciidoc/project-state.adoc b/spring-pulsar-docs/src/main/asciidoc/project-state.adoc new file mode 100644 index 00000000..84eba68c --- /dev/null +++ b/spring-pulsar-docs/src/main/asciidoc/project-state.adoc @@ -0,0 +1,21 @@ += Project Status +While the code and functionality of the framework is thoroughly tested and ready for production, the project is in a bit of flux while transitioning from experimental GA (`0.2.x`) to GA (`1.0.0`). + +The evolution of the project (by version) is as follows: + +== Version 0.2.x +All components (`the core + Spring Boot autoconfiguration + Spring Cloud Stream binder`) reside in the `spring-pulsar` Github repository. + +This is considered an "experimental" GA, defined as: + +- code and functionality is production ready, but decision has not been made to support the project permanently +- available on Maven Central using a major version of `0` to indicate its nature + +== Version 1.0.x +This is the "full" GA and the components are split as follows (in-progress): + +- the core stays in the `spring-pulsar` repo (`main` branch) +- the autoconfiguration moves to the Spring Boot project (targeting Spring Boot `3.2.0`) +- the binder moves to the Spring Cloud Stream project (targeting SCSt `4.1.0`) + +NOTE: Until the GA release, the recommended version of the framework is `0.2.x`. diff --git a/spring-pulsar-docs/src/main/asciidoc/version-compatibility.adoc b/spring-pulsar-docs/src/main/asciidoc/version-compatibility.adoc index 940623e5..cf94a4c0 100644 --- a/spring-pulsar-docs/src/main/asciidoc/version-compatibility.adoc +++ b/spring-pulsar-docs/src/main/asciidoc/version-compatibility.adoc @@ -21,7 +21,10 @@ The following is the compatibility matrix: | 17+ |=== +[NOTE] +==== +In version `1.0.0` the auto-configuration moved into Spring Boot `3.2.x` and therefore `3.2.x` is the minimum Spring Boot version supported when using version `1.0.x` of the framework. -NOTE: In version `1.0.0` the auto-configuration moved into Spring Boot `3.2.x` and therefore `3.2.x` is the minimum Spring Boot version supported when using version `1.0.x` of the framework. -Prior to version `1.0.0`, the auto-configuration support exists in the framework itself. +However, prior to version `1.0.0`, the auto-configuration support exists in the framework itself. ^**(*)**^This makes it theoretically possible to use later versions of Spring Boot besides `3.0.x` which it is tested against and guaranteed to work with. In other words, it may work with `3.1.x` but it has not been tested against it. +====