Commit Graph

839 Commits

Author SHA1 Message Date
Chris Bono
8dcff29f7c Add common container factory interface (#829)
This introduces a common interface for all message listener containers.
Prior to this commit, the reader and listener containers had no common
abstraction. This is needed to introduce a generic container factory
customizer in Spring Boot.
2024-09-09 16:54:56 -05:00
Chris Bono
001212583f Add IT for config props driven listener (#822)
This commit adds an integration test to verify the following Spring Boot
config props can be used to configure `@PulsarListener` and
`@ReactivePulsarListener`:

- `spring.pulsar.consumer.topic`
- `spring.pulsar.consumer.subscription.name`
- `spring.pulsar.consumer.subscription.type`

See https://github.com/spring-projects/spring-boot/issues/42053
2024-09-05 20:40:16 -05:00
Chris Bono
a518e11089 Add startup failure policy to listeners (#824)
Previously, when a listener container failed to start, it
would only log the exception. This commit introduces
`StartupFailurePolicy` that allows listener containers to CONTINUE,
STOP, RETRY when an error is encountered on startup.

See #445
See #816
2024-09-05 20:39:58 -05:00
Chris Bono
c254d6b6d3 Update docs for default tenant/namespace 2024-09-04 10:40:13 -05:00
Vedran Pavic
bec9318c7a Add concurrency to PulsarContainerProperties
This commit adds concurrency property to `PulsarContainerProperties` instead
of managing it directly on `ConcurrentPulsarListenerContainerFactory`, which
provides consistency with both reactive counterpart and container properties
in general.

Resolves: #820
2024-09-03 18:05:52 -05:00
Chris Bono
136d465c12 Move default subscription name to factory (#821)
This commit moves the default subscription name from the
`@PulsarListener` and `@ReactivePulsarListener` annotation to the
corresponding container factory (props) which allows the
`spring.pulsar.consumer.subscription.name` config prop to be respected.

See https://github.com/spring-projects/spring-boot/issues/42053
2024-08-31 10:41:32 -05:00
Chris Bono
5946c95a17 Move default subscription type to factory (#818)
This commit moves the default subscription type from the
`@PulsarListener` and `@ReactivePulsarListener` annotation to the
associated container factory (props) which allows the Spring Boot
`spring.pulsar.consumer.subscription-type` config prop to be respected.

See https://github.com/spring-projects/spring-boot/issues/42053
2024-08-29 23:39:50 -05:00
Vedran Pavic
01a95a70a2 chris.bono@gmail.com
This commit fixes invalid documentation references to
`spring.pulsar.consumer.subscription.type` configuration property.
2024-08-29 13:55:36 -05:00
Chris Bono
9064623fb1 Use auto-configured PulsarTopicBuilder (#817)
Now that Spring Boot `3.4.0-M2` auto-configures the `PulsarTopicBuilder`, this commit
updates ITs, samples, and docs accordingly.
2024-08-24 16:35:03 -05:00
Chris Bono
824c020573 [Release 1.2.0-M1] Update to next Boot snapshot 2024-08-23 10:27:42 -05:00
github-actions[bot]
ca192c673e [Release 1.2.0-M1] Next development version 2024-08-20 15:11:12 +00:00
Chris Bono
8032eafe3e [Release 1.2.0-M1] Update version (#808) 2024-08-20 09:47:39 -05:00
Chris Bono
eefea9af69 Update default tenant/namespace docs (#805)
* The Spring Boot config props are now under the
`spring.pulsar.defaults.topic` prefix.

* There is also a new `enabled` property.

See #756
2024-08-19 15:26:17 -05:00
Chris Bono
bbc186029f Update Reactor to 2024.0.0-M5 (#804) 2024-08-19 14:37:37 -05:00
Chris Bono
f6be2dc694 Update Spring Cloud Stream to 4.2.0-M1 (#803) 2024-08-19 14:29:45 -05:00
dependabot[bot]
c98f588f0a Bump org.springframework.retry:spring-retry from 2.0.7 to 2.0.8 (#800)
Bumps [org.springframework.retry:spring-retry](https://github.com/spring-projects/spring-retry) from 2.0.7 to 2.0.8.
- [Release notes](https://github.com/spring-projects/spring-retry/releases)
- [Commits](https://github.com/spring-projects/spring-retry/compare/v2.0.7...v2.0.8)

---
updated-dependencies:
- dependency-name: org.springframework.retry:spring-retry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-19 08:07:57 -05:00
dependabot[bot]
84fc9759e6 Bump pulsar-reactive from 0.5.6 to 0.5.7 (#795)
Bumps `pulsar-reactive` from 0.5.6 to 0.5.7.

Updates `org.apache.pulsar:pulsar-client-reactive-api` from 0.5.6 to 0.5.7
- [Release notes](https://github.com/apache/pulsar-client-reactive/releases)
- [Commits](https://github.com/apache/pulsar-client-reactive/compare/v0.5.6...v0.5.7)

Updates `org.apache.pulsar:pulsar-client-reactive-adapter` from 0.5.6 to 0.5.7
- [Release notes](https://github.com/apache/pulsar-client-reactive/releases)
- [Commits](https://github.com/apache/pulsar-client-reactive/compare/v0.5.6...v0.5.7)

Updates `org.apache.pulsar:pulsar-client-reactive-producer-cache-caffeine-shaded` from 0.5.6 to 0.5.7
- [Release notes](https://github.com/apache/pulsar-client-reactive/releases)
- [Commits](https://github.com/apache/pulsar-client-reactive/compare/v0.5.6...v0.5.7)

---
updated-dependencies:
- dependency-name: org.apache.pulsar:pulsar-client-reactive-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.pulsar:pulsar-client-reactive-adapter
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.pulsar:pulsar-client-reactive-producer-cache-caffeine-shaded
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-16 16:41:26 -05:00
dependabot[bot]
c7c0ecb6d7 Bump ch.qos.logback:logback-classic from 1.5.6 to 1.5.7 (#796)
Bumps [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) from 1.5.6 to 1.5.7.
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.6...v_1.5.7)

---
updated-dependencies:
- dependency-name: ch.qos.logback:logback-classic
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-16 16:40:11 -05:00
Chris Bono
14cf303f54 Update Spring and various deps to next major version (#794)
This commit updates the following dependencies to the
next major version to follow suit w/ Spring Boot 3.4.0

* Update Spring to 6.2.0-M7
* Update Reactor to 6.2.0-M7
* Update Micrometer to 1.14.0-M2
* Update Micrometer Tracig to 1.4.0-M2

Resolves #790 #791 #792 #793
2024-08-15 18:45:20 -05:00
dependabot[bot]
155f7242c6 Bump io.projectreactor:reactor-bom from 2023.0.8 to 2023.0.9 (#784)
Bumps [io.projectreactor:reactor-bom](https://github.com/reactor/reactor) from 2023.0.8 to 2023.0.9.
- [Release notes](https://github.com/reactor/reactor/releases)
- [Commits](https://github.com/reactor/reactor/compare/2023.0.8...2023.0.9)

---
updated-dependencies:
- dependency-name: io.projectreactor:reactor-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-14 12:20:03 -05:00
Chris Bono
f00ede41f0 Allow PulsarTopicBuilder#init null values (#777)
* Allow PulsarTopicBuilder#init null values

See #756

* Clarify the deprecation of PulsarTopic.builder
2024-08-13 10:59:52 -05:00
dependabot[bot]
e854e7881f Bump io.micrometer:micrometer-tracing-bom from 1.3.2 to 1.3.3 (#779)
Bumps [io.micrometer:micrometer-tracing-bom](https://github.com/micrometer-metrics/tracing) from 1.3.2 to 1.3.3.
- [Release notes](https://github.com/micrometer-metrics/tracing/releases)
- [Commits](https://github.com/micrometer-metrics/tracing/compare/v1.3.2...v1.3.3)

---
updated-dependencies:
- dependency-name: io.micrometer:micrometer-tracing-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-13 08:27:09 -05:00
dependabot[bot]
32015e0b13 Bump io.micrometer:micrometer-bom from 1.13.2 to 1.13.3 (#778)
Bumps [io.micrometer:micrometer-bom](https://github.com/micrometer-metrics/micrometer) from 1.13.2 to 1.13.3.
- [Release notes](https://github.com/micrometer-metrics/micrometer/releases)
- [Commits](https://github.com/micrometer-metrics/micrometer/compare/v1.13.2...v1.13.3)

---
updated-dependencies:
- dependency-name: io.micrometer:micrometer-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-13 08:26:56 -05:00
Chris Bono
6d23378fbb Add support for default tenant and namespace (#766)
See #756
2024-08-12 14:03:32 -05:00
Chris Bono
96c12de142 Use dynamic version for Pulsar docs link (#776)
Prior to this commit, the version number used in the Pulsar docs link
was hardcoded to `3.2.x`. Now the version number is derived from the
Pulsar client lib version specified in libs.version.toml.
2024-08-11 08:14:52 -05:00
Chris Bono
4981b28c2d Update to Pulsar 3.3.1 (#772)
* Update to Pulsar 3.3.1

* Handles deprecation to PulsarClient.getPartitionsForTopic(String)

* Adds support to PulsarClientProxy for newly added
PulsarClient.getPartitionsForTopic(String, boolean)

* Add deprecation note to "What's New" doc

Resolves #767
2024-08-10 21:24:19 -05:00
dependabot[bot]
db77d870f2 Bump org.awaitility:awaitility from 4.2.1 to 4.2.2 (#771)
Bumps [org.awaitility:awaitility](https://github.com/awaitility/awaitility) from 4.2.1 to 4.2.2.
- [Changelog](https://github.com/awaitility/awaitility/blob/master/changelog.txt)
- [Commits](https://github.com/awaitility/awaitility/compare/awaitility-4.2.1...awaitility-4.2.2)

---
updated-dependencies:
- dependency-name: org.awaitility:awaitility
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-10 16:23:40 -05:00
Chris Bono
af5c140603 [CI] Update dependabot schedule / add branch 1.1.x 2024-08-09 23:12:41 -05:00
Chris Bono
755f25bda1 Update to Spring Boot 3.4.0-M1 (#764)
NOTE: Also had to update to SCSt 4.2.0-SNAPSHOT to workaround
https://github.com/spring-cloud/spring-cloud-function/issues/1149

Resolves #758
2024-08-09 22:59:59 -05:00
Chris Bono
2801131da7 Update to Pulsar 3.3.0 (#763)
Resolves #757
2024-07-30 14:43:24 -05:00
Chris Bono
fe07a7a3fd Allow custom object mapper for headers (#762)
This commit adds support for a user-provided Jackson ObjectMapper to be
used when deserializing JSON header values.

See #723

Co-authored-by: Jihoon Kim <pigberger70@gmail.com>
2024-07-30 13:35:54 -05:00
Chris Bono
5637df21ce Update algolia dependencies in package.json 2024-07-29 23:42:31 -05:00
Chris Bono
2207eb2733 [CI] Update 1.0.x and 1.1.x CI schedules (every N days) 2024-07-29 23:36:04 -05:00
Chris Bono
70e9e60f39 Allow custom object mapper for messages (#755)
This commit adds support for a user-provided Jackson ObjectMapper to be
used when de/serializing JSON messages.

Additionally, adds Gradle test fixtures to the spring-pulsar module and
deprecates the UserRecord and UserPojo in spring-pulsar-test in favor
of their equivalent in the test fixture.

See #723
2024-07-29 21:57:27 -05:00
Chris Bono
3fcb22de91 Prepare main for new version 1.2.0 (take 2) 2024-07-29 15:09:23 -05:00
Chris Bono
b244250af5 Prepare main for new version 1.2.0 2024-07-28 22:53:50 -05:00
Chris Bono
00edcaf08f Prepare CI for new minor branch 1.2.0 2024-07-28 22:47:33 -05:00
dependabot[bot]
61babd1114 Bump com.gradle.develocity from 3.17.5 to 3.17.6 (#760)
Bumps com.gradle.develocity from 3.17.5 to 3.17.6.

---
updated-dependencies:
- dependency-name: com.gradle.develocity
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-28 00:25:29 -05:00
dependabot[bot]
a270862640 Bump com.google.protobuf:protobuf-java from 3.25.3 to 3.25.4 (#759)
Bumps [com.google.protobuf:protobuf-java](https://github.com/protocolbuffers/protobuf) from 3.25.3 to 3.25.4.
- [Release notes](https://github.com/protocolbuffers/protobuf/releases)
- [Changelog](https://github.com/protocolbuffers/protobuf/blob/main/protobuf_release.bzl)
- [Commits](https://github.com/protocolbuffers/protobuf/compare/v3.25.3...v3.25.4)

---
updated-dependencies:
- dependency-name: com.google.protobuf:protobuf-java
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-27 12:03:53 -05:00
Chris Bono
d56d710518 [Release 1.1.2] Update to next Boot snapshot 2024-07-20 14:12:17 -05:00
github-actions[bot]
267352ccfe [Release 1.1.2] Next development version 2024-07-17 00:49:02 +00:00
Chris Bono
3b524df6a8 [CI] Add AdHoc release workflow
Adds Github workflow that can be run to handle the release process
if the 'Deploy Artifacts' step fails due to timeout but the repo
is eventually closed or closed manually.
2024-07-16 19:13:11 -05:00
Chris Bono
47b53d8b57 [Release 1.1.2] Update version (#750)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-07-16 18:07:19 -05:00
Chris Bono
0c42030c27 [CI] Replace Slack w/ GChat
Use GChat instead of Slack when announcing a release.
2024-07-16 17:43:03 -05:00
dependabot[bot]
62744ec3f5 Bump io.spring.dependency-management (#736)
Bumps the development-dependencies group with 1 update: [io.spring.dependency-management](https://github.com/spring-gradle-plugins/dependency-management-plugin).


Updates `io.spring.dependency-management` from 1.1.5 to 1.1.6
- [Release notes](https://github.com/spring-gradle-plugins/dependency-management-plugin/releases)
- [Commits](https://github.com/spring-gradle-plugins/dependency-management-plugin/compare/v1.1.5...v1.1.6)

---
updated-dependencies:
- dependency-name: io.spring.dependency-management
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: development-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-16 11:30:16 -05:00
dependabot[bot]
8dac968a88 Bump io.projectreactor:reactor-bom from 2023.0.7 to 2023.0.8 (#739)
Bumps [io.projectreactor:reactor-bom](https://github.com/reactor/reactor) from 2023.0.7 to 2023.0.8.
- [Release notes](https://github.com/reactor/reactor/releases)
- [Commits](https://github.com/reactor/reactor/compare/2023.0.7...2023.0.8)

---
updated-dependencies:
- dependency-name: io.projectreactor:reactor-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-16 11:29:49 -05:00
dependabot[bot]
bae12b8efe Bump io.micrometer:micrometer-tracing-bom from 1.3.1 to 1.3.2 (#738)
Bumps [io.micrometer:micrometer-tracing-bom](https://github.com/micrometer-metrics/tracing) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/micrometer-metrics/tracing/releases)
- [Commits](https://github.com/micrometer-metrics/tracing/compare/v1.3.1...v1.3.2)

---
updated-dependencies:
- dependency-name: io.micrometer:micrometer-tracing-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-16 11:29:30 -05:00
dependabot[bot]
8e2a920f0b Bump io.micrometer:micrometer-bom from 1.13.1 to 1.13.2 (#737)
Bumps [io.micrometer:micrometer-bom](https://github.com/micrometer-metrics/micrometer) from 1.13.1 to 1.13.2.
- [Release notes](https://github.com/micrometer-metrics/micrometer/releases)
- [Commits](https://github.com/micrometer-metrics/micrometer/compare/v1.13.1...v1.13.2)

---
updated-dependencies:
- dependency-name: io.micrometer:micrometer-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-16 11:29:08 -05:00
dependabot[bot]
0288b5e12c Bump org.springframework.retry:spring-retry from 2.0.6 to 2.0.7 (#740)
Bumps [org.springframework.retry:spring-retry](https://github.com/spring-projects/spring-retry) from 2.0.6 to 2.0.7.
- [Release notes](https://github.com/spring-projects/spring-retry/releases)
- [Commits](https://github.com/spring-projects/spring-retry/compare/v2.0.6...v2.0.7)

---
updated-dependencies:
- dependency-name: org.springframework.retry:spring-retry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-16 11:26:37 -05:00
dependabot[bot]
f55fee6c32 Bump org.springframework:spring-framework-bom from 6.1.10 to 6.1.11 (#741)
Bumps [org.springframework:spring-framework-bom](https://github.com/spring-projects/spring-framework) from 6.1.10 to 6.1.11.
- [Release notes](https://github.com/spring-projects/spring-framework/releases)
- [Commits](https://github.com/spring-projects/spring-framework/compare/v6.1.10...v6.1.11)

---
updated-dependencies:
- dependency-name: org.springframework:spring-framework-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-16 11:26:27 -05:00