Hello community, here is the log from the commit of package rubygem-amq-protocol for openSUSE:Factory checked in at 2017-06-08 14:59:44 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-amq-protocol (Old) and /work/SRC/openSUSE:Factory/.rubygem-amq-protocol.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-amq-protocol" Thu Jun 8 14:59:44 2017 rev:15 rq:497670 version:2.2.0 Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-amq-protocol/rubygem-amq-protocol.changes 2017-04-11 09:31:27.101295088 +0200 +++ /work/SRC/openSUSE:Factory/.rubygem-amq-protocol.new/rubygem-amq-protocol.changes 2017-06-08 14:59:50.425804504 +0200 @@ -1,0 +2,6 @@ +Tue May 23 09:39:17 UTC 2017 - co...@suse.com + +- updated to version 2.2.0 + see installed ChangeLog.md + +------------------------------------------------------------------- Old: ---- amq-protocol-2.1.0.gem New: ---- amq-protocol-2.2.0.gem ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-amq-protocol.spec ++++++ --- /var/tmp/diff_new_pack.rx1IRP/_old 2017-06-08 14:59:51.033718708 +0200 +++ /var/tmp/diff_new_pack.rx1IRP/_new 2017-06-08 14:59:51.037718143 +0200 @@ -24,7 +24,7 @@ # Name: rubygem-amq-protocol -Version: 2.1.0 +Version: 2.2.0 Release: 0 %define mod_name amq-protocol %define mod_full_name %{mod_name}-%{version} ++++++ amq-protocol-2.1.0.gem -> amq-protocol-2.2.0.gem ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/.travis.yml new/.travis.yml --- old/.travis.yml 2017-01-28 06:55:25.000000000 +0100 +++ new/.travis.yml 2017-05-11 00:43:45.000000000 +0200 @@ -3,10 +3,11 @@ cache: bundler script: "bundle exec rspec spec" rvm: - - 2.3.0 - - 2.2 - - 2.1 - - 2.0 + - "2.4.0" + - "2.3.3" + - "2.2" + - "2.1" + - "2.0" - ruby-head notifications: recipients: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ChangeLog.md new/ChangeLog.md --- old/ChangeLog.md 2017-01-28 06:55:25.000000000 +0100 +++ new/ChangeLog.md 2017-05-11 00:43:45.000000000 +0200 @@ -1,4 +1,18 @@ -## Changes between 2.0.0 and 2.1.0 +## Changes between 2.1.0 and 2.2.0 (unreleased) + +### Timestamps are Encoded as 64-bit Unsigned Integers + +This is a potentially **breaking change**. It is recommended that +all applications that use this gem and pass date/time values in message +properties or headers are upgraded at the same time. + +GitHub issue: [#64](https://github.com/ruby-amqp/amq-protocol/issues/64). + +Contributed by Carl Hoerberg. + + + +## Changes between 2.0.0 and 2.1.0 (January 28th, 2017) ### Ruby Warnings Squashed Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/codegen/codegen.py new/codegen/codegen.py --- old/codegen/codegen.py 2017-01-28 06:55:25.000000000 +0100 +++ new/codegen/codegen.py 2017-05-11 00:43:45.000000000 +0200 @@ -12,7 +12,7 @@ try: from mako.template import Template except ImportError: - print "Mako isn't installed. Please install mako via pip or similar." + print("Mako isn't installed. Please install mako via pip or similar.") sys.exit(1) # main class @@ -57,7 +57,7 @@ # method.accepted_by("server") # method.accepted_by("client", "server") -accepted_by_update = json.loads(file("codegen/amqp_0.9.1_changes.json").read()) +accepted_by_update = json.loads(open("codegen/amqp_0.9.1_changes.json").read()) def accepted_by(self, *receivers): def get_accepted_by(self): @@ -143,7 +143,7 @@ def main(json_spec_path): spec = AmqpSpecObject(json_spec_path) spec.type = type - print render("codegen/protocol.rb.pytemplate", spec = spec) + print(render("codegen/protocol.rb.pytemplate", spec = spec)) return main diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/codegen/codegen_helpers.py new/codegen/codegen_helpers.py --- old/codegen/codegen_helpers.py 2017-01-28 06:55:25.000000000 +0100 +++ new/codegen/codegen_helpers.py 2017-05-11 00:43:45.000000000 +0200 @@ -1,5 +1,7 @@ # -*- coding: utf-8 -*- +from __future__ import print_function + def genSingleEncode(spec, cValue, unresolved_domain): buffer = [] type = spec.resolveDomain(unresolved_domain) @@ -24,7 +26,7 @@ elif type == 'table': buffer.append("buffer << AMQ::Protocol::Table.encode(%s)" % (cValue,)) else: - raise "Illegal domain in genSingleEncode", type + raise "Illegal domain in genSingleEncode: {0}".format(type) return buffer @@ -34,7 +36,7 @@ if cLvalue == "known_hosts": import sys - print >> sys.stderr, field, field.ignored + print(field, field.ignored, file = sys.stderr) type = spec.resolveDomain(unresolved_domain) buffer = [] @@ -61,7 +63,7 @@ buffer.append("%s = AMQ::Pack.unpack_uint64_big_endian(data[offset, 8]).first" % (cLvalue,)) buffer.append("offset += 8") elif type == 'timestamp': - buffer.append("%s = data[offset, 8].unpack(PACK_UINT32_X2).first" % (cLvalue,)) + buffer.append("%s = data[offset, 8].unpack(PACK_UINT64_BE).first" % (cLvalue,)) buffer.append("offset += 8") elif type == 'bit': raise "Can't decode bit in genSingleDecode" @@ -70,7 +72,7 @@ buffer.append("%s = Table.decode(data[offset, table_length + 4])" % (cLvalue,)) buffer.append("offset += table_length + 4") else: - raise StandardError("Illegal domain '" + type + "' in genSingleDecode") + raise StandardError("Illegal domain '{0}' in genSingleDecode".format(type)) return buffer @@ -99,7 +101,7 @@ elif type == 'longlong': buffer.append("AMQ::Pack.unpack_uint64_big_endian(data).first") elif type == 'timestamp': - buffer.append("Time.at(data.unpack(PACK_UINT32_X2).last)") + buffer.append("Time.at(data.unpack(PACK_UINT64_BE).last)") elif type == 'bit': raise "Can't decode bit in genSingleDecode" elif type == 'table': diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/codegen/protocol.rb.pytemplate new/codegen/protocol.rb.pytemplate --- old/codegen/protocol.rb.pytemplate 2017-01-28 06:55:25.000000000 +0100 +++ new/codegen/protocol.rb.pytemplate 2017-05-11 00:43:45.000000000 +0200 @@ -212,7 +212,7 @@ result = data[offset, size].unpack(PACK_CHAR).first when :timestamp size = 8 - result = Time.at(data[offset, size].unpack(PACK_UINT32_X2).last) + result = Time.at(data[offset, size].unpack(PACK_UINT64_BE).last) when :table size = 4 + data[offset, 4].unpack(PACK_UINT32)[0] result = Table.decode(data[offset, size]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/generate.rb new/generate.rb --- old/generate.rb 2017-01-28 06:55:25.000000000 +0100 +++ new/generate.rb 2017-05-11 00:43:45.000000000 +0200 @@ -1,6 +1,10 @@ #!/usr/bin/env ruby # encoding: utf-8 +# rabbitmq-codegen is Python 3 compatible and so is +# the code in this repo but Mako still fails with 3.6 as of May 2017 :( MK. +python = ENV.fetch("PYTHON", "python2") + def sh(*args) system(*args) end @@ -13,8 +17,8 @@ end path = "lib/amq/protocol/client.rb" -puts "Running ./codegen/codegen.py client #{spec} #{path}" -sh "./codegen/codegen.py client #{spec} #{extensions.join(' ')} #{path}" +puts "Running '#{python} ./codegen/codegen.py client #{spec} #{extensions.join(' ')} #{path}'" +sh "#{python} ./codegen/codegen.py client #{spec} #{extensions.join(' ')} #{path}" if File.file?(path) sh "ruby -c #{path}" end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/amq/protocol/client.rb new/lib/amq/protocol/client.rb --- old/lib/amq/protocol/client.rb 2017-01-28 06:55:25.000000000 +0100 +++ new/lib/amq/protocol/client.rb 2017-05-11 00:43:45.000000000 +0200 @@ -251,7 +251,7 @@ end # @return - # [u'client_properties = nil', u"mechanism = u'PLAIN'", u'response = nil', u"locale = u'en_US'"] + # ['client_properties = nil', "mechanism = 'PLAIN'", 'response = nil', "locale = 'en_US'"] def self.encode(client_properties, mechanism, response, locale) channel = 0 buffer = @packed_indexes.dup @@ -307,7 +307,7 @@ end # @return - # [u'response = nil'] + # ['response = nil'] def self.encode(response) channel = 0 buffer = @packed_indexes.dup @@ -362,7 +362,7 @@ end # @return - # [u'channel_max = false', u'frame_max = false', u'heartbeat = false'] + # ['channel_max = false', 'frame_max = false', 'heartbeat = false'] def self.encode(channel_max, frame_max, heartbeat) channel = 0 buffer = @packed_indexes.dup @@ -386,7 +386,7 @@ end # @return - # [u"virtual_host = u'/'", u'capabilities = EMPTY_STRING', u'insist = false'] + # ["virtual_host = '/'", 'capabilities = EMPTY_STRING', 'insist = false'] def self.encode(virtual_host) capabilities = EMPTY_STRING insist = false @@ -467,7 +467,7 @@ end # @return - # [u'reply_code = nil', u'reply_text = EMPTY_STRING', u'class_id = nil', u'method_id = nil'] + # ['reply_code = nil', 'reply_text = EMPTY_STRING', 'class_id = nil', 'method_id = nil'] def self.encode(reply_code, reply_text, class_id, method_id) channel = 0 buffer = @packed_indexes.dup @@ -536,7 +536,7 @@ end # @return - # [u'reason = EMPTY_STRING'] + # ['reason = EMPTY_STRING'] def self.encode(reason) channel = 0 buffer = @packed_indexes.dup @@ -596,7 +596,7 @@ end # @return - # [u'out_of_band = EMPTY_STRING'] + # ['out_of_band = EMPTY_STRING'] def self.encode(channel, out_of_band) buffer = @packed_indexes.dup buffer << out_of_band.to_s.bytesize.chr @@ -659,7 +659,7 @@ end # @return - # [u'active = nil'] + # ['active = nil'] def self.encode(channel, active) buffer = @packed_indexes.dup bit_buffer = 0 @@ -695,7 +695,7 @@ end # @return - # [u'active = nil'] + # ['active = nil'] def self.encode(channel, active) buffer = @packed_indexes.dup bit_buffer = 0 @@ -741,7 +741,7 @@ end # @return - # [u'reply_code = nil', u'reply_text = EMPTY_STRING', u'class_id = nil', u'method_id = nil'] + # ['reply_code = nil', 'reply_text = EMPTY_STRING', 'class_id = nil', 'method_id = nil'] def self.encode(channel, reply_code, reply_text, class_id, method_id) buffer = @packed_indexes.dup buffer << [reply_code].pack(PACK_UINT16) @@ -802,7 +802,7 @@ end # @return - # [u'ticket = 0', u'exchange = nil', u"type = u'direct'", u'passive = false', u'durable = false', u'auto_delete = false', u'internal = false', u'nowait = false', u'arguments = {}'] + # ['ticket = 0', 'exchange = nil', "type = 'direct'", 'passive = false', 'durable = false', 'auto_delete = false', 'internal = false', 'nowait = false', 'arguments = {}'] def self.encode(channel, exchange, type, passive, durable, auto_delete, internal, nowait, arguments) ticket = 0 buffer = @packed_indexes.dup @@ -858,7 +858,7 @@ end # @return - # [u'ticket = 0', u'exchange = nil', u'if_unused = false', u'nowait = false'] + # ['ticket = 0', 'exchange = nil', 'if_unused = false', 'nowait = false'] def self.encode(channel, exchange, if_unused, nowait) ticket = 0 buffer = @packed_indexes.dup @@ -908,7 +908,7 @@ end # @return - # [u'ticket = 0', u'destination = nil', u'source = nil', u'routing_key = EMPTY_STRING', u'nowait = false', u'arguments = {}'] + # ['ticket = 0', 'destination = nil', 'source = nil', 'routing_key = EMPTY_STRING', 'nowait = false', 'arguments = {}'] def self.encode(channel, destination, source, routing_key, nowait, arguments) ticket = 0 buffer = @packed_indexes.dup @@ -962,7 +962,7 @@ end # @return - # [u'ticket = 0', u'destination = nil', u'source = nil', u'routing_key = EMPTY_STRING', u'nowait = false', u'arguments = {}'] + # ['ticket = 0', 'destination = nil', 'source = nil', 'routing_key = EMPTY_STRING', 'nowait = false', 'arguments = {}'] def self.encode(channel, destination, source, routing_key, nowait, arguments) ticket = 0 buffer = @packed_indexes.dup @@ -1024,7 +1024,7 @@ end # @return - # [u'ticket = 0', u'queue = EMPTY_STRING', u'passive = false', u'durable = false', u'exclusive = false', u'auto_delete = false', u'nowait = false', u'arguments = {}'] + # ['ticket = 0', 'queue = EMPTY_STRING', 'passive = false', 'durable = false', 'exclusive = false', 'auto_delete = false', 'nowait = false', 'arguments = {}'] def self.encode(channel, queue, passive, durable, exclusive, auto_delete, nowait, arguments) ticket = 0 buffer = @packed_indexes.dup @@ -1090,7 +1090,7 @@ end # @return - # [u'ticket = 0', u'queue = EMPTY_STRING', u'exchange = nil', u'routing_key = EMPTY_STRING', u'nowait = false', u'arguments = {}'] + # ['ticket = 0', 'queue = EMPTY_STRING', 'exchange = nil', 'routing_key = EMPTY_STRING', 'nowait = false', 'arguments = {}'] def self.encode(channel, queue, exchange, routing_key, nowait, arguments) ticket = 0 buffer = @packed_indexes.dup @@ -1144,7 +1144,7 @@ end # @return - # [u'ticket = 0', u'queue = EMPTY_STRING', u'nowait = false'] + # ['ticket = 0', 'queue = EMPTY_STRING', 'nowait = false'] def self.encode(channel, queue, nowait) ticket = 0 buffer = @packed_indexes.dup @@ -1197,7 +1197,7 @@ end # @return - # [u'ticket = 0', u'queue = EMPTY_STRING', u'if_unused = false', u'if_empty = false', u'nowait = false'] + # ['ticket = 0', 'queue = EMPTY_STRING', 'if_unused = false', 'if_empty = false', 'nowait = false'] def self.encode(channel, queue, if_unused, if_empty, nowait) ticket = 0 buffer = @packed_indexes.dup @@ -1252,7 +1252,7 @@ end # @return - # [u'ticket = 0', u'queue = EMPTY_STRING', u'exchange = nil', u'routing_key = EMPTY_STRING', u'arguments = {}'] + # ['ticket = 0', 'queue = EMPTY_STRING', 'exchange = nil', 'routing_key = EMPTY_STRING', 'arguments = {}'] def self.encode(channel, queue, exchange, routing_key, arguments) ticket = 0 buffer = @packed_indexes.dup @@ -1515,7 +1515,7 @@ result = data[offset, size].unpack(PACK_CHAR).first when :timestamp size = 8 - result = Time.at(data[offset, size].unpack(PACK_UINT32_X2).last) + result = Time.at(data[offset, size].unpack(PACK_UINT64_BE).last) when :table size = 4 + data[offset, 4].unpack(PACK_UINT32)[0] result = Table.decode(data[offset, size]) @@ -1540,7 +1540,7 @@ end # @return - # [u'prefetch_size = false', u'prefetch_count = false', u'global = false'] + # ['prefetch_size = false', 'prefetch_count = false', 'global = false'] def self.encode(channel, prefetch_size, prefetch_count, global) buffer = @packed_indexes.dup buffer << [prefetch_size].pack(PACK_UINT32) @@ -1587,7 +1587,7 @@ end # @return - # [u'ticket = 0', u'queue = EMPTY_STRING', u'consumer_tag = EMPTY_STRING', u'no_local = false', u'no_ack = false', u'exclusive = false', u'nowait = false', u'arguments = {}'] + # ['ticket = 0', 'queue = EMPTY_STRING', 'consumer_tag = EMPTY_STRING', 'no_local = false', 'no_ack = false', 'exclusive = false', 'nowait = false', 'arguments = {}'] def self.encode(channel, queue, consumer_tag, no_local, no_ack, exclusive, nowait, arguments) ticket = 0 buffer = @packed_indexes.dup @@ -1666,7 +1666,7 @@ end # @return - # [u'consumer_tag = nil', u'nowait = false'] + # ['consumer_tag = nil', 'nowait = false'] def self.encode(channel, consumer_tag, nowait) buffer = @packed_indexes.dup buffer << consumer_tag.to_s.bytesize.chr @@ -1719,7 +1719,7 @@ end # @return - # [u'ticket = 0', u'exchange = EMPTY_STRING', u'routing_key = EMPTY_STRING', u'mandatory = false', u'immediate = false', 'user_headers = nil', 'payload = ""', 'frame_size = nil'] + # ['ticket = 0', 'exchange = EMPTY_STRING', 'routing_key = EMPTY_STRING', 'mandatory = false', 'immediate = false', 'user_headers = nil', 'payload = ""', 'frame_size = nil'] def self.encode(channel, payload, user_headers, exchange, routing_key, mandatory, immediate, frame_size) ticket = 0 buffer = @packed_indexes.dup @@ -1843,7 +1843,7 @@ end # @return - # [u'ticket = 0', u'queue = EMPTY_STRING', u'no_ack = false'] + # ['ticket = 0', 'queue = EMPTY_STRING', 'no_ack = false'] def self.encode(channel, queue, no_ack) ticket = 0 buffer = @packed_indexes.dup @@ -1957,7 +1957,7 @@ end # @return - # [u'delivery_tag = false', u'multiple = false'] + # ['delivery_tag = false', 'multiple = false'] def self.encode(channel, delivery_tag, multiple) buffer = @packed_indexes.dup buffer << AMQ::Pack.pack_uint64_big_endian(delivery_tag) @@ -1981,7 +1981,7 @@ end # @return - # [u'delivery_tag = nil', u'requeue = true'] + # ['delivery_tag = nil', 'requeue = true'] def self.encode(channel, delivery_tag, requeue) buffer = @packed_indexes.dup buffer << AMQ::Pack.pack_uint64_big_endian(delivery_tag) @@ -2005,7 +2005,7 @@ end # @return - # [u'requeue = false'] + # ['requeue = false'] def self.encode(channel, requeue) buffer = @packed_indexes.dup bit_buffer = 0 @@ -2028,7 +2028,7 @@ end # @return - # [u'requeue = false'] + # ['requeue = false'] def self.encode(channel, requeue) buffer = @packed_indexes.dup bit_buffer = 0 @@ -2091,7 +2091,7 @@ end # @return - # [u'delivery_tag = false', u'multiple = false', u'requeue = true'] + # ['delivery_tag = false', 'multiple = false', 'requeue = true'] def self.encode(channel, delivery_tag, multiple, requeue) buffer = @packed_indexes.dup buffer << AMQ::Pack.pack_uint64_big_endian(delivery_tag) @@ -2271,7 +2271,7 @@ end # @return - # [u'nowait = false'] + # ['nowait = false'] def self.encode(channel, nowait) buffer = @packed_indexes.dup bit_buffer = 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/amq/protocol/constants.rb new/lib/amq/protocol/constants.rb --- old/lib/amq/protocol/constants.rb 2017-01-28 06:55:25.000000000 +0100 +++ new/lib/amq/protocol/constants.rb 2017-05-11 00:43:45.000000000 +0200 @@ -12,6 +12,7 @@ PACK_UINT16_X2 = 'n2'.freeze PACK_UINT32 = 'N'.freeze PACK_UINT32_X2 = 'N2'.freeze + PACK_UINT64_BE = 'Q>'.freeze PACK_INT64 = 'q'.freeze PACK_INT64_BE = 'q>'.freeze PACK_UCHAR_UINT32 = 'CN'.freeze diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/amq/protocol/table_value_decoder.rb new/lib/amq/protocol/table_value_decoder.rb --- old/lib/amq/protocol/table_value_decoder.rb 2017-01-28 06:55:25.000000000 +0100 +++ new/lib/amq/protocol/table_value_decoder.rb 2017-05-11 00:43:45.000000000 +0200 @@ -132,7 +132,7 @@ def self.decode_time(data, offset) - timestamp = data.slice(offset, 8).unpack(PACK_UINT32_X2).last + timestamp = data.slice(offset, 8).unpack(PACK_UINT64_BE).last v = Time.at(timestamp) offset += 8 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/amq/protocol/version.rb new/lib/amq/protocol/version.rb --- old/lib/amq/protocol/version.rb 2017-01-28 06:55:25.000000000 +0100 +++ new/lib/amq/protocol/version.rb 2017-05-11 00:43:45.000000000 +0200 @@ -1,5 +1,5 @@ module AMQ module Protocol - VERSION = "2.1.0" + VERSION = "2.2.0" end # Protocol end # AMQ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata --- old/metadata 2017-01-28 06:55:25.000000000 +0100 +++ new/metadata 2017-05-11 00:43:45.000000000 +0200 @@ -1,7 +1,7 @@ --- !ruby/object:Gem::Specification name: amq-protocol version: !ruby/object:Gem::Version - version: 2.1.0 + version: 2.2.0 platform: ruby authors: - Jakub Stastny @@ -11,7 +11,7 @@ autorequire: bindir: bin cert_chain: [] -date: 2017-01-28 00:00:00.000000000 Z +date: 2017-05-10 00:00:00.000000000 Z dependencies: [] description: |2 amq-protocol is an AMQP 0.9.1 serialization library for Ruby. It is not a @@ -102,7 +102,7 @@ version: '0' requirements: [] rubyforge_project: amq-protocol -rubygems_version: 2.5.1 +rubygems_version: 2.6.11 signing_key: specification_version: 4 summary: AMQP 0.9.1 encoding & decoding library.