File rubygem-bunny.changes of Package rubygem-bunny

-------------------------------------------------------------------
Fri Jul 24 04:28:51 UTC 2015 - coolo@suse.com

- updated to version 2.0.0
 see installed ChangeLog.md

  ## Changes between Bunny 1.7.0 and 2.0.0
  
  Bunny `2.0` doesn't have any breaking API changes
  but drops Ruby 1.8 and 1.9 (both EOL'ed) support,
  hence the version.
  
  ### Minimum Required Ruby Version is 2.0
  
  Bunny `2.0` requires Ruby 2.0 or later.
  
  ## Non-Blocking Writes
  
  Bunny now uses non-blocking socket writes, uses a reduced
  number of writes for message publishing (frames are batched
  into a single write), and handles TCP back pressure from
  RabbitMQ better.
  
  Contributed by Irina Bednova and Michael Klishin.
  
  ### Reduced Timeout Use
  
  `Bunny::ContinuationQueue#poll` no longer relies on Ruby's `Timeout` which has
  numerous issues, including starting a new "interruptor" thread per operation,
  which is far from efficient.
  
  Contributed by Joe Eli McIlvain and Carl Hörberg.
  
  ### Capped Number of Connection Recovery Attempts
  
  `:recovery_attempts` is a new option that limits the number of
  connection recovery attempts performed by Bunny. `nil` means
  "no limit".
  
  Contributed by Irina Bednova.
  
  ### Bunny::Channel#basic_ack and Related Methods Improvements
  
  `Bunny::Channel#basic_ack`, `Bunny::Channel#basic_nack`, and `Bunny::Channel#basic_reject`
  now adjust delivery tags between connection recoveries, as well as have a default value for
  the second argument.
  
  Contributed by Wayne Conrad.
  
  ### Logger Output Remains Consistent
  
  Setting the `@logger.progname` attribute changes the output of the logger.
  This is not expected behaviour when the client provides a custom logger.
  Behaviour remains unchainged when the internally initialized logger is used.
  
  Contributed by Justin Carter.
  
  ### prefetch_count is Limited to 65535
  
  Since `basic.qos`'s `prefetch_count` field is of type `short` in the protocol,
  Bunny must enforce its maximum allowed value to `2^16 - 1` to avoid
  confusing issues due to overflow.
  
  ### Per-Consumer and Per-Channel Prefetch
  
  Recent RabbitMQ versions support `basic.qos` `global` flag, controlling whether
  `prefetch` applies per-consumer or per-channel. Bunny `Channel#prefetch` now
  allows flag to be set as optional parameter, with the same default behaviour as
  before (per-consumer).
  
  Contributed by tiredpixel.

-------------------------------------------------------------------
Tue Feb 10 17:26:32 UTC 2015 - coolo@suse.com

- updated to version 1.7.0

-------------------------------------------------------------------
Mon Oct 13 05:45:26 UTC 2014 - coolo@suse.com

- adapt to new rubygem packaging

-------------------------------------------------------------------
Mon Jul 21 08:11:02 UTC 2014 - coolo@suse.com

- updated to version 1.3.1
 ### NoMethodError on Thread During Shutdown
 
 During abnormal termination, `Bunny::Session` no longer tries
 to call the non-existent `terminate_with` method on its origin
 thread.
 
 
 ## Changes between Bunny 1.2.0 and 1.3.0
 
 ### TLS Can Be Explicitly Disabled
 
 TLS now can be explicitly disabled even when connecting (without TLS)
 to the default RabbitMQ TLS/amqps port (5671):
 
 ``` ruby
 conn = Bunny.new(:port => 5671, :tls => false)
 ```
 
 Contributed by Muhan Zou.
 
 
 ### Single Threaded Connections Raise Shutdown Exceptions
 
 Single threaded Bunny connections will now raise exceptions
 that occur during shutdown as is (instead of trying to shut down
 I/O loop which only threaded ones have).
 
 Contributed by Carl Hörberg.
 
 
 ### Synchronization Improvements for Session#close
 
 `Bunny::Session#close` now better synchronizes state transitions,
 eliminating a few race condition scenarios with I/O reader thread.
 
 
 ### Bunny::Exchange.default Fix
 
 `Bunny::Exchange.default` no longer raises an exception.
 
 Note that it is a legacy compatibility method. Please use
 `Bunny::Channel#default_exchange` instead.
 
 Contributed by Justin Litchfield.
 
 GH issue [#211](https://github.com/ruby-amqp/bunny/pull/211).
 
 ### Bunny::Queue#pop_as_hash Removed
 
 `Bunny::Queue#pop_as_hash`, which was added to ease migration
 to Bunny 0.9, was removed.
 
 ### Bunny::Queue#pop Wraps Metadata
 
 `Bunny::Queue#pop` now wraps `basic.get-ok` and message properties
 into `Bunny::GetResponse` and `Bunny::MessageProperties`, just like
 `basic.consume` deliveries.

-------------------------------------------------------------------
Sun May 18 09:04:36 UTC 2014 - coolo@suse.com

- updated to version 1.2.1

-------------------------------------------------------------------
Sun Apr  6 05:38:50 UTC 2014 - coolo@suse.com

- updated to version 1.1.8
 ### Initial Socket Connection Again Raises Bunny::TCPConnectionFailed
 
 Initial socket connection again raises `Bunny::TCPConnectionFailed`
 on the connection origin thread.

-------------------------------------------------------------------
Fri Mar 21 12:54:12 UTC 2014 - coolo@suse.com

- updated to version 1.1.7
 ### Heartbeat Sender Thread Leak
 
 `Bunny::Session#close` no longer leaks heartbeat sender
 threads.
 
 `Bunny::Session#clean_up_on_shutdown` was cherry-picked from master.
 
 ### Routing Key Limit
 
 Per AMQP 0-9-1 spec, routing keys cannot be longer than 255 characters.
 `Bunny::Channel#basic_publish` and `Bunny::Exchange#publish` now enforces
 this limit.
 
 
 ### Thread Leak Plugged
 
 `Bunny::Session#close` on connections that have experienced a network failure
 will correctly clean up I/O thread.

-------------------------------------------------------------------
Tue Mar 18 14:57:17 UTC 2014 - coolo@suse.com

- updated to version 1.1.4
 ### Bunny::Concurrent::ContinuationQueue#poll Rounding Fix
 
 `Bunny::Concurrent::ContinuationQueue#poll` no longer floors the argument
 to the nearest second.

-------------------------------------------------------------------
Sat Feb 22 06:25:44 UTC 2014 - coolo@suse.com

- updated to version 1.1.3
 ### Nagle's Algorithm Disabled Correctly
 Bunny now properly disables [Nagle's algorithm](http://boundary.com/blog/2012/05/02/know-a-delay-nagles-algorithm-and-you/)
 on the sockets it opens. This likely means
 significantly lower latency for workloads that involve
 sending a lot of small messages very frequently.

-------------------------------------------------------------------
Thu Dec 12 10:19:37 UTC 2013 - coolo@suse.com

- updated to version 1.0.6
  ### Better Exception Handling in Consumers
  
  Consumer work pools will now correctly catch all exceptions
  when dispatching submitted operations, not just `Bunny::Exception`
  subclasses.
  
  ### TLS Without Peer Verification
  
  Bunny now successfully performs TLS upgrade when peer verification
  is disabled.
  
  Contribute by Jordan Curzon.
  
  ### Bunny::Session#with_channel Ensures the Channel is Closed
  
  `Bunny::Session#with_channel` now makes sure the channel is closed
  even if provided block raises an exception
  
  Contributed by Carl Hoerberg.
  
  
  ### Channel Number = 0 is Rejected
  
  `Bunny::Session#create_channel` will now reject channel number 0.
  
-------------------------------------------------------------------
Wed Nov 27 08:19:02 UTC 2013 - coolo@suse.com

- updated to version 1.0.5
  ### Single Threaded Mode Fixes
  
  Single threaded mode no longer fails with
  
  ```
  undefined method `event_loop'
  ```
  
  ### connection.tune.channel_max No Longer Overflows
  
  `connection.tune.channel_max` could previously be configured to values
  greater than 2^16 - 1 (65535). This would result in a silent overflow
  during serialization. The issue was harmless in practice but is still
  a bug that can be quite confusing.
  
  Bunny now caps max number of channels to 65535. This allows it to be
  forward compatible with future RabbitMQ versions that may allow limiting
  total # of open channels via server configuration.
  
  ### Thread Leaks Fixes
  
  Bunny will now correctly release heartbeat sender when allocating
  a new one (usually happens only when connection recovers from a network
  failure).
  
  ### amq-protocol Update
  
  Minimum `amq-protocol` version is now `1.9.0` which includes
  bug fixes and performance improvements for channel ID allocator.
  
  ### Versioned Delivery Tag Fix
  
  Versioned delivery tag now ensures all the arguments it operates
  (original delivery tag, atomic fixnum instances, etc) are coerced to `Integer`
  before comparison.
  
  GitHub issues: #171.

-------------------------------------------------------------------
Fri Nov 22 08:40:31 UTC 2013 - coolo@suse.com

- updated to version 1.0.4
 ### Eliminated Errouneous Debug Statement
 
 `1.0.3` eliminates a debug log message that should have
 never made it into a commit.
 
 
 ## Changes between Bunny 1.0.1 and 1.0.2
 
 ### Fixes CPU Burn on JRuby
 
 A silly mistake in `1.0.1` testing process ended up reverting
 the fix for #165 and #166. This release corrects it.
 
 
 ## Changes between Bunny 1.0.0 and 1.0.1
 
 ### Default CA's Paths Are Disabled on JRuby
 
 Bunny uses OpenSSL provided CA certificate paths. This
 caused problems on some platforms on JRuby (see [jruby/jruby#155](https://github.com/jruby/jruby/issues/1055)).
 
 To avoid these issues, Bunny no longer uses default CA certificate paths on JRuby
 (there are no changes for other Rubies), so it's necessary to provide
 CA certificate explicitly.
 
 ### Fixes CPU Burn on JRuby
 
 Bunny now uses slightly different ways of continuously reading from the socket
 on CRuby and JRuby, to prevent abnormally high CPU usage on JRuby after a
 certain period of time (the frequency of `EWOULDBLOCK` being raised spiked
 sharply).
 
-------------------------------------------------------------------
Thu Oct 31 05:54:39 UTC 2013 - coolo@suse.com

- updated to version 1.0.0, see ChangeLog.md for a lot of API
  changes

-------------------------------------------------------------------
Fri Oct  4 07:17:59 UTC 2013 - coolo@suse.com

- updated to version 0.10.8, no changelog

-------------------------------------------------------------------
Mon Sep 23 14:53:05 UTC 2013 - coolo@suse.com

- updated to version 0.10.7
  ### Add timeout Bunny::ConsumerWorkPool#join
  
  `Bunny::ConsumerWorkPool#join` now accepts an optional
  timeout argument.

-------------------------------------------------------------------
Sat Sep  7 05:19:53 UTC 2013 - coolo@suse.com

- updated to version 0.10.6
 ### Respect RABBITMQ_URL value
 
 `RABBITMQ_URL` env variable will now have effect even if
 Bunny.new is invoked without arguments.
 
 Contributed by Robert Ross.

-------------------------------------------------------------------
Tue Sep  3 08:10:06 UTC 2013 - coolo@suse.com

- updated to version 0.10.5
 ### Bunny::Session.parse_uri
 
 `Bunny::Session.parse_uri` is a new method that parses
 connection URIs into hashes that `Bunny::Session#initialize`
 accepts.
 
 ``` ruby
 Bunny::Session.parse_uri("amqp://user:pwd@broker.eng.megacorp.local/myapp_qa")
 ```

-------------------------------------------------------------------
Mon Aug 26 05:05:40 UTC 2013 - coolo@suse.com

- updated to version 0.10.4
 ### Default Paths for TLS/SSL CA's on All OS'es
 
 Bunny now uses OpenSSL to detect default TLS/SSL CA's paths, extending
 this feature to OS'es other than Linux.
 
 Contributed by Jingwen Owen Ou.
 
 
 ## Changes between Bunny 0.10.2 and 0.10.3
 
 ### Default Paths for TLS/SSL CA's on Linux
 
 Bunny now will use the following TLS/SSL CA's paths on Linux by default:
 
  * `/etc/ssl/certs/ca-certificates.crt` on Ubuntu/Debian
  * `/etc/ssl/certs/ca-bundle.crt` on Amazon Linux
  * `/etc/ssl/ca-bundle.pem` on OpenSUSE
  * `/etc/pki/tls/certs/ca-bundle.crt` on Fedora/RHEL
 
 and will log a warning if no CA files are available via default paths
 or `:tls_ca_certificates`.
 
 Contributed by Carl Hörberg.
 
 
 ## Changes between Bunny 0.10.1 and 0.10.2
 
 ### Consumers Can Be Re-Registered From Bunny::Consumer#handle_cancellation
 
 It is now possible to re-register a consumer (and use any other synchronous methods)
 from `Bunny::Consumer#handle_cancellation`, which is now invoked in the channel's
 thread pool.
 
 
 ### Bunny::Session#close Fixed for Single Threaded Connections
 
 `Bunny::Session#close` with single threaded connections no longer fails
 with a nil pointer exception.
 
 
 
 ## Changes between Bunny 0.10.0 and 0.10.1
 
 ### Fix Abnormally Slow Bunny::Connection#close on JRuby
 
 `Bunny::Connection#close` on JRuby sometimes could enter a waiting
 state [on a native NIO/kqueue method] that lasted up to over 10 seconds.
 
 This severely affected test suite run times.

-------------------------------------------------------------------
Tue Aug  6 17:45:11 UTC 2013 - coolo@suse.com

- updated to version 0.10.0
  This release has one minor **breaking API change**.
  
  ### Safe[r] basic.ack, basic.nack and basic.reject implementation
  
  Previously if a channel was recovered (reopened) by automatic connection
  recovery before a message was acknowledged or rejected, it would cause
  any operation on the channel that uses delivery tags to fail and
  cause the channel to be closed.
  
  To avoid this issue, every channel keeps a counter of how many times
  it has been reopened and marks delivery tags with them. Using a stale
  tag to ack or reject a message will produce no method sent to RabbitMQ.
  Note that unacknowledged messages will be requeued by RabbitMQ when connection
  goes down anyway.
  
  This involves an API change: `Bunny::DeliveryMetadata#delivery_tag` is now
  and instance of a class that responds to `#tag` and `#to_i` and is accepted
  by `Bunny::Channel#ack` and related methods.
  
  Integers are still accepted by the same methods.

-------------------------------------------------------------------
Tue Jul 30 16:01:23 UTC 2013 - coolo@suse.com

- updated to version 0.9.8
  ### Exclusivity Violation for Consumers Now Raises a Reasonable Exception
  
  When a second consumer is registered for the same queue on different channels,
  a reasonable exception (`Bunny::AccessRefused`) will be raised.
  
  ## Changes between Bunny 0.9.6 and 0.9.7
  
  ### Reentrant Mutex Implementation
  
  Bunny now allows mutex impl to be configurable, uses reentrant Monitor
  by default.
  
  Non-reentrant mutexes is a major PITA and may affect code that
  uses Bunny.
  
  Avg. publishing throughput with Monitor drops slightly from
  5.73 Khz to 5.49 Khz (about 4% decrease), which is reasonable
  for Bunny.
  
  Apps that need these 4% can configure what mutex implementation
  is used on per-connection basis.
  
  
  ## Changes between Bunny 0.9.5 and 0.9.6
  
  ### Eliminated Race Condition in Bunny::Session#close
  
  `Bunny::Session#close` had a race condition that caused (non-deterministic)
  exceptions when connection transport was closed before connection
  reader loop was guaranteed to have stopped.
  
  
  ## Changes between Bunny 0.9.4 and 0.9.5
  
  ### connection.close Raises Exceptions on Connection Thread
  
  Connection-level exceptions (including when a connection is closed via
  management UI or `rabbitmqctl`) will now be raised on the connection
  thread so they
  
   * can be handled by applications
   * do not start connection recovery, which may be uncalled for

-------------------------------------------------------------------
Wed Aug  1 05:02:20 UTC 2012 - coolo@suse.com

- updated to version 0.8.0

-------------------------------------------------------------------
Tue Jul 10 19:11:09 UTC 2012 - jatan@suse.de

- Add provides for rubygem-bunny-0_6

-------------------------------------------------------------------
Tue Jun  5 12:40:45 UTC 2012 - saschpe@suse.de

- Fixed license (MIT)

-------------------------------------------------------------------
Thu Apr 21 17:32:36 CEST 2011 - berendt@b1-systems.de

- initial version (created with gem2rpm-opensuse)
openSUSE Build Service is sponsored by