Releases: apache/pulsar-client-go
Releases · apache/pulsar-client-go
v0.14.0
Important notice
- The client has dropped support for Go 1.20. The minimum supported version is now Go
1.21. (Related PR) - The
BackoffPolicy
interface and related methods has been moved to thebackoff
package from theinternal
package.
TheBackoffPolicy
interface is renamed to
Policy
. (Related PR)
What's Changed
- [improve] Install golang by image in the Dockerfile by @nodece in #1246
- [ci] Validate multiple version builds and use golangci-lint-action by @nodece in #1250
- [ci] Add merge limitation by @nodece in #1248
- [fix] Fix the key-based batch can't guarantee the ordering when flushing by @RobertIndie in #1252
- [fix] FailTimeoutMessages cannot delete outdated messages by @nodece in #1247
- [fix] Fix pulsar admin revoke subscription permission endpoint by @NoFacePeace in #1251
- [fix] Producer close was blocked by @nodece in #1249
- [fix] PulsarCtl 1266 Oauth2 Client credentials flow use scopes from the keyfile as well by @Nikolajls in #1244
- [feat] Add support for subscription expiration time namespace settings by @klevy-toast in #1254
- [fix] Prevent panic when calling Flush on closed producer by @Gilthoniel in #1260
- [fix] Avoid a data race when flushing with load by @Gilthoniel in #1261
- [improve] Add InitialSubscriptionName for DLQPolicy by @crossoverJie in #1264
- [fix] Peek message will return -1 for partitionIndex by @shibd in #1267
- [chore] Bump github.com/docker/docker from 27.0.3+incompatible to 27.1.1+incompatible by @dependabot in #1269
- [feat] Support the namespace offloadThresholdInSeconds API in pulsaradmin pkg by @ericsyh in #1271
- [fix] Stop timer when close timedAckGroupingTracker by @geniusjoe in #1279
- [improve] Refactor connection concurrency model by @Gilthoniel in #1275
- [fix] Attempt to avoid deadlock during reconnection by @Gilthoniel in #1273
- [fix] Fixed panic caused by memory not aligned in arm32 arch by @dream-kzx in #1286
- [fix] Reconnection logic and Backoff policy doesn't work correctly by @crossoverJie in #1197
New Contributors
- @NoFacePeace made their first contribution in #1251
- @Nikolajls made their first contribution in #1244
- @klevy-toast made their first contribution in #1254
- @ericsyh made their first contribution in #1271
- @dream-kzx made their first contribution in #1286
v0.13.1
- [fix] Avoid a data race when flushing with load by Gaylor Bosson in #1261
- [fix] Prevent panic when calling Flush on closed producer by Gaylor Bosson in #1260
- [fix] Producer close was blocked by Zixuan Liu in #1249
- [ci] Validate multiple version builds and use golangci-lint-action by Zixuan Liu in #1250
- [fix] Fix pulsar admin revoke subscription permission endpoint by 码斯克 in #1251
- [fix] failTimeoutMessages cannot delete outdated messages by Zixuan Liu in #1247
- [fix] Oauth2 Client credentials flow use scopes from the keyfile as well by Nikolaj Lund Sørensen in #1244
- [fix] Fix the key-based batch can't guarantee the ordering when flushing by Zike Yang in #1252
Full Changelog: v0.13.0...v0.13.1
v0.13.0
Important notice
- The avro schema codec has been changed from
github.com/linkedin/goavro/v2
togithub.com/hamba/avro/v2
. pulsar.NewSchemaDefinition
has been removed. Usepulsar.NewAvroSchema
instead.- The client has dropped support for Go 1.18 and 1.19. The minimum supported version is now Go 1.20.
What's Changed
- [chore] bump golang.org/x/net from 0.0.0-20220225172249-27dd8689420f to 0.17.0 by @BewareMyPower in #1155
- [fix] Fix DLQ producer name conflicts when multiple consumers send messages to DLQ by @crossoverJie in #1156
- [improve] Add 0.12.0 change log by @RobertIndie in #1153
- [fix] Fix SIGSEGV with zstd compression enabled by @RobertIndie in #1164
- [improve] Respect context cancellation in Producer's Flush by @jayshrivastava in #1165
- [chore] Add CodeQL static code scanner by @merlimat in #1169
- [fix] Fix BytesSchema by @petermnhull in #1173
- [feat] Support partitioned topic reader by @RobertIndie in #1178
- [fix] Fix available permits in MessageReceived by @panszobe in #1181
- [fix] Make function state values
omitempty
by @freeznet in #1185 - [fix] Fix Infinite Loop in Reader's
HasNext
Function by @RobertIndie in #1182 - [improve] Add optional parameters for getPartitionedStats by @crossoverJie in #1193
- [chore] Remove
VERSION
andstable.txt
files by @RobertIndie in #1158 - [improve] getMessagesById gets all messages by @crossoverJie in #1194
- [improve] Change base image to apachepulsar/pulsar by @crossoverJie in #1195
- [improve] Add change log for 0.12.1 by @RobertIndie in #1189
- [fix] Change the wrong
SourceInstanceStatusData
inSinkInstanceStatus
by @jiangpengcheng in #1199 - [chore] bump google.golang.org/protobuf from 1.30.0 to 1.33.0 by @dependabot in #1198
- [improve] Add admin api HealthCheckWithTopicVersion by @crossoverJie in #1200
- [improve] Update topic admin interface comment, add topic admin test by @geniusjoe in #1202
- [fix] Build test container image using current hardware platform by @dragosvictor in #1205
- [improve] Expose RuntimeFlags for Pulsar Functions and Connectors by @freeznet in #1204
- [improve] Use physical address information in connection pool key by @dragosvictor in #1206
- [improve] Add a lint-docker command in makefile by @geniusjoe in #1207
- [improve] Add admin api GetLeaderBroker by @crossoverJie in #1203
- [chore] bump golang.org/x/net from 0.17.0 to 0.23.0 by @dependabot in #1209
- [improve] PIP-307: Use assigned broker URL hints during broker reconnection by @dragosvictor in #1208
- [improve] Add admin api GetListActiveBrokers by @crossoverJie in #1212
- [improve] Add admin api ForceDeleteSchema by @crossoverJie in #1213
- [improve] Upgrade golang-jwt to v5 by @nodece in #1214
- [improve] Supplement schema admin api by @crossoverJie in #1215
- [fix] Return an error when AckCumulative on a Shared/KeyShared subscription by @RobertIndie in #1217
- [cleanup] Remove AvroCodec from JSONSchema by @crossoverJie in #1216
- [fix] Reader Next returns on closed consumer by @Gilthoniel in #1219
- [improve] PIP-313 Support force unsubscribe using consumer api by @crossoverJie in #1220
- [improve] PIP-313 Add GetLastMessageIDs API by @crossoverJie in #1221
- [feat] PIP-188 Support blue-green migration by @heesung-sn in #1210
- [improve] Add admin topic api CreateWithProperties by @crossoverJie in #1226
- [fix] Fix dynamic config by @labuladong in #1228
- [feat] Support ZeroQueueConsumer by @crossoverJie in #1225
- [fix] Fix custom value with
/
by @labuladong in #1229 - [improve] Reuse function checkMsgIDPartition by @crossoverJie in #1232
- [refactor] Replace linkedin/goavro/v2 with hamba/avro/v2 by @adrianiacobghiula in #1230
- [fix] Fix the issue where the AckIDCumulativ cannot return error by @crossoverJie in #1235
- [feat] Add a slog wrapper of the logger interface by @ivan-penchev in #1234
- [fix] Fix the client crash when the transaction coordinator not found by @RobertIndie in #1241
- [improve] Return
ErrMaxConcurrentOpsReached
when too many concurrent ops in transaction coordinator client by @RobertIndie in #1242 - [fix] Fix transaction coordinator client cannot reconnect to the broker by @RobertIndie in #1237
- [fix] Fix producer connection by @nodece in #1243
New Contributors
- @jayshrivastava made their first contribution in #1165
- @petermnhull made their first contribution in #1173
- @panszobe made their first contribution in #1181
- @dragosvictor made their first contribution in #1205
- @heesung-sn made their first contribution in #1210
- @adrianiacobghiula made their first contribution in #1230
- @ivan-penchev made their first contribution in #1234
v0.12.1
What's Changed
- [fix] Fix Infinite Loop in Reader's
HasNext
Function by @RobertIndie in #1182 - [fix] Fix available permits in MessageReceived by @panszobe in #1181
- [feat] Support partitioned topic reader by @RobertIndie in #1178
- [fix] Fix BytesSchema by @petermnhull in #1173
- [fix] Respect context cancellation in Flush by @jayshrivastava in #1165
- [fix] Fix SIGSEGV with zstd compression enabled by @RobertIndie in #1164
v0.12.0
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
- @jffp113 made their first contribution in #1062
- @tuteng made their first contribution in #1089
- @zccold made their first contribution in #1084
- @ojcm made their first contribution in #1119
- @pkumar-singh made their first contribution in #1128
- @goncalo-rodrigues made their first contribution in #1141
- @Gilthoniel made their first contribution in #1144
- @geniusjoe made their first contribution in #1146
- @tomjo made their first contribution in #1107
- @jiangpengcheng made their first contribution in #1151
- @dependabot made their first contribution in #1150
v0.11.1
Improve
- Close consumer resources if the creation fails by @michaeljmarshall in #1070
- Fix the transaction acknowledgement and send logic for chunked message by @liangyepianzhou in #1069
- Correct the
SendAsync()
description by @Gleiphir2769 in #1066 - Fix the panic when try to flush in
DisableBatching=true
by @Gleiphir2769 in #1065 - Fix client reconnected every authenticationRefreshCheckSeconds when using tls authentication by @jffp113 in #1062
- Send Close Command on Producer/Consumer create timeout by @michaeljmarshall in #1061
- Fail all messages that are pending requests when closing by @graysonzeng in #1059
- Fix the producer flush opertion is not guarantee to flush all messages by @Gleiphir2769 in #1058
- Fix inaccurate producer mem limit in chunking and schema by @Gleiphir2769 in #1055
- Fix ctx in
partitionProducer.Send()
is not performing as expected by @Gleiphir2769 in #1053 - Stop block request even if Value and Payload are both set by @gunli in #1052
- Simplify the flush logic by @gunli in #1049
- Check if message is nil by @gunli in #1047
- Return when registerSendOrAckOp() failed by @gunli in #1045
Full Changelog: v0.11.0...v0.11.1-candidate-1
v0.11.0
Features
- Support the schema type ProtoNativeSchema by @gaoran10 in #1006
- Implement transactional consumer/producer API by @liangyepianzhou in #1002
- Support NonDurable subscriptions by @dinghram in #992
- Allow user to specify TLS ciphers an min/max TLS version by @dinghram in #1041
- Add single partition router by @crossoverJie in #999
Improve
- Fix missing link in the release process by @RobertIndie in #1000
- Stablize golangci-lint task in CI by @tisonkun in #1007
- Fix reconnection backoff logic by @wolfstudy in #1008
- Change token name to
GITHUB_TOKEN
in CI by @labuladong in #910 - Add links to client docs and feature matrix in README.md by @momo-jun in #1014
- Fix flaky test
TestMaxPendingChunkMessages
by @Gleiphir2769 in #1003 - Fix flaky test in
negative_acks_tracker_test.go
by @RobertIndie in #1017 - Fix event time not being set when batching is disabled by @RobertIndie in #1015
- Use maphash instead of crypto/sha256 for hash function of hashmap in Schema.hash() by @bpereto in #1022
- Improve logs on failTimeoutMessages by @tisonkun in #1025
- Delete LICENSE-go-rate.txt by @tisonkun in #1028
- Fix broken master by upgrading JRE to 17 by @BewareMyPower in #1030
- Split sendRequest and make reconnectToBroker and other operation in the same coroutine by @zengguan in #1029
- Install openjdk-17 in Dockerfile by @crossoverJie in #1037
- Fix ordering key not being set and parsed when batching is disabled by @RobertIndie in #1034
- Check if callback is nil before calling it by @gunli in #1036
- Refactor duplicated code lines and fix typo errors by @gunli in #1039
New Contributors
- @gaoran10 made their first contribution in #1006
- @momo-jun made their first contribution in #1014
- @bpereto made their first contribution in #1022
- @zengguan made their first contribution in #1029
- @gunli made their first contribution in #1036
Full Changelog: v0.10.0...v0.11.0
v0.10.0
Feature
- Support chunking for big messages by @Gleiphir2769 in #805
- Add BackoffPolicy to
reader
and improve test case by @labuladong in #889 - Support cumulative acknowledgment by @Gleiphir2769 in #903
- Support consumer event listener by @labuladong in #904
- Allow CustomProperties when sending messages for retry by @ngoyal16 in #916
- Support batch index ACK by @BewareMyPower in #938
- Support Exclusive Producer access mode by @shibd in #944
- Add transactionCoordinatorClient by @liangyepianzhou in #953
- Support memory limit for the producer by @shibd in #955
- Support grouping ACK requests by time and size by @BewareMyPower in #957
- Support WaitForExclusive producer access mode by @shibd in #958
- Support Copper Argos in the Athenz auth provider by @massakam in #960
- Support auto-release idle connections by @RobertIndie in #963
- Support batch index ACK and set max number of messages in batch for the perf tool by @BewareMyPower in #967
- Support auto-scaled consumer receiver queue by @Gleiphir2769 in #976
- Implement transactionImpl by @liangyepianzhou in #984
- Expose the chunk config of the consumer to the reader by @CrazyCollin in #987
- Support consumer client memory limit by @Gleiphir2769 in #991
Improve
- Nack the message in dlqrouter when sending errors by @leizhiyuan in #592
- Fix TLS certificates that do not include IP SANS, save hostname before switching to a physical address by @dinghram in #812
- Fix the availablePermits leak that could cause the consumer stuck by @Gleiphir2769 in #835
- Read module version info from golang runtime by @pgier in #856
- Fix typo in
consumer.go
by @sekfung in #857 - Fix marshalling
time.Time{}
touint64
by @aymkhalil in #865 - Use the
DATA
constant as the prefix in OAuth2 KeyFileProvider by @Niennienzz in #866 - Fix bot cannot get the pr link by @RobertIndie in #868
- Fix PR template by @RobertIndie in #869
- Add go test flag '-v' for more clearly CI log by @Gleiphir2769 in #871
- Fix the dispatcher() stuck caused by availablePermitsCh by @Gleiphir2769 in #875
- Fix the Send() stuck caused by callback() not being called by @Gleiphir2769 in #880
- Fix the data race of ackReq.err by @Gleiphir2769 in #881
- Add data URL format to read the key file by @nodece in #883
- Prevent consumer panic on de-serializing message if schema not found by @GPrabhudas in #886
- Fix the conditions of loading TLS certificates by @nodece in #888
- Fix default retry and dlq topic name as per the doc by @ngoyal16 in #891
- Add NewMessageID() method by @crossoverJie in #893
- Use protocolbuffers instead of gogo by @nodece in #895
- Fix the compression broken when batching is disabled by @Gleiphir2769 in #902
- Add messageId and topic as props of DLQ message by @GPrabhudas in #907
- Update go version to 1.18 by @pgier in #911
- Move out the auth package from internal by @nodece in #914
- Remove the
clearMessageQueuesCh
inpartitionConsumer.dispatcher()
by @Gleiphir2769 in #921 - Remove the outdated interface description of
SeekByTime
by @Gleiphir2769 in #924 - Handle nil value message correctly in table-view by @Demogorgon314 in #930
- Migrate from the deprecated io/ioutil package by @reugn in #942
- Update the Cobra library to significantly reduce the dependency tree by @reugn in #943
- Remove go1.11 code leftovers by @reugn in #946
- Use pkg.go.dev badge in the readme by @reugn in #947
- Improve test script by @nodece in #951
- Optimize the performance by passing MessageID implementations by pointers by @BewareMyPower in #968
- Fix flaky Key_Shared subscription-related tests by @BewareMyPower in #970
- Refactor the toTrackingMessageID() by @Gleiphir2769 in #972
- Prevent RPC client panic on RPC response if
ProducerReady
is nil by @sekfung in #973 - Fix nack backoff policy logic by @wolfstudy in #974
- Fix license information for go-rate by @tisonkun in #975
- Fix the data race in checkAndCleanIdleConnections by @RobertIndie in #981
- Setup rate limiter for TestChunksEnqueueFailed to reduce flaky by @RobertIndie in #982
- Fix the message is blocked on the AckGroupingTracker.isDuplicate method by @shibd in #986
- Optimize batch index ACK performance by @BewareMyPower in #988
- Add more precise producer rate limiter by @Gleiphir2769 in #989
- Fix batched messages not ACKed correctly when batch index ACK is disabled by @BewareMyPower in #994
- Fix panic caused by retryAssert() by @Gleiphir2769 in #996
New Contributors
- @sekfung made their first contribution in #857
- @Gleiphir2769 made their first contribution in #835
- @michaeljmarshall made their first contribution in #861
- @aymkhalil made their first contribution in #865
- @RobertIndie made their first contribution in #868
- @dinghram made their first contribution in #812
- @labuladong made their first contribution in #889
- @Niennienzz made their first contribution in #866
- @crossoverJie made their first contribution in #893
- @ngoyal16 made their first contribution in #891
- @Demogorgon314 made their first contribution in #930
- @shibd made their first contribution in #944
- @liangyepianzhou made their first contribution in #953
- @tisonkun made their first contribution in #975
- @CrazyCollin made their first contribution in #987
v0.9.0
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
- @NaraLuwan made their first contribution in #730
- @shubham1172 made their first contribution in #735
- @nicoloboschi made their first contribution in #738
- @ZiyaoWei made their first contribution in #741
- @lhotari made their first contribution in #765
- @samuelhewitt made their first contribution in #762
- @shileiyu made their first contribution in #750
- @hantmac made their first contribution in #734
- @liushengzhong0927 made their first contribution in #780
- @oryx2 made their first contribution in #611
- @massakam made their first contribution in #813
- @pragkent made their first contribution in #826
- @h-hy made their first contribution in #825
- @shenqianjin made their first contribution in #831
Full Changelog: v0.8.0...v0.9.0
v0.8.1
What's Changed
- Upgrade beefsack/go-rate by @shubham1172 in #735
- Upgrade prometheus client to 1.11.1 by @nicoloboschi in #738
New Contributors
- @shubham1172 made their first contribution in #735
- @nicoloboschi made their first contribution in #738
Full Changelog: v0.8.0...v0.8.1