Releases: michaelklishin/rabbit-hole
3.1.0
Changes Between 2.16.0 and 3.1.0 (Oct 31, 2024)
Note: this release has no functional changes compared to 3.0.0
but correctly sets module version to v3
.
See #325
Why the Major Version Bump?
There aren't any major breaking API changes. However, given
the ongoing evolution of the RabbitMQ HTTP API, in particular in the 4.x
development lifecycle, it makes sense to bump the major version of
this client and continue tracking RabbitMQ 3.13.x
and (in development
at the time of writing) 4.x
.
Removed Sockets Metrics
They will be gone starting with RabbitMQ 4.x. These are OS-level metrics
and should be monitored as such.
GitHub issue: #313
Exchange Auto-Deletion Field Had an Incorrect Default
Contributed by @pafmaf.
GitHub issue: #312
3.0.0
v2.16.0
Changes Between 2.15.0 and 2.16.0 (Jan 4, 2023)
Definition Upload for a Single Virtual Host
UploadVhostDefinitions
is a new function that's similar to UploadDefinitions
but
allows for definition upload for a specific virtual host.
Contributed by @lescactus.
GitHub issue: #274
Fixed an Unmarshalling Failure of GetQueue
Contributed by @mcwarman.
Fixed an Unmarshalling Failure in ChannelDetails
that affected RabbitMQ versions older than 3.11.8.
Contributed by @vitorquintanilha.
GitHub issue: #284
v2.15.0
Changes Between 2.14.0 and 2.15.0 (May 18, 2023)
Further Improve Shovel Support
Contributed by @ChunyiLyu.
GitHub issue: #266
v2.14.0
Changes Between 2.13.0 and 2.14.0 (May 11, 2023)
Allow Setting Default Queue Type for Virtual Hosts
GitHub issue: #261
Contributed by @mqhenning.
Correctly Set (Shovel) Destination Publish Properties
Correctly pass dest-publish-properties
as a map.
GitHub issue: #262
Contributed by @Galvill.
v2.13.0
Changes between 2.12.x and 2.13.0
Avoid a panic when declaring a binding with unspecified destination type
Contributed by @ChunyiLyu.
PR: #253
Correct default for message TTL setting of federation upstreams
Contributed by @MirahImage.
PR: #233
Fixed several incorrect JSON tags
Contributed by @pazderak.
PR: #227.
v2.12.0
Changes Between 2.11.x and 2.12.0
Support for user limit operations
Contributed by @aitorpazos.
PR: #217
New function that lists connections in a specific virtual host
Contributed by @needsalongholiday.
Commit: 00d29ef
v2.11.0
Changes Between 2.10.0 and 2.11.0 (Sep 16, 2021)
This release contains minor breaking public API changes.
Avoid returning empty queue and exchange properties
struct values in ExportedDefinitions
, QueueInfo
, and ExchangeInfo
have all been changed to pointers. This is to avoid having the empty struct values returned when exporting definitions and listing queues and exchanges.
Updated ExportedDefinitions
, ExchangeInfo
and QueueInfo
.
Contributed by @mkuratczyk.
Support for a special returned value of Queue and Exchange AutoDelete
QueueInfo
and ExchangeInfo
now use a special type for AutoDelete
because returned value from RabbitMQ server could be a boolean or a string value "undefined".
// AutoDelete is a boolean but RabbitMQ may return the string "undefined"
type AutoDelete bool
// ExchangeInfo represents and exchange and its properties.
type ExchangeInfo struct {
Name string `json:"name"`
Vhost string `json:"vhost,omitempty"`
Type string `json:"type"`
Durable bool `json:"durable"`
AutoDelete AutoDelete `json:"auto_delete"`
...
}
// QueueInfo represents a queue, its properties and key metrics.
type QueueInfo struct {
// Queue name
Name string `json:"name"`
// Queue type
Type string `json:"type"`
// Virtual host this queue belongs to
Vhost string `json:"vhost,omitempty"`
// Is this queue auto-deleted?
AutoDelete AutoDelete `json:"auto_delete"`
...
}
Contributed by @mkuratczyk.
PR: #207
Support listing definitions for a specific vhost
Contributed by @mkuratczyk.
PR: #206
Support for vhost limits
Contributed by @Sauci.
PR: #200
Return more fields for NodeInfo
and QueueInfo
Contributed by @hjweddie.
PR: #198
v2.10.0
Changes Between 2.9.0 and 2.10.0 (Jun 3, 2021)
This release contains very minor breaking public API changes.
ShovelDefinition.SourceDeleteAfter
Type Now Matches That of ShovelDefinition.DeleteAfter
ShovelDefinition.SourceDeleteAfter
type has changed to match that of
ShovelDefinition.DeleteAfter
.
GitHub issue: #197
2.9.0
Changes Between 2.8.0 and 2.9.0 (Jun 2, 2021)
This release contains minor breaking public API changes.
Support for Lists of Federation Upstream URIs
Federation definition now uses a dedicated type, URISet
, to represent
a set of URIs that will be tried sequentially until the link
can successfully connect and authenticate:
type FederationDefinition struct {
Uri URISet `json:"uri"`
Expires int `json:"expires,omitempty"`
MessageTTL int32 `json:"message-ttl"`
MaxHops int `json:"max-hops,omitempty"`
PrefetchCount int `json:"prefetch-count,omitempty"`
ReconnectDelay int `json:"reconnect-delay"`
AckMode string `json:"ack-mode,omitempty"`
TrustUserId bool `json:"trust-user-id"`
Exchange string `json:"exchange,omitempty"`
Queue string `json:"queue,omitempty"`
}
// URISet represents a set of URIs used by Shovel, Federation, and so on.
// The URIs from this set are tried until one of them succeeds
// (a shovel or federation link successfully connects and authenticates with it)
type URISet []string
Support for Operator Policies
Contributed by @MrLuje.