amq-protocol 2.5.1 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7bd349803818e5eee9dbba49cdf59fad9666e8e7ed95229ed1bc7e7a4380fde5
4
- data.tar.gz: b52bae3819d6fae2b2c6db5e1626ef6b98de74b0d24532b12f9a88ac75278ceb
3
+ metadata.gz: 0b58eb9e3a561cb4902e3a1b2526a47b68d4f0b5431f459fd87cce35cd6936bc
4
+ data.tar.gz: 21257ef030688922961fdeaf4a83d64b8ab3c21688e53c5fc41bf083b2277f1f
5
5
  SHA512:
6
- metadata.gz: 9a138a490585effe6886c7b16f4bb4c0a9d7f878358bca45ee437ae714ebcef4375b9f684651e593906db4d61dabd9468290ee3b75f1ca2810f8855f82e6942c
7
- data.tar.gz: 7f64f831d2cdca5885ab08967c3700519acf90c327307e79bac757a58b56d3a02acc3bbd41731a456b52f9b92f0678a1d5c7d0c68eff94febb09bc0b45239ded
6
+ metadata.gz: 6e80602244a9d0768c9fbe24d16c0acc884205d9ebf41142bf69963dad829c60170b299b7b8ee43734299f7eb45be2d54b36ca58ef4de0196fc142bd68f70d3c
7
+ data.tar.gz: ea1f03bf20b010e0fbc23b1c8441ee6de0b71202b8f3b0a3a7b7574510b8a682eddcc7982caee8fbcb24c0b566bc6d9e67b485990ad40b67f291d8fbccadd0f9
data/ChangeLog.md CHANGED
@@ -1,4 +1,21 @@
1
- ## Changes between 2.5.0 and 2.5.1 (Jan 1, 2026)
1
+ ## Changes between 2.6.0 and 2.7.0 (unreleased)
2
+
3
+ No changes yet.
4
+
5
+
6
+ ## Changes between 2.5.1 and 2.6.0 (Mar 30, 2026)
7
+
8
+ ### Channel.Close Predicate Methods
9
+
10
+ `Channel::Close` now provides predicate methods for identifying common
11
+ channel closure reasons by reply code and text:
12
+
13
+ * `#delivery_ack_timeout?`: consumer [delivery acknowledgement timeout](https://www.rabbitmq.com/docs/consumers#acknowledgement-timeout)
14
+ * `#unknown_delivery_tag?`: unknown delivery tag (e.g. [double ack](https://www.rabbitmq.com/docs/channels#error-handling))
15
+ * `#message_too_large?`: message exceeded the configured max size
16
+
17
+
18
+ ## Changes between 2.5.0 and 2.5.1 (Jan 19, 2026)
2
19
 
3
20
  ### Windows Installation Fixes
4
21
 
data/LICENSE CHANGED
@@ -1,5 +1,5 @@
1
1
  Copyright (c) 2010 – 2011 Jakub Šťastný aka Botanicus
2
- Copyright (c) 2011 – 2016 Michael S. Klishin <michael@defprotocol.org>
2
+ Copyright (c) 2011 – 2026 Michael S. Klishin <michael@defprotocol.org>
3
3
 
4
4
  Permission is hereby granted, free of charge, to any person obtaining
5
5
  a copy of this software and associated documentation files (the
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module AMQ
4
+ module Protocol
5
+ class Channel
6
+ class Close
7
+ # @return [Boolean] true if the channel was closed due to a consumer delivery acknowledgement timeout
8
+ def delivery_ack_timeout?
9
+ reply_code == 406 && reply_text =~ /delivery acknowledgement on channel \d+ timed out/
10
+ end
11
+
12
+ # @return [Boolean] true if the channel was closed due to an unknown delivery tag (e.g. double ack)
13
+ def unknown_delivery_tag?
14
+ reply_code == 406 && reply_text =~ /unknown delivery tag/
15
+ end
16
+
17
+ # @return [Boolean] true if the channel was closed because a message exceeded the configured max size
18
+ def message_too_large?
19
+ reply_code == 406 && reply_text =~ /larger than configured max size/
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -1,5 +1,5 @@
1
1
  module AMQ
2
2
  module Protocol
3
- VERSION = "2.5.1"
3
+ VERSION = "2.6.0"
4
4
  end # Protocol
5
5
  end # AMQ
data/lib/amq/protocol.rb CHANGED
@@ -2,3 +2,4 @@
2
2
 
3
3
  require "amq/protocol/version"
4
4
  require "amq/protocol/client"
5
+ require "amq/protocol/channel_close"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: amq-protocol
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.1
4
+ version: 2.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jakub Stastny
@@ -10,7 +10,7 @@ authors:
10
10
  - Mark Abramov
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2026-01-20 00:00:00.000000000 Z
13
+ date: 1980-01-02 00:00:00.000000000 Z
14
14
  dependencies: []
15
15
  description: |2
16
16
  amq-protocol is an AMQP 0.9.1 serialization library for Ruby. It is not a
@@ -30,6 +30,7 @@ files:
30
30
  - lib/amq/int_allocator.rb
31
31
  - lib/amq/pack.rb
32
32
  - lib/amq/protocol.rb
33
+ - lib/amq/protocol/channel_close.rb
33
34
  - lib/amq/protocol/client.rb
34
35
  - lib/amq/protocol/constants.rb
35
36
  - lib/amq/protocol/exceptions.rb
@@ -60,7 +61,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
60
61
  - !ruby/object:Gem::Version
61
62
  version: '0'
62
63
  requirements: []
63
- rubygems_version: 3.6.2
64
+ rubygems_version: 3.6.7
64
65
  specification_version: 4
65
66
  summary: AMQP 0.9.1 encoding & decoding library.
66
67
  test_files: []