Hello community,

here is the log from the commit of package perl-Glib-Object-Introspection for 
openSUSE:Factory checked in at 2015-08-25 07:20:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Glib-Object-Introspection (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Glib-Object-Introspection.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Glib-Object-Introspection"

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/perl-Glib-Object-Introspection/perl-Glib-Object-Introspection.changes
    2015-04-02 16:03:09.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.perl-Glib-Object-Introspection.new/perl-Glib-Object-Introspection.changes
       2015-08-25 08:54:03.000000000 +0200
@@ -1,0 +2,8 @@
+Thu Aug 20 17:47:01 UTC 2015 - [email protected]
+
+- Update to 0.030:
+  * Avoid repeating setting up a library as this can lead to issues.
+  * Add some missing version guards to the tests.
+  * Add t/variants.t to MANIFEST.
+
+-------------------------------------------------------------------

Old:
----
  Glib-Object-Introspection-0.029.tar.gz

New:
----
  Glib-Object-Introspection-0.030.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ perl-Glib-Object-Introspection.spec ++++++
--- /var/tmp/diff_new_pack.U9hkp9/_old  2015-08-25 08:54:04.000000000 +0200
+++ /var/tmp/diff_new_pack.U9hkp9/_new  2015-08-25 08:54:04.000000000 +0200
@@ -18,7 +18,7 @@
 
 %define cpan_name Glib-Object-Introspection
 Name:           perl-Glib-Object-Introspection
-Version:        0.029
+Version:        0.030
 Release:        0
 Summary:        GObject Introspection bindings for Perl
 License:        LGPL-2.1+

++++++ Glib-Object-Introspection-0.029.tar.gz -> 
Glib-Object-Introspection-0.030.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Glib-Object-Introspection-0.029/MANIFEST 
new/Glib-Object-Introspection-0.030/MANIFEST
--- old/Glib-Object-Introspection-0.029/MANIFEST        2015-03-26 
01:01:22.000000000 +0100
+++ new/Glib-Object-Introspection-0.030/MANIFEST        2015-08-10 
02:51:51.000000000 +0200
@@ -44,6 +44,7 @@
 t/objects.t
 t/structs.t
 t/values.t
+t/variants.t
 t/vfunc-chaining.t
 t/vfunc-ref-counting.t
 META.yml                                 Module YAML meta-data (added by 
MakeMaker)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Glib-Object-Introspection-0.029/META.json 
new/Glib-Object-Introspection-0.030/META.json
--- old/Glib-Object-Introspection-0.029/META.json       2015-03-26 
01:01:21.000000000 +0100
+++ new/Glib-Object-Introspection-0.030/META.json       2015-08-10 
02:51:51.000000000 +0200
@@ -4,7 +4,7 @@
       "Glib::Object::Introspection Team <gtk-perl-list at gnome dot org>"
    ],
    "dynamic_config" : 1,
-   "generated_by" : "ExtUtils::MakeMaker version 7.04, CPAN::Meta::Converter 
version 2.143240",
+   "generated_by" : "ExtUtils::MakeMaker version 7.04, CPAN::Meta::Converter 
version 2.150001",
    "license" : [
       "lgpl_2_1"
    ],
@@ -66,5 +66,5 @@
       "x_IRC" : "irc://irc.gimp.org/#gtk-perl",
       "x_MailingList" : "https://mail.gnome.org/mailman/listinfo/gtk-perl-list";
    },
-   "version" : "0.029"
+   "version" : "0.030"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Glib-Object-Introspection-0.029/META.yml 
new/Glib-Object-Introspection-0.030/META.yml
--- old/Glib-Object-Introspection-0.029/META.yml        2015-03-26 
01:01:21.000000000 +0100
+++ new/Glib-Object-Introspection-0.030/META.yml        2015-08-10 
02:51:51.000000000 +0200
@@ -10,7 +10,7 @@
   ExtUtils::PkgConfig: '1'
   Glib: '1.31'
 dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 7.04, CPAN::Meta::Converter version 
2.143240'
+generated_by: 'ExtUtils::MakeMaker version 7.04, CPAN::Meta::Converter version 
2.150001'
 license: lgpl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -36,4 +36,4 @@
   homepage: http://gtk2-perl.sourceforge.net
   license: http://www.gnu.org/licenses/lgpl-2.1.html
   repository: git://git.gnome.org/perl-Glib-Object-Introspection
