Skip to content

Releases: apache/pulsar-client-go

v0.12.1

08 Mar 10:27
v0.12.1
Compare
Choose a tag to compare

What's Changed

v0.12.0

29 Jan 01:40
v0.12.0
Compare
Choose a tag to compare

What's Changed

  • Improved the performance of schema and schema cache by @gunli in #1033
  • Fixed return when registerSendOrAckOp() failed by @gunli in #1045
  • Fixed the incorrect link in the release process by @RobertIndie in #1050
  • Fixed Producer by checking if message is nil by @gunli in #1047
  • Added 0.11.0 change log by @RobertIndie in #1048
  • Fixed 0.11.0 change log by @RobertIndie in #1054
  • Fixed issue 877 where ctx in partitionProducer.Send() was not performing as expected by @Gleiphir2769 in #1053
  • Fixed Producer by stopping block request even if Value and Payload are both set by @gunli in #1052
  • Improved Producer by simplifying the flush logic by @gunli in #1049
  • Fixed issue 1051: inaccurate producer memory limit in chunking and schema by @Gleiphir2769 in #1055
  • Fixed issue by sending Close Command on Producer/Consumer create timeout by @michaeljmarshall in #1061
  • Fixed issue 1057: producer flush operation is not guaranteed to flush all messages by @Gleiphir2769 in #1058
  • Fixed issue 1064: panic when trying to flush in DisableBatching=true by @Gleiphir2769 in #1065
  • Fixed transaction acknowledgement and send logic for chunk message by @liangyepianzhou in #1069
  • Fixed issue by closing consumer resources if creation fails by @michaeljmarshall in #1070
  • Fixed issue where client reconnected every authenticationRefreshCheckSeconds when using TLS authentication by @jffp113 in #1062
  • Corrected the SendAsync() description by @Gleiphir2769 in #1066
  • CI: replaced license header checker and formatter by @tisonkun in #1077
  • Chore: allowed rebase and merge by @tisonkun in #1080
  • Adopted pulsar-admin-go sources by @tisonkun in #1079
  • Reverted: allowed rebase and merge by @tisonkun in #1081
  • Fixed producer by failing all messages that are pending requests when closing like Java by @graysonzeng in #1059
  • Supported load config from env by @tuteng in #1089
  • Fixed issue where multiple calls to client.Close causes panic by @crossoverJie in #1046
  • Improved client by implementing GetLastMSgID for Reader by @liangyepianzhou in #1087
  • Fixed comment for ConnectionMaxIdleTime by @massakam in #1091
  • Issue 1094: connectionTimeout respects net.Dialer default timeout by @zzzming in #1095
  • Supported OAuth2 with scope field by @labuladong in #1097
  • Fixed issue where DisableReplication flag does not work by @massakam in #1100
  • Double-checked before consumer reconnect by @zccold in #1084
  • Fixed schema error by @leizhiyuan in #823
  • PR-1071-1: renamed pendingItem.Complete() to pendingItem.done() by @gunli in #1109
  • PR-1071-2: added sendRequest.done() to release resource together by @gunli in #1110
  • Refactor: factored out validateMsg by @tisonkun in #1117
  • Refactor: factored out prepareTransaction by @tisonkun in #1118
  • Completed comment on ProducerInterceptor interface BeforeSend method by @ojcm in #1119
  • Refactor: prepared sendrequest and moved to internalSendAsync by @tisonkun in #1120
  • Fix: normalized all send request resource release into sr.done by @tisonkun in #1121
  • Improvement: added func blockIfQueueFull() to encapsulate DisableBlockIfQue… by @gunli in #1122
  • Improved debug log clarity in ReceivedSendReceipt() by @gunli in #1123
  • Fixed issue 1098 by checking batchBuilder in case batch is disabled by @zzzming in #1099
  • Fixed Producer by fixing reconnection backoff logic by @gunli in #1125
  • Added 0.11.1 change log by @RobertIndie in #1092
  • Fixed dead link to the KEYS file in the release process by @RobertIndie in #1127
  • Improved performance by pooling sendRequest by @gunli in #1126
  • Fixed argument order to Errorf in TableView message handling by @ojcm in #1130
  • Fixed Producer by double-checking before reconnect by @gunli in #1131
  • Fixed issue where client must not retry connecting to broker when topic is terminated by @pkumar-singh in #1128
  • Issue 1132: Fixed JSONSchema unmarshalling in TableView by @ojcm in #1133
  • Improved by setting dlq producerName by @crossoverJie in #1137
  • Fixed channel deadlock in regexp consumer by @goncalo-rodrigues in #1141
  • Fixed Producer: handled TopicNotFound/TopicTerminated/ProducerBlockedQuotaExceededException/ProducerFenced when reconnecting by @gunli in #1134
  • Transaction: Avoided a panic when using transaction by @Gilthoniel in #1144
  • Improved by updating connection.lastDataReceivedTime when connection is ready by @gunli in #1145
  • Improved Producer by normalizing and exporting the errors by @gunli in #1143
  • Updated Unsubscribe() interface comment by @geniusjoe in #1146
  • Issue 1105: Fixed AutoTopicCreation for type non-partitioned by @tomjo in #1107
  • Added test for admin topic creation by @RobertIndie in #1152
  • Implemented GetTopicAutoCreation by @jiangpengcheng in #1151
  • Bumped github.com/dvsekhvalnov/jose2go from 1.5.0 to 1.6.0 by @dependabot in #1150
  • Bump golang.org/x/net from 0.0.0-20220225172249-27dd8689420f to 0.17.0 by @BewareMyPower in #1155
  • Fix DLQ producer name conflicts when multiples consumers send messages to DLQ by @crossoverJie in #1156

