Hello community,
here is the log from the commit of package rubygem-msgpack for openSUSE:Factory
checked in at 2019-06-19 21:00:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-msgpack (Old)
and /work/SRC/openSUSE:Factory/.rubygem-msgpack.new.4811 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-msgpack"
Wed Jun 19 21:00:38 2019 rev:9 rq:706010 version:1.2.10
Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-msgpack/rubygem-msgpack.changes
2019-03-27 16:18:02.415571815 +0100
+++
/work/SRC/openSUSE:Factory/.rubygem-msgpack.new.4811/rubygem-msgpack.changes
2019-06-19 21:00:40.614102033 +0200
@@ -1,0 +2,10 @@
+Sun May 5 09:35:27 UTC 2019 - Stephan Kulow <[email protected]>
+
+- updated to version 1.2.10
+ see installed ChangeLog
+
+ 2019-04-19 version 1.2.10:
+
+ * Optimze MessagePack.unpack not to copy source string
+
+-------------------------------------------------------------------
Old:
----
msgpack-1.2.9.gem
New:
----
msgpack-1.2.10.gem
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rubygem-msgpack.spec ++++++
--- /var/tmp/diff_new_pack.LaXWhB/_old 2019-06-19 21:00:41.434102721 +0200
+++ /var/tmp/diff_new_pack.LaXWhB/_new 2019-06-19 21:00:41.438102725 +0200
@@ -24,7 +24,7 @@
#
Name: rubygem-msgpack
-Version: 1.2.9
+Version: 1.2.10
Release: 0
%define mod_name msgpack
%define mod_full_name %{mod_name}-%{version}
++++++ msgpack-1.2.9.gem -> msgpack-1.2.10.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/.travis.yml new/.travis.yml
--- old/.travis.yml 2019-03-13 02:38:52.000000000 +0100
+++ new/.travis.yml 2019-04-19 03:15:28.000000000 +0200
@@ -23,9 +23,9 @@
os: linux
- rvm: 2.5.3
os: linux
- - rvm: 2.6.0
+ - rvm: 2.6.1
os: linux
- - rvm: 2.6.0
+ - rvm: 2.6.1
os: osx
- rvm: ruby-head
os: linux
@@ -36,6 +36,8 @@
- rvm: jruby-19mode
os: linux
allow_failures:
+ - rvm: 2.6.1
+ os: osx
- rvm: ruby-head
- rvm: jruby-head
- rvm: jruby-19mode
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ChangeLog new/ChangeLog
--- old/ChangeLog 2019-03-13 02:38:52.000000000 +0100
+++ new/ChangeLog 2019-04-19 03:15:28.000000000 +0200
@@ -1,3 +1,7 @@
+2019-04-19 version 1.2.10:
+
+* Optimze MessagePack.unpack not to copy source string
+
2019-03-13 version 1.2.9:
* Hotfix release only for JRuby: 1.2.8-java was built incorrectly
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ext/java/org/msgpack/jruby/Unpacker.java
new/ext/java/org/msgpack/jruby/Unpacker.java
--- old/ext/java/org/msgpack/jruby/Unpacker.java 2019-03-13
02:38:52.000000000 +0100
+++ new/ext/java/org/msgpack/jruby/Unpacker.java 2019-04-19
03:15:28.000000000 +0200
@@ -170,7 +170,7 @@
return data == null ? ctx.getRuntime().getFalse() :
ctx.getRuntime().getTrue();
}
- @JRubyMethod(required = 1)
+ @JRubyMethod(required = 1, name = "feed", alias = { "feed_reference" })
public IRubyObject feed(ThreadContext ctx, IRubyObject data) {
ByteList byteList = data.asString().getByteList();
if (decoder == null) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ext/msgpack/buffer.h new/ext/msgpack/buffer.h
--- old/ext/msgpack/buffer.h 2019-03-13 02:38:52.000000000 +0100
+++ new/ext/msgpack/buffer.h 2019-04-19 03:15:28.000000000 +0200
@@ -262,6 +262,20 @@
return length;
}
+static inline size_t msgpack_buffer_append_string_reference(msgpack_buffer_t*
b, VALUE string)
+{
+ size_t length = RSTRING_LEN(string);
+
+ if(length > MSGPACK_BUFFER_STRING_WRITE_REFERENCE_MINIMUM) {
+ _msgpack_buffer_append_long_string(b, string);
+
+ } else {
+ msgpack_buffer_append(b, RSTRING_PTR(string), length);
+ }
+
+ return length;
+}
+
/*
* IO functions
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ext/msgpack/unpacker_class.c
new/ext/msgpack/unpacker_class.c
--- old/ext/msgpack/unpacker_class.c 2019-03-13 02:38:52.000000000 +0100
+++ new/ext/msgpack/unpacker_class.c 2019-04-19 03:15:28.000000000 +0200
@@ -256,6 +256,17 @@
return self;
}
+static VALUE Unpacker_feed_reference(VALUE self, VALUE data)
+{
+ UNPACKER(self, uk);
+
+ StringValue(data);
+
+ msgpack_buffer_append_string_reference(UNPACKER_BUFFER_(uk), data);
+
+ return self;
+}
+
static VALUE Unpacker_each_impl(VALUE self)
{
UNPACKER(self, uk);
@@ -312,8 +323,7 @@
}
#endif
- // TODO optimize
- Unpacker_feed(self, data);
+ Unpacker_feed_reference(self, data);
return Unpacker_each(self);
}
@@ -386,9 +396,6 @@
{
UNPACKER(self, uk);
- /* prefer reference than copying; see MessagePack_Unpacker_module_init */
- msgpack_buffer_set_write_reference_threshold(UNPACKER_BUFFER_(uk), 0);
-
int r = msgpack_unpacker_read(uk, 0);
if(r < 0) {
raise_unpacker_error(r);
@@ -444,6 +451,7 @@
rb_define_method(cMessagePack_Unpacker, "read_map_header",
Unpacker_read_map_header, 0);
//rb_define_method(cMessagePack_Unpacker, "peek_next_type",
Unpacker_peek_next_type, 0); // TODO
rb_define_method(cMessagePack_Unpacker, "feed", Unpacker_feed, 1);
+ rb_define_method(cMessagePack_Unpacker, "feed_reference",
Unpacker_feed_reference, 1);
rb_define_method(cMessagePack_Unpacker, "each", Unpacker_each, 0);
rb_define_method(cMessagePack_Unpacker, "feed_each", Unpacker_feed_each,
1);
rb_define_method(cMessagePack_Unpacker, "reset", Unpacker_reset, 0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/msgpack/version.rb new/lib/msgpack/version.rb
--- old/lib/msgpack/version.rb 2019-03-13 02:38:52.000000000 +0100
+++ new/lib/msgpack/version.rb 2019-04-19 03:15:28.000000000 +0200
@@ -1,5 +1,5 @@
module MessagePack
- VERSION = "1.2.9"
+ VERSION = "1.2.10"
# NOTE for msgpack-ruby maintainer:
# Check these things to release new binaryes for new Ruby versions
(especially for Windows):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/msgpack.rb new/lib/msgpack.rb
--- old/lib/msgpack.rb 2019-03-13 02:38:52.000000000 +0100
+++ new/lib/msgpack.rb 2019-04-19 03:15:28.000000000 +0200
@@ -27,7 +27,7 @@
if src.is_a? String
unpacker = DefaultFactory.unpacker param || DEFAULT_EMPTY_PARAMS
- unpacker.feed src
+ unpacker.feed_reference src
else
unpacker = DefaultFactory.unpacker src, param || DEFAULT_EMPTY_PARAMS
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata 2019-03-13 02:38:52.000000000 +0100
+++ new/metadata 2019-04-19 03:15:28.000000000 +0200
@@ -1,7 +1,7 @@
--- !ruby/object:Gem::Specification
name: msgpack
version: !ruby/object:Gem::Version
- version: 1.2.9
+ version: 1.2.10
platform: ruby
authors:
- Sadayuki Furuhashi
@@ -10,7 +10,7 @@
autorequire:
bindir: bin
cert_chain: []
-date: 2019-03-13 00:00:00.000000000 Z
+date: 2019-04-19 00:00:00.000000000 Z
dependencies:
- !ruby/object:Gem::Dependency
name: bundler
@@ -238,7 +238,7 @@
- !ruby/object:Gem::Version
version: '0'
requirements: []
-rubygems_version: 3.0.1
+rubygems_version: 3.0.3
signing_key:
specification_version: 4
summary: MessagePack, a binary-based efficient data interchange format.