Releases: apache/pulsar-client-cpp
Releases · apache/pulsar-client-cpp
v3.4.0
What's Changed
- Fix: client reconnected every authenticationRefreshCheckSeconds when using tls authentication by @jffp113 in #304
- Bumped version to 3.4.0-pre by @BewareMyPower in #305
- Avoid copying OpSendMsg when sending messages by @BewareMyPower in #308
- Avoid calling serializeSingleMessageInBatchWithPayload each time a message is added by @BewareMyPower in #309
- Avoid double attempt at reconnecting by @merlimat in #310
- Fix the visibility compilation error for GCC <= 7 by @BewareMyPower in #312
- [fix] Add the curl wrapper to avoid inconsistent curl options by @BewareMyPower in #313
- Fix broken cpp-build-windows workflow by @BewareMyPower in #316
- Fix broken wireshark build workflow on macOS by @BewareMyPower in #318
- Avoid accessing a null ClientConnection instance by @BewareMyPower in #317
- Fix the handler instance is expired when the connection is established by @BewareMyPower in #323
- Fix pending requests failed with ResultConnectError when disconnecting by @BewareMyPower in #322
- [fix] Fix consumer doesn't acknowledge all chunk message Ids by @RobertIndie in #321
- Fix segmentation fault when sending messages after receiving an error by @BewareMyPower in #326
- Fix topic not shown correctly in the consumer string by @BewareMyPower in #329
- Delay the timing of setting reconnectionPending to false to avoid double attempt at reconnecting by @shustsud in #328
- Fix segmentation fault caused by async_receive by @BewareMyPower in #330
- Fix topic name is shown as a pointer rather than string by @BewareMyPower in #331
- Avoid blocking the message listener threads by @erobot in #332
- Upgrade libcurl to 8.4.0 to fix CVEs by @BewareMyPower in #335
- Fix possible deadlock of Future when adding a listener after completed by @BewareMyPower in #334
- Added support for multiple connections to each broker by @merlimat in #336
- Fix ProducerBusy or ConsumerBusy error when configuring multiple brokers per connection by @BewareMyPower #337
New Contributors
Full Changelog: v3.3.0...v3.4.0
v3.3.0
What's Changed
- [feat] Support end-to-end encryption in C Reader API by @rbarbey in #262
- [doc] Fix compile perf on MacOS and Ubuntu. by @shibd in #263
- [Doc] Add links to client docs and feature matrix in README.md by @momo-jun in #264
- Fix deadlock for negative acknowledgment by @BewareMyPower in #266
- Support specifying the C++ standard for some higher dependencies by @BewareMyPower in #269
- Bumped version to 3.3.0-pre by @BewareMyPower in #271
- Fix batch receive for C client unit test failed. by @shibd in #272
- [improve] AuthAthenz supports Copper Argos by @shustsud in #274
- [feat][consumer] Support parse broker metadata by @shoothzj in #276
- add cmake-build-debug dir to gitignore by @shoothzj in #275
- [docs] Fix the developer guide for macOS users by @BewareMyPower in #279
- Fix flaky testConsumerEventWithoutPartition caused by the change of Pulsar 3.0 by @BewareMyPower in #281
- [feat][Message] Add getIndex method on Message by @shoothzj in #277
- Fix testSchemaIncompatibility for Protobuf 3.20.0 or later by @BewareMyPower in #282
- Remove log4cxx dependency and its specified configuration by @BewareMyPower in #283
- Close the socket gracefully on Windows by @BewareMyPower in #284
- Fix ci failed on macOS env. by @shibd in #288
- Fix broker return error code confusion when not setting subscription name. by @shibd in #289
- feat: Support message copy for C client. by @shibd in #285
- Add missing TLS-related method definitions for C client. by @shibd in #287
- [feat] Support configure startMessageIdInclusive for the reader by @RobertIndie in #291
- Fix build failure with the Protobuf 23.3 by @BewareMyPower in #290
- Fix retriable errors not handled well when creating producer or consumer by @BewareMyPower in #293
- [fix] producer will not be created when topic update partition by @TakaHiR07 in #295
- Fix the buggy Future and Promise implementations by @BewareMyPower in #299
- Fix the test script does not work for Docker on macOS by @BewareMyPower in #297
- feat: Support table view for C client. by @shibd in #294
- Fix the wrong backoff computation when retrying by @BewareMyPower in #296
- Fix the build failure with C++20 standard by @BewareMyPower in #302
- [fix] callback of send batch message receives a wrong result when flushing by @TakaHiR07 in #303
- [fix][client] Memory leak during GET_LAST_MESSAGE_ID command processing. by @fundaev in #301
New Contributors
- @rbarbey made their first contribution in #262
- @momo-jun made their first contribution in #264
- @shustsud made their first contribution in #274
- @shoothzj made their first contribution in #276
- @TakaHiR07 made their first contribution in #295
- @fundaev made their first contribution in #301
Full Changelog: v3.2.0...v3.3.0
v3.2.0
What's Changed
- Fix segmentation fault during the destruction of ConsumerImpl by @BewareMyPower in #121
- [improve] Exclude debug artifact in the release and tar the windows artifacts by @RobertIndie in #124
- [fix] Fix NamedEntity::checkName regression by @erobot in #127
- [fix] Fix PartitionedProducerImpl::closeAsync to close sub-producers properly by @erobot in #125
- [fix] Fix acknowledge MessageId list does not work when ackGroupingTimeMs is 0 by @BewareMyPower in #128
- Fix the broken master by the upgrade of GTest by @BewareMyPower in #133
- [fix] Close broker producer created after producer close by @erobot in #131
- [fix] Fix a crash when closing a connection while connecting by @erobot in #136
- Boost optional by @fregate in #138
- Add BatchedMessageIdImpl to acknowledge batched messages by @BewareMyPower in #132
- Bumped version to 3.2.0-pre by @RobertIndie in #141
- [fix] Use sudo when executing
apt-get installby @RobertIndie in #143 - [fix][doc] CMake is added to the Homebrew Mac Installation list by @erichare in #145
- [fix] Use authoritative argument correctly in BinaryProtoLookupService::findBroker by @erobot in #146
- [feat] PIP 107: Introduce chunk message ID by @RobertIndie in #148
- [fix] Fix
auxvdetection by @AtkinsChang in #152 - [fix][build] Hide non-exported symbols from the dependencies by @BewareMyPower in #155
- Format .c suffix file. by @shibd in #159
- [fix] Fix MessageId serialization when it's a batched message by @BewareMyPower in #153
- [fix] Fix log for connection disconnected expectedly by @RobertIndie in #156
- The C API supports setting the log level. by @shibd in #158
- [feat] Add pulsar_logger_t as the configurable C logger by @BewareMyPower in #162
- [feat] Support messages with generic types by @BewareMyPower in #149
- Fix segfault caused by socket I/O on a closed io_service by @BewareMyPower in #168
- [fix] Fix missing schema related function definitions by @romainbrancourt in #171
- [feat] Support batch index acknowledgment by @BewareMyPower in #151
- [fix] Fix hostname verification by @izumo27 in #126
- Fix broken main branch caused by wrong getBitSet method by @BewareMyPower in #177
- [feat] Reader support readeNextAsync interface. by @shibd in #176
- [feat] Support Dead Letter Topic. by @shibd in #139
- [feat] Support auto download schema when create producer. by @shibd in #157
- Fix Wireshark build by @Demogorgon314 in #182
- Support the Wireshark plugin for more Wireshark distributions by @BewareMyPower in #183
- [feat] Support partitioned topic reader. by @shibd in #154
- [fix] Avoid resource leakage of AckGroupingTracker by @erobot in #185
- [fix] Use ClientConfiguration::getTlsTrustCertsFilePath for the OAuth2 flow by @BewareMyPower in #190
- [fix] Fix deadlock when closing the partitioned producer by @RobertIndie in #187
- [Fix] NegativeAcksTracker need close when consumer closed. by @shibd in #188
- [TableView-1] Add table view API by @shibd in #189
- [improve] Add configuration to limit times of client's lookup redirection. by @tongsucn in #129
- Fix broken main branch that failed to build the wireshark dissector on macOS by @BewareMyPower in #199
- [feat] Add producer interceptor by @RobertIndie in #169
- [refactor] Handle responses in methods instead of switch cases by @BewareMyPower in #197
- [fix] Redeliver messages that can't be decrypted. by @shibd in #160
- [improve] Refactor client version format by @RobertIndie in #206
- [fix] Handle exceptions when creating timers when fd limit is reached by @BewareMyPower in #203
- [TableView-2] Implement all interfaces. by @shibd in #196
- Fix Client::close might hang forever for a multi-topics consumer by @BewareMyPower in #211
- Fix testPublishEmptyValue flaky test. by @shibd in #216
- Fix flaky testAcknowledgeCumulativeWithPartition by @BewareMyPower in #214
- Fix event loop thread might exit unexpectedly by @BewareMyPower in #217
- Use shared_ptr for topic name in message ids by @merlimat in #218
- [feat] Add consumer interceptor by @RobertIndie in #210
- Make stats timers thread safe to use by @BewareMyPower in #223
- Fix TableViewTest.testCreateTableView flaky test. by @shibd in #222
- [feat] Support ExclusiveWithFencing producer access mode. by @shibd in #201
- Fix possible crash caused by MessageId::getTopicName by @BewareMyPower in #225
- [feat] Add
onNegativeAcksSendto the consumer interceptor by @RobertIndie in #220 - [fix] Use unique topic name in ConsumerInterceptorsTest by @RobertIndie in #231
- Fix flaky test ProducerTest.testWaitForExclusiveProducer by @shibd in #233
- Support waiting for the ACK response by @BewareMyPower in #232
- [fix][flaky] Remove zero queue case in ConsumerInterceptorTest to reduce flaky by @RobertIndie in #239
- Fix ack non-persistent topic will be blocked. by @shibd in #240
- [feat] Support pattern subscribe non-persistent topic. by @shibd in #207
- [fix] Consumer batch receive will cause data loss. by @shibd in #228
- Fix typo in comment by @izumo27 in #243
- [feat] Support set producer access mode for C client. by @shibd in #245
- [fix] Fix compilation error that occurs when USE_LOG4CXX is ON by @massakam in #244
- Speed up the process to start standalone for tests by @BewareMyPower in #236
- [feat] Support set batch index ack for C client. by @shibd in #246
- [cleanup] Remove useless variable
interceptors_inProducerImplBaseby @RobertIndie in #250 - Fix the static library might failed to link on Windows by @BewareMyPower in #251
- [feat] Support set consumer regex subscription mode for C client. by @shibd in #247
- Support the base64 encoded credentials for OAuth2 authentication by @BewareMyPower in #249
- [C API] Support synchronous consumer batch receive by @BewareMyPower in #252
- PIP-254: Support configuring client version with a description suffix by @BewareMyPower in #253
- Complete batch receive other feature of C client by @shibd in #254
- [Bug Fix][KeySharedPolicy] Fixed bug where KeySharedPolicy::setStickyRanges duplicated ranges. by @hyperevo in #242
- Improve the C APIs for batch receive policy and fix the wrong documents by @BewareMyPower in https://github.com/apache/pulsar-client-c...
v3.1.2
What's Changed
- [fix] Use ClientConfiguration::getTlsTrustCertsFilePath for the OAuth2 flow by @BewareMyPower in #190
- [fix] Avoid resource leakage of AckGroupingTracker by @erobot in #185
- Support the Wireshark plugin for more Wireshark distributions by @BewareMyPower in #183
- Fix Wireshark build by @Demogorgon314 in #182
Full Changelog: v3.1.1...v3.1.2
v3.1.1
What's Changed
- Fix segfault caused by socket I/O on a closed io_service by @BewareMyPower in #168
- [fix][build] Hide non-exported symbols from the dependencies by @BewareMyPower in #155
- [fix] Use authoritative argument correctly in BinaryProtoLookupService::findBroker by @erobot in #146
- [fix] Fix a crash when closing a connection while connecting by @erobot in #136
- [fix] Close broker producer created after producer close by @erobot in #131
- [fix] Fix hostname verification by @izumo27 in #126
Full Changelog: v3.1.0...v3.1.1
v3.1.0
What's Changed
- [feat] Consumer support batch receive messages. by @shibd in #21
- [feat] Support KeyValue Schema. by @shibd in #22
- [feat] Support acknowledging a list of messages by @shibd in #23
- Use parametrized job to build packages by @merlimat in #36
- Improved the CI check completion by @merlimat in #40
- Stick clang-format version to 11 and add back docker-format.sh by @BewareMyPower in #45
- Updated Github actions versions to avoid deprecations by @merlimat in #49
- [flaky-test] Fix very flaky tests for TEST_P by @BewareMyPower in #59
- [flaky tests] Fix flaky ShutdownTest::testDestructor by @BewareMyPower in #62
- [refactor] Apply forward declaration as much as possible by @BewareMyPower in #64
- Fix macOS compilation errors caused by forward declaration by @Demogorgon314 in #67
- [ci] Add macOS build workflow by @Demogorgon314 in #68
- [fix][doc] explicitly instruct clone the repo by @tisonkun in #69
- [feat] Support expiration for chunked messages by @RobertIndie in #71
- Add windows release artifacts by @yaalsn in #72
- Support linking static dependencies when building with MSVC by @BewareMyPower in #73
- [refactor] Remove useless files and config. by @shibd in #76
- Fix CI install deps failed. by @shibd in #96
- [fix] Flush no batch message when call producer.flush by @shibd in #98
- [Build] Use Windows server 2019 to release Windows artifacts by @BewareMyPower in #99
- [fix] Fix consumer doesn't clear incomingMessageQueue during seek by @RobertIndie in #101
- Fix Doxygen generation by @BewareMyPower in #103
- Add MessageId::batchSize() and the MessageIdBuilder by @BewareMyPower in #105
- Fix MessageId::getDataAsString() crashed with MSVC debug config by @BewareMyPower in #108
- [feat] Support WaitForExclusive producer access mode. by @shibd in #109
- [fix] Fix wrong behavior when removing the chunkedMessageCtx by @RobertIndie in #110
- [Improve][Build] Use pulsar client as a submodule for C++ projects by @fregate in #115
- Fix getLastMessageId method dead recursion. by @shibd in #117
- [feat] Support consumer seek by timestamp and reader seek for C Api by @RobertIndie in #118
Full Changelog: https://github.com/apache/pulsar-client-cpp/commits/v3.1.0
New Contributors
Release 3.0.0
What's Changed
- PIP-209: Removed Python client wrapper by @merlimat in #1
- PIP-209: Build C++ client in standalone repo by @merlimat in #2
- Added .asf.yaml file by @merlimat in #3
- Add pull request template by @Demogorgon314 in #8
- Add bug report issue template by @Demogorgon314 in #7
- Added license and notice files by @merlimat in #9
- Fixed RPM / Deb / APK packages and enabled CI build by @merlimat in #11
- Add TLS transport config by @nodece in #12
- Build release artifacts by @merlimat in #15
- Run unit tests in CI by @merlimat in #14
- Enable format check in PR validation by @merlimat in #17
- Install googletest with homebrew in macOS by @maxsxu in #20
- Added script to download release artifacts by @merlimat in #18
- Build images with deps versions by @merlimat in #19
- Renamed github action jobs and removed centos7 build by @merlimat in #25
- Generate and install pulsarStaticWithDeps into correct paths by @BewareMyPower in #26
- [fix] Fix README.md build path by @Demogorgon314 in #29
- [fix] Force static libraries to be linked when LINK_STATIC is enabled by @BewareMyPower in #28
- [feat] Expose start message id inclusive configuration to C API by @Demogorgon314 in #27
- Removed extra call of
find_package(OpenSSL)by @merlimat in #30 - Fix incorrect path in docker scripts by @RobertIndie in #32
- Enable required check status for PR validation by @RobertIndie in #33
- Link to OpenSSL statically when LINK_STATIC is ON by @BewareMyPower in #31
- [docs] Fix compilation guidance on Ubuntu by @BewareMyPower in #34
New Contributors
Full Changelog: https://github.com/apache/pulsar-client-cpp/commits/v3.0.0