New Contributors

v0.11.1

07 Nov 10:55
v0.11.1
Compare
Choose a tag to compare

Improve

Full Changelog: v0.11.0...v0.11.1-candidate-1

v0.11.0

10 Jul 09:12
v0.11.0
Compare
Choose a tag to compare

Features

Improve

New Contributors

Full Changelog: v0.10.0...v0.11.0

v0.10.0

03 Apr 07:22
v0.10.0
Compare
Choose a tag to compare

Feature

Improve

New Contributors

v0.9.0

09 Oct 02:31
dd63a4c
Compare
Choose a tag to compare

What's Changed

  • add 0.8.0 changelog for repo by @wolfstudy in #727
  • [Issue 729]stop ticker when create producer failed by @NaraLuwan in #730
  • Update version file to 0.8.0 by @wolfstudy in #728
  • [Issue 725][Dependencies] Upgrade beefsack/go-rate by @shubham1172 in #735
  • Upgrade klauspost/compress to v1.14.4 by @dferstay in #740
  • Upgrade prometheus client to 1.11.1 by @nicoloboschi in #738
  • add 0.8.1 changelog by @freeznet in #742
  • Temporarily point ci to pulsar 2.8.2 by @shoothzj in #747
  • [build] make go version consistent by @shoothzj in #751
  • Exposing broker metadata by @shoothzj in #745
  • Add schema support to Reader by @ZiyaoWei in #741
  • allow config reader subscription name by @shoothzj in #754
  • Cleanup topics after unit tests by @ZiyaoWei in #755
  • Add TableView support by @ZiyaoWei in #743
  • Fix ack timeout cause reconnect by @wolfstudy in #756
  • fix: add service not ready check by @nodece in #757
  • Dlq producer on topic with schema by @GPrabhudas in #723
  • fix annotation typo in consumer.go by @shoothzj in #758
  • Fix producer unable register when cnx closed by @wolfstudy in #761
  • Add -c/--max-connections parameter to pulsar-perf-go and set it to 1 by default by @lhotari in #765
  • [Issue 763][producer] Fix deadlock in Producer Send when message fails to encode. by @samuelhewitt in #762
  • [Issue 749]Fix panic caused by flushing current batch with an incorrect internal function. by @shileiyu in #750
  • Add consumer state check when request commands by @wolfstudy in #772
  • Fix sequenceID is not equal to cause the connection to be closed incorrectly by @wolfstudy in #774
  • Add error response for Ack func by @wolfstudy in #775
  • Revert "Fix stuck when reconnect broker (#703)" by @lhotari in #767
  • [Issue 718] Fix nil pointer dereference in TopicNameWithoutPartitionPart by @hantmac in #734
  • Support ack response for Go SDK by @wolfstudy in #776
  • [Issue 779]Fix ack request not set requestId when enable AckWithResponse option by @liushengzhong0927 in #780
  • [issue 791] allow to add at least one message on batch builder by @zzzming in #792
  • schema creation and validation functions without panicing by @zzzming in #794
  • [github ci] add go 1.18 to the test matrix by @pgier in #790
  • Fix using closed connection in consumer by @hrsakai in #785
  • feat: add basic authentication by @nodece in #778
  • [Issue 781][add consumer seek by time on partitioned topic] by @GPrabhudas in #782
  • [ci] update and simplify GitHub workflow by @pgier in #796
  • feat: support multiple schema version for producer and consumer by @oryx2 in #611
  • [issue #752] replace go-rate rate limiter with a buffered channel implementation by @zzzming in #799
  • [issue 814] consumer and producer reconnect failure metrics counter by @zzzming in #815
  • [cleanup] Fix to follow lint error (File is not goimports-ed (goimports)) by @equanz in #824
  • [oauth2] Remove oauth2 go.mod and go.sum by @pgier in #802
  • [client] Rename test_helper.go to follow the test code naming convention by @equanz in #822
  • [security] Bump github.com/stretchr/testify to update gopkg.in/yaml.v3 by @massakam in #813
  • [client] Add MetricsRegisterer to ClientOptions by @pragkent in #826
  • NackBackoffPolicy.Next return time.Duration by @h-hy in #825
  • Add golang 1.19 in test matrix by @shoothzj in #832
  • ci: add makefile by @pgier in #800
  • Make keepalive interval configurable by @nodece in #838
  • [issue #807] dlq topic producer options by @zzzming in #809
  • [log-format] remove redundant "[]" pair in the head and tail of log content by @shenqianjin in #831
  • Update proto file latest by @liangyuanpeng in #841
  • [bugfix] Fix wrong check eventime by default by @liangyuanpeng in #843
  • Fixs : NackBackoffPolicy.Next return time.Duration by @h-hy in #834
  • Introduce doneCh for ack error by @wolfstudy in #777
  • Parameterize the reconnection option by @wolfstudy in #853
  • add 0.9.0 release changelog by @freeznet in #804
  • Embed Go SDK version to 0.9.0 by @wolfstudy in #854

New Contributors

Full Changelog: v0.8.0...v0.9.0

v0.8.1

15 Mar 09:03
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.8.0...v0.8.1

v0.8.0

16 Feb 02:44
5daa17b
Compare
Choose a tag to compare

What's Changed

  • Update release docs with missing information by @cckellogg in #656
  • Update change log for 0.7.0 release by @cckellogg in #655
  • Update version to 0.7.0 by @cckellogg in #654
  • fix issue 650,different handle sequence value by @baomingyu in #651
  • Support nack backoff policy for SDK by @wolfstudy in #660
  • Remove unused dependency in oauth2 module by @reugn in #661
  • [Issue 662] Fix race in connection.go waitUntilReady() by @bschofield in #663
  • Update dependencies by @reugn in #665
  • [Issue 652] Quick fixes to the documentation for the main building blocks of the library by @reugn in #667
  • Add subscription properties for ConsumerOptions by @wolfstudy in #671
  • Add new bug-resistant build constraints by @reugn in #670
  • Handle the parameters parsing error in NewProvider by @reugn in #673
  • Update email template of release docs by @izumo27 in #674
  • Add properties filed for batch container by @wolfstudy in #683
  • [Issue 513] Correct apparent logic error in batchContainer's hasSpace() method by @bschofield in #678
  • Upgrade DataDog/zstd to v1.5.0 by @dferstay in #690
  • fix:add order key to message by @leizhiyuan in #688
  • Set default go version to 1.13 in CI related files by @reugn in #692
  • [Partition Consumer] Provide lock-free access to compression providers by @dferstay in #689
  • Use a separate gorutine to handle the logic of reconnect by @wolfstudy in #691
  • [DefaultRouter] add a parallel bench test by @dferstay in #693
  • Revert "Use a separate gorutine to handle the logic of reconnect" by @wolfstudy in #700
  • Fix data race while accessing connection in partitionProducer by @wolfstudy in #701
  • Fix stuck when reconnect broker by @wolfstudy in #703
  • Fix slice bounds out of range for readSingleMessage by @wolfstudy in #709
  • Encryption failure test case fix by @GPrabhudas in #708
  • [DefaultRouter] fix unnecessary system clock reads due to races accessing router state by @dferstay in #694
  • Fix negative WaitGroup counter issue by @wolfstudy in #712
  • [issue 675] oauth2 use golang-jwt address CVE-2020-26160 by @zzzming in #713
  • readme: add note about how to build and test by @pgier in #714
  • Bump oauth2 package version to the latest in master by @iorvd in #715
  • Fix closed connection leak by @billowqiu in #716
  • [Bugfix] producer runEventsLoop for reconnect early exit by @billowqiu in #721
  • [issue 679][oauth2] Fix macos compiler warnings by @pgier in #719
  • [optimize] Stop batchFlushTicker when Disable batching by @shoothzj in #720
  • Markdown error fix by @shoothzj in #722

New Contributors

Full Changelog: v0.7.0...v0.8.0-candidate-1

v0.7.0

16 Nov 05:33
171ef57
Compare
Choose a tag to compare

Feature

  • Encryption support for producer, see PR-560
  • Decrytion support for consumer, see PR-612
  • User-defined metric cardinality, see PR-604
  • Better support for Azure AD OAuth 2.0, see PR-630, PR-633, PR-634
  • Removed testing for go versions 1.11 and 1.12, see PR-632
  • Add epoch to create producer to prevent a duplicate producer when broker is not available., see PR-582

Improve

  • Fix batch size limit validation, see PR-528
  • Fix logic of command for sendError, see PR-622
  • Drain connection requests channel without closing, see PR-645
  • Fix ConsumersOpened counter not incremented when use multitopic or regexp consumer, see PR-619
  • Fix reconnection logic when topic is deleted, see PR-627
  • Fix panic when scale down partitions, see PR-601
  • Fix missing metrics for topics by registration of existing collector, see PR-600
  • Fix producer panic by oldProducers, see PR-598
  • Fail pending messages when topic is terminated, see PR-588
  • Fix handle send error panic, see PR-576

v0.6.0

26 Jul 02:57
5e88b01
Compare
Choose a tag to compare

Feature

  • Make PartitionsAutoDiscoveryInterval configurable, see PR-514.
  • Always check connection close channell, before attempting to put requests, see PR-521.
  • Add LedgerId,EntryId,BatchIdx,PartitionIdx func for MessageId interface, see PR-529.
  • Add DisableReplication to Producer Message, see PR-543.
  • Updating comments to conform to golang comment specification, see PR-532.
  • Producer respects Context passed to Send() and SendAsync() when applying backpressure, see PR-534.
  • Simplify connection close logic, see PR-559.
  • Add open tracing to pulsar go client, see PR-518.
  • Update proto file, see PR-562.
  • Add send error logic for connection, see PR-566.
  • Add license file for depend on libs, see PR-567.

Improve

  • Update jwt-go dependency to resolve vulnerabilities, see PR-524.
  • Fixed Athenz repository name, see PR-522.
  • Fix reader latest position, see PR-525.
  • Fix timeout guarantee for RequestOnCnx, see PR-492.
  • Fix nil pointer error with GetPartitionedTopicMetadata, see PR-536.
  • Release locks before calling producer consumer response callbacks, see PR-542.
  • Fix lookup service not implemented GetTopicsOfNamespace, see PR-541.
  • Regenerate the certs to work with Pulsar 2.8.0 and Java 11, see PR-548.
  • Fix race condition when resend pendingItems, see PR-551.
  • Fix data race while accessing connection in partitionConsumer, see PR-535.
  • Fix channel data race, see PR-558.
  • Fix write to closed channel panic() in internal/connection during connection close, see PR-539.
  • Fix possible race condition in connection pool, see PR-561.
  • Fix default connection timeout, see PR-563.
  • Add lock for compressionProviders to fix data race problem, see PR-533.
  • Fix send goroutine blocked, see PR-530.