-version: '0.029'
+version: '0.030'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Glib-Object-Introspection-0.029/NEWS 
new/Glib-Object-Introspection-0.030/NEWS
--- old/Glib-Object-Introspection-0.029/NEWS    2015-03-26 00:58:41.000000000 
+0100
+++ new/Glib-Object-Introspection-0.030/NEWS    2015-08-10 02:50:37.000000000 
+0200
@@ -1,3 +1,10 @@
+Overview of changes in Glib::Object::Introspection 0.030
+========================================================
+
+* Avoid repeating setting up a library as this can lead to issues.
+* Add some missing version guards to the tests
+* Added t/variants.t to MANIFEST
+
 Overview of changes in Glib::Object::Introspection 0.029
 ========================================================
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Glib-Object-Introspection-0.029/gperl-i11n-vfunc-object.c 
new/Glib-Object-Introspection-0.030/gperl-i11n-vfunc-object.c
--- old/Glib-Object-Introspection-0.029/gperl-i11n-vfunc-object.c       
2015-03-26 00:44:57.000000000 +0100
+++ new/Glib-Object-Introspection-0.030/gperl-i11n-vfunc-object.c       
2015-08-10 02:02:13.000000000 +0200
@@ -47,7 +47,7 @@
                         * struct member. */
                        HV * stash = gv_stashpv (target_package, 0);
                        GV * slot = gv_fetchmethod (stash, perl_method_name);
