Releases: centrifugal/centrifuge-go
v0.9.0 - new SDK API
Breaking changes
This release adopts a new iteration of Centrifugal protocol and a new iteration of API. Client now behaves according to the client SDK API specification. The work has been done according to Centrifugo v4 roadmap.
Check out Centrifugo v4 release post that covers the reasoning behind changes here.
New release only works with Centrifugo >= v4.0.0 and Centrifuge >= 0.25.0. See Centrifugo v4 migration guide for details about the changes in the ecosystem.
Note, that Centrifugo v4 supports clients working over the previous protocol iteration, so you can update Centrifugo to v4 without any changes on the client side (but you need to turn on use_client_protocol_v1_by_default
option in the configuration of Centrifugo, see Centrifugo v4 migration guide for details).
Important change is that centrifuge-go
does not allow blocking calls from inside event handlers now. See a description in README.
v0.8.3
v0.8.2
v0.8.1
- Support for History reverse option.
gorelease -base v0.8.0 -version v0.8.1
github.com/centrifugal/centrifuge-go
------------------------------------
Compatible changes:
- HistoryOptions.Reverse: added
- WithHistoryReverse: added
v0.8.1 is a valid semantic version for this release.
v0.8.0
Update to work with Centrifuge >= v0.18.0 and Centrifugo v3.
Keep in mind that New
is deprecated now, prefer using NewJsonClient
or NewProtobufClient
when server is based on Centrifuge >= v0.18.0 or Centrifugo >= v3.0.0
Breaking change: client History API behavior changed – Centrifuge >= v0.18.0 and Centrifugo >= v3.0.0 won't return all publications in a stream by default, see Centrifuge v0.18.0 release notes or Centrifugo v3 migration guide for more information and workaround on server-side.
gorelease -base v0.7.2 -version v0.8.0
github.com/centrifugal/centrifuge-go
------------------------------------
Incompatible changes:
- (*Client).History: changed from func(string) (HistoryResult, error) to func(string, ...HistoryOption) (HistoryResult, error)
- (*Subscription).History: changed from func() (HistoryResult, error) to func(...HistoryOption) (HistoryResult, error)
- (*Subscription).Subscribe: changed from func() error to func(...SubscribeOption) error
Compatible changes:
- HistoryOption: added
- HistoryOptions: added
- NewJsonClient: added
- NewProtobufClient: added
- StreamPosition: added
- SubscribeOption: added
- SubscribeOptions: added
- WithHistoryLimit: added
- WithHistorySince: added
- WithSubscribeSince: added
v0.8.0 is a valid semantic version for this release.
v0.7.2
v0.7.1
v0.7.0
- Updated
github.com/centrifugal/protocol
package dependency to catch up with the latest changes in it - Introduced
Error
type which is used where we previously exposedprotocol.Error
– so there is no need to importprotocol
package in application code to investigate error code or message - Methods
Client.SetName
andClient.SetVersion
removed in favour ofName
andVersion
fields ofConfig
- Add top-level methods
Client.History
,Client.Presence
,Client.PresenceStats
– so it's possible to call corresponding client API methods when using server-side subscriptions
$ gorelease -base v0.6.5 -version v0.7.0
github.com/centrifugal/centrifuge-go
------------------------------------
Incompatible changes:
- (*Client).SetName: removed
- (*Client).SetVersion: removed
Compatible changes:
- (*Client).History: added
- (*Client).Presence: added
- (*Client).PresenceStats: added
- Config.Name: added
- Config.Version: added
- DefaultName: added
- Error: added
v0.7.0 is a valid semantic version for this release.
v0.6.5
v0.6.4
- Add
Subscription.Close
method to close Subscription when it's not needed anymore. This method unsubscribes from a channel and removes Subscription from internalClient
subscription registry – thus freeing resources. Subscription is not usable afterClose
called. This method can be helpful if you work with lots of short-living subscriptions to different channels to prevent unlimited internal Subscription registry growth.