-                       if (!slot) {
+                       if (!slot || !GvCV (slot)) {
                                dwarn ("skipping vfunc %s.%s because it has no 
implementation\n",
                                      g_base_info_get_name (info), vfunc_name);
                                g_base_info_unref (vfunc_info);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Glib-Object-Introspection-0.029/lib/Glib/Object/Introspection.pm 
new/Glib-Object-Introspection-0.030/lib/Glib/Object/Introspection.pm
--- old/Glib-Object-Introspection-0.029/lib/Glib/Object/Introspection.pm        
2015-03-26 00:59:23.000000000 +0100
+++ new/Glib-Object-Introspection-0.030/lib/Glib/Object/Introspection.pm        
2015-08-10 02:12:32.000000000 +0200
@@ -19,7 +19,7 @@
 use warnings;
 use Glib;
 
-our $VERSION = '0.029';
+our $VERSION = '0.030';
 
 use Carp;
 $Carp::Internal{(__PACKAGE__)}++;
@@ -28,6 +28,7 @@
 XSLoader::load(__PACKAGE__, $VERSION);
 
 my @OBJECT_PACKAGES_WITH_VFUNCS;
+my %SEEN;
 our %_FORBIDDEN_SUB_NAMES = map { $_ => 1 } qw/AUTOLOAD CLONE DESTROY BEGIN
                                                UNITCHECK CHECK INIT END/;
 our %_BASENAME_TO_PACKAGE;
@@ -68,6 +69,14 @@
   my $search_path = $params{search_path} || undef;
   my $name_corrections = $params{name_corrections} || {};
 
+  # Avoid repeating setting up a library as this can lead to issues, e.g., due
+  # to types being registered more than once with perl-Glib.  In particular,
+  # the lazy-loading mechanism of Glib::Object is not prepared to handle
+  # repeated type registrations.
+  if ($SEEN{$basename}{$version}{$package}++) {
+    return;
+  }
+
   $_BASENAME_TO_PACKAGE{$basename} = $package;
 
   my %shift_package_name_for = exists $params{class_static_methods}
@@ -177,9 +186,11 @@
   foreach my $packaged_signal (@use_generic_signal_marshaller_for) {
     __PACKAGE__->_use_generic_signal_marshaller_for (@$packaged_signal);
   }
+
+  return;
 }
 
-sub INIT {
+INIT {
   no strict qw(refs);
 
   # Hook up the implemented vfuncs first.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Glib-Object-Introspection-0.029/t/arrays.t 
new/Glib-Object-Introspection-0.030/t/arrays.t
--- old/Glib-Object-Introspection-0.029/t/arrays.t      2015-03-26 
00:44:57.000000000 +0100
+++ new/Glib-Object-Introspection-0.030/t/arrays.t      2015-08-10 
02:02:13.000000000 +0200
@@ -60,7 +60,11 @@
 my $byte_array_ref = [0, ord '1', 0xFF, ord '3'];
 
 # Init-like.
-is_deeply ([GI::init_function ([qw/a b c/])], [Glib::TRUE, [qw/a b/]]);
+SKIP: {
+  skip 'init-like', 1
+    unless check_gi_version (1, 32, 0);
+  is_deeply ([GI::init_function ([qw/a b c/])], [Glib::TRUE, [qw/a b/]]);
+}
 
 # Fixed size.
 is_deeply (GI::array_fixed_int_return (), $int_array_ref);
@@ -72,70 +76,90 @@
 is_deeply (GI::array_fixed_inout ($int_array_ref), [reverse @$int_array_ref]);
 
 # Variable size.
-is_deeply (GI::array_return (), $int_array_ref);
-is_deeply ([GI::array_return_etc (23, 42)], [[23, 0, 1, 42], 23+42]);
-GI::array_in ($int_array_ref);
-GI::array_in_len_before ($int_array_ref);
-GI::array_in_len_zero_terminated ($int_array_ref);
-GI::array_string_in ([qw/foo bar/]);
-GI::array_uint8_in ([map { ord } qw/a b c d/]);
-GI::array_struct_in ($boxed_array_ref);
-GI::array_struct_value_in ($boxed_array_ref);
-GI::array_struct_take_in ($boxed_array_ref);
-is ($boxed_array_ref->[2]->long_, 3);
-GI::array_simple_struct_in ([map { { long_ => $_ } } (1, 2, 3)]);
-GI::multi_array_key_value_in ([qw/one two three/],
-                              [map { 
Glib::Object::Introspection::GValueWrapper->new ('Glib::Int', $_) } (1, 2, 3)]);
-GI::array_enum_in ([qw/value1 value2 value3/]);
-GI::array_in_guint64_len ($int_array_ref);
-GI::array_in_guint8_len ($int_array_ref);
-is_deeply (GI::array_out (), $int_array_ref);
-is_deeply ([GI::array_out_etc (23, 42)], [[23, 0, 1, 42], 23+42]);
-is_deeply (GI::array_inout ($int_array_ref), [-2..2]);
-is_deeply ([GI::array_inout_etc (23, $int_array_ref, 42)], [[23, -1, 0, 1, 
42], 23+42]);
-GI::array_in_nonzero_nonlen (23, [map { ord } qw/a b c d/]);
+SKIP: {
+  skip 'variable size', 7
+    unless check_gi_version (1, 36, 0);
+  is_deeply (GI::array_return (), $int_array_ref);
+  is_deeply ([GI::array_return_etc (23, 42)], [[23, 0, 1, 42], 23+42]);
+  GI::array_in ($int_array_ref);
+  GI::array_in_len_before ($int_array_ref);
+  GI::array_in_len_zero_terminated ($int_array_ref);
+  GI::array_string_in ([qw/foo bar/]);
+  GI::array_uint8_in ([map { ord } qw/a b c d/]);
+  GI::array_struct_in ($boxed_array_ref);
+  GI::array_struct_value_in ($boxed_array_ref);
+  GI::array_struct_take_in ($boxed_array_ref);
+  is ($boxed_array_ref->[2]->long_, 3);
+  GI::array_simple_struct_in ([map { { long_ => $_ } } (1, 2, 3)]);
+  GI::multi_array_key_value_in ([qw/one two three/],
+                                [map { 
Glib::Object::Introspection::GValueWrapper->new ('Glib::Int', $_) } (1, 2, 3)]);
+  GI::array_enum_in ([qw/value1 value2 value3/]);
+  GI::array_in_guint64_len ($int_array_ref);
+  GI::array_in_guint8_len ($int_array_ref);
+  is_deeply (GI::array_out (), $int_array_ref);
+  is_deeply ([GI::array_out_etc (23, 42)], [[23, 0, 1, 42], 23+42]);
+  is_deeply (GI::array_inout ($int_array_ref), [-2..2]);
+  is_deeply ([GI::array_inout_etc (23, $int_array_ref, 42)], [[23, -1, 0, 1, 
42], 23+42]);
+  GI::array_in_nonzero_nonlen (23, [map { ord } qw/a b c d/]);
+}
 
 # Zero-terminated.
-is_deeply (GI::array_zero_terminated_return (), $string_array_ref);
-is (GI::array_zero_terminated_return_null (), undef);
-is_deeply ([map { $_->long_ } @{GI::array_zero_terminated_return_struct ()}],
-           [42, 43, 44]);
-GI::array_zero_terminated_in ($string_array_ref);
-is_deeply (GI::array_zero_terminated_out (), $string_array_ref);
-is_deeply (GI::array_zero_terminated_inout ($string_array_ref), [qw/-1 0 1 
2/]);
-# The variant stuff is tested in variants.t.
+SKIP: {
+  skip 'zero-terminated', 5
+    unless check_gi_version (1, 32, 0);
+  is_deeply (GI::array_zero_terminated_return (), $string_array_ref);
+  is (GI::array_zero_terminated_return_null (), undef);
+  is_deeply ([map { $_->long_ } @{GI::array_zero_terminated_return_struct ()}],
+             [42, 43, 44]);
+  GI::array_zero_terminated_in ($string_array_ref);
+  is_deeply (GI::array_zero_terminated_out (), $string_array_ref);
+  is_deeply (GI::array_zero_terminated_inout ($string_array_ref), [qw/-1 0 1 
2/]);
+  # The variant stuff is tested in variants.t.
+}
 
 # GArray.
-is_deeply (GI::garray_int_none_return (), $int_array_ref);
-is_deeply (GI::garray_uint64_none_return (), [0, "18446744073709551615"]);
-is_deeply (GI::garray_utf8_none_return (), $string_array_ref);
-is_deeply (GI::garray_utf8_container_return (), $string_array_ref);
-is_deeply (GI::garray_utf8_full_return (), $string_array_ref);
-GI::garray_int_none_in ($int_array_ref);
-GI::garray_uint64_none_in ([0, "18446744073709551615"]);
-GI::garray_utf8_none_in ($string_array_ref);
-is_deeply (GI::garray_utf8_none_out (), $string_array_ref);
-is_deeply (GI::garray_utf8_container_out (), $string_array_ref);
-is_deeply (GI::garray_utf8_full_out (), $string_array_ref);
-# FIXME: is_deeply (GI::garray_utf8_full_out_caller_allocated (), 
$string_array_ref);
-is_deeply (GI::garray_utf8_none_inout ($string_array_ref), [-2..1]);
-is_deeply (GI::garray_utf8_container_inout ($string_array_ref), [-2..1]);
-# FIXME: This leaks.  See <https://bugzilla.gnome.org/show_bug.cgi?id=745336>.
-is_deeply (GI::garray_utf8_full_inout ($string_array_ref), [-2..1]);
+SKIP: {
+  skip 'GArray', 11
+    unless check_gi_version (1, 34, 0);
+  is_deeply (GI::garray_int_none_return (), $int_array_ref);
+  is_deeply (GI::garray_uint64_none_return (), [0, "18446744073709551615"]);
+  is_deeply (GI::garray_utf8_none_return (), $string_array_ref);
+  is_deeply (GI::garray_utf8_container_return (), $string_array_ref);
+  is_deeply (GI::garray_utf8_full_return (), $string_array_ref);
+  GI::garray_int_none_in ($int_array_ref);
+  GI::garray_uint64_none_in ([0, "18446744073709551615"]);
+  GI::garray_utf8_none_in ($string_array_ref);
+  is_deeply (GI::garray_utf8_none_out (), $string_array_ref);
+  is_deeply (GI::garray_utf8_container_out (), $string_array_ref);
+  is_deeply (GI::garray_utf8_full_out (), $string_array_ref);
+  # FIXME: is_deeply (GI::garray_utf8_full_out_caller_allocated (), 
$string_array_ref);
+  is_deeply (GI::garray_utf8_none_inout ($string_array_ref), [-2..1]);
+  is_deeply (GI::garray_utf8_container_inout ($string_array_ref), [-2..1]);
+  # FIXME: This leaks.  See 
<https://bugzilla.gnome.org/show_bug.cgi?id=745336>.
+  is_deeply (GI::garray_utf8_full_inout ($string_array_ref), [-2..1]);
+}
 
 # GPtrArray.
-is_deeply (GI::gptrarray_utf8_none_return (), $string_array_ref);
-is_deeply (GI::gptrarray_utf8_container_return (), $string_array_ref);
-is_deeply (GI::gptrarray_utf8_full_return (), $string_array_ref);
-GI::gptrarray_utf8_none_in ($string_array_ref);
-is_deeply (GI::gptrarray_utf8_none_out (), $string_array_ref);
-is_deeply (GI::gptrarray_utf8_container_out (), $string_array_ref);
-is_deeply (GI::gptrarray_utf8_full_out (), $string_array_ref);
-is_deeply (GI::gptrarray_utf8_none_inout ($string_array_ref), [-2..1]);
-is_deeply (GI::gptrarray_utf8_container_inout ($string_array_ref), [-2..1]);
-# FIXME: This leaks.  See <https://bugzilla.gnome.org/show_bug.cgi?id=745336>.
-is_deeply (GI::gptrarray_utf8_full_inout ($string_array_ref), [-2..1]);
+SKIP: {
+  skip 'GPtrArray', 9
+    unless check_gi_version (0, 12, 0);
+  is_deeply (GI::gptrarray_utf8_none_return (), $string_array_ref);
+  is_deeply (GI::gptrarray_utf8_container_return (), $string_array_ref);
+  is_deeply (GI::gptrarray_utf8_full_return (), $string_array_ref);
+  GI::gptrarray_utf8_none_in ($string_array_ref);
+  is_deeply (GI::gptrarray_utf8_none_out (), $string_array_ref);
+  is_deeply (GI::gptrarray_utf8_container_out (), $string_array_ref);
+  is_deeply (GI::gptrarray_utf8_full_out (), $string_array_ref);
+  is_deeply (GI::gptrarray_utf8_none_inout ($string_array_ref), [-2..1]);
+  is_deeply (GI::gptrarray_utf8_container_inout ($string_array_ref), [-2..1]);
+  # FIXME: This leaks.  See 
<https://bugzilla.gnome.org/show_bug.cgi?id=745336>.
+  is_deeply (GI::gptrarray_utf8_full_inout ($string_array_ref), [-2..1]);
+}
 
 # GByteArray.
-is_deeply (GI::bytearray_full_return (), $byte_array_ref);
-GI::bytearray_none_in ($byte_array_ref);
+SKIP: {
+  skip 'GByteArray', 1
+    unless check_gi_version (0, 12, 0);
+  is_deeply (GI::bytearray_full_return (), $byte_array_ref);
+  GI::bytearray_none_in ($byte_array_ref);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Glib-Object-Introspection-0.029/t/variants.t 
new/Glib-Object-Introspection-0.030/t/variants.t
--- old/Glib-Object-Introspection-0.029/t/variants.t    1970-01-01 
01:00:00.000000000 +0100
+++ new/Glib-Object-Introspection-0.030/t/variants.t    2015-08-10 
02:02:13.000000000 +0200
@@ -0,0 +1,26 @@
+#!/usr/bin/env perl
+
+BEGIN { require './t/inc/setup.pl' };
+
+use strict;
+use warnings;
+use utf8;
+
+if (check_gi_version (1, 32, 0)) {
+  plan tests => 6;
+} else {
+  plan skip_all => 'Need gobject-introspection 1.32.0';
+}
+
+my $v1 = Glib::Variant->new ("i", 27);
+my $v2 = Glib::Variant->new ("s", "Hello");
+
+check_variants (GI::array_gvariant_none_in ([$v1, $v2]));
+check_variants (GI::array_gvariant_container_in ([$v1, $v2]));
+check_variants (GI::array_gvariant_full_in ([$v1, $v2]));
+
+sub check_variants {
+  my ($v1, $v2) = @{$_[0]};
+  is ($v1->get ("i"), 27);
+  is ($v2->get ("s"), "Hello");
+}


Reply via email to