gobject-introspection 4.2.0 → 4.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4df79c80129bf2991fdde017eac4dd3ec819b3e1698a9c28803a9370277282e1
4
- data.tar.gz: 297227bb6f7d37441f5b49212641313525e6c047a21b2c7cb1b0266752e72838
3
+ metadata.gz: 5c61aee26486f30c6b35b119b1c35201c2685e48c7dd9a98dd5aebd72909be13
4
+ data.tar.gz: e980ad964b3a3318743e893e0c7a22ba94070f4c4735b023fe7dec75e1dca24e
5
5
  SHA512:
6
- metadata.gz: ddbca7058d52568dd10cb099ae019dce86d66bc8ef298e02dff85a19fe922f773574e5b626dba30d8fe37169d47f8047f31258de6450e1403abf0334c8644761
7
- data.tar.gz: 381757025f4d4923e8f8e12da0993083b7f29f38187b972f99d3e03f2df24df1f5f2cf6ccfe5ca9d802d3acbd68a7e3df6213f2262772edb113787c821627e3d
6
+ metadata.gz: 4e52bda34bc55b6bdd093038cd315e4c7cce19daf165a0e2e72f0848d867786e4120002b456f58c53767c1d82ce6338f82a87ca4516a7a168c85e2bc46c617cc
7
+ data.tar.gz: 961ff4d28666a403b7c6465e7e8b66f02bcb2e04b38ceea9343d1a16883afc7a78ed77c50cf77ff99a0f7092228ac411ea54338e09f3b00c4a6d89214de41c97
@@ -1047,11 +1047,15 @@ rb_gi_arguments_convert_arg_array_body_c_sized(ArrayLikeToRubyData *data,
1047
1047
  return rb_arg;
1048
1048
  }
1049
1049
  case GI_TYPE_TAG_GTYPE:
1050
- rb_raise(rb_eNotImpError,
1051
- "TODO: GIArgument(array)[c][%s][%s] -> Ruby",
1052
- array_c_type,
1053
- g_type_tag_to_string(data->element_type_tag));
1054
- return Qnil;
1050
+ {
1051
+ const GType *types = (const GType *)elements;
1052
+ VALUE rb_arg = rb_ary_new_capa(length);
1053
+ gint64 i;
1054
+ for (i = 0; i < length; i++) {
1055
+ rb_ary_push(rb_arg, rbgobj_gtype_new(types[i]));
1056
+ }
1057
+ return rb_arg;
1058
+ }
1055
1059
  case GI_TYPE_TAG_UTF8:
1056
1060
  {
1057
1061
  const gchar **strings = (const gchar **)elements;
@@ -167,10 +167,10 @@ rb_gi_struct_info_to_ruby(GIStructInfo *info,
167
167
  gpointer
168
168
  rb_gi_struct_info_from_ruby(GIStructInfo *info, VALUE rb_object)
169
169
  {
170
- GIRegisteredTypeInfo *registerd_type_info = (GIRegisteredTypeInfo *)info;
170
+ GIRegisteredTypeInfo *registered_type_info = (GIRegisteredTypeInfo *)info;
171
171
  GType gtype;
172
172
 
173
- gtype = g_registered_type_info_get_g_type(registerd_type_info);
173
+ gtype = g_registered_type_info_get_g_type(registered_type_info);
174
174
  return rb_gi_struct_get_raw(rb_object, gtype);
175
175
  }
176
176
 
@@ -103,6 +103,12 @@ module GObjectIntrospection
103
103
  end
104
104
 
105
105
  def define_singleton_method(info, klass, name)
106
+ case name
107
+ when "hash"
108
+ # Ignore methods that require 1+ arguments and use well-known
109
+ # name. It may break something.
110
+ return unless info.n_required_in_args.zero?
111
+ end
106
112
  prepare_function_info_lock_gvl(info, klass)
107
113
  invoker = Invoker.new(info, name, "#{klass}.#{name}")
108
114
  singleton_class = klass.singleton_class
@@ -241,6 +247,8 @@ module GObjectIntrospection
241
247
 
242
248
  def load_object_info(info)
243
249
  return if info.gtype == GLib::Type::NONE
250
+ # e.g.: GstBitmask
251
+ return if info.fundamental? and !info.gtype.instantiatable?
244
252
  klass = self.class.define_class(info.gtype,
245
253
  rubyish_class_name(info),
246
254
  @base_module)
@@ -534,7 +542,7 @@ module GObjectIntrospection
534
542
  end
535
543
 
536
544
  def prepare_function_info_lock_gvl(function_info, target_module)
537
- # For backward compatiblity
545
+ # For backward compatibility
538
546
  if respond_to?(:should_unlock_gvl?)
539
547
  function_info.lock_gvl_default =
540
548
  !should_unlock_gvl?(function_info, target_module)
data/test/test-loader.rb CHANGED
@@ -60,16 +60,16 @@ class TestLoaderInfo < Test::Unit::TestCase
60
60
 
61
61
  include Gio::Converter
62
62
 
63
- attr_reader :resetted
63
+ attr_reader :was_reset
64
64
 
65
65
  def virtual_do_reset
66
- @resetted = true
66
+ @was_reset = true
67
67
  end
68
68
  end
69
69
  resettable_converter = resettable_converter_class.new
70
70
  resettable_converter.reset
71
71
  assert do
72
- resettable_converter.resetted
72
+ resettable_converter.was_reset
73
73
  end
74
74
  end
75
75
 
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2012-2015 Ruby-GNOME2 Project Team
1
+ # Copyright (C) 2012-2024 Ruby-GNOME Project Team
2
2
  #
3
3
  # This library is free software; you can redistribute it and/or
4
4
  # modify it under the terms of the GNU Lesser General Public
@@ -47,14 +47,17 @@ class TestRepository < Test::Unit::TestCase
47
47
 
48
48
  def test_loaded_namespaces
49
49
  assert_equal(["GLib", "GObject", "Gio"].sort,
50
- @repository.loaded_namespaces.sort)
50
+ # Gio 2.79.0 or later depend on GModule too
51
+ @repository.loaded_namespaces.sort - ["GModule"])
51
52
  end
52
53
 
53
54
  def test_enumerable
54
55
  namespaces = @repository.collect do |info|
55
56
  info.namespace
56
57
  end
57
- assert_equal(["GLib", "GObject", "Gio"].sort, namespaces.uniq.sort)
58
+ assert_equal(["GLib", "GObject", "Gio"].sort,
59
+ # Gio 2.79.0 or later depend on GModule too
60
+ namespaces.uniq.sort - ["GModule"])
58
61
  end
59
62
 
60
63
  def test_find_by_gtype
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gobject-introspection
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.2.0
4
+ version: 4.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Ruby-GNOME Project Team
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2023-08-19 00:00:00.000000000 Z
10
+ date: 2024-04-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: glib2
@@ -16,14 +15,14 @@ dependencies:
16
15
  requirements:
17
16
  - - '='
18
17
  - !ruby/object:Gem::Version
19
- version: 4.2.0
18
+ version: 4.2.2
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - '='
25
24
  - !ruby/object:Gem::Version
26
- version: 4.2.0
25
+ version: 4.2.2
27
26
  description: Ruby/GObjectIntrospection provides bindings of GObject Introspection
28
27
  and a loader module that can generate dynamically Ruby bindings of any GObject C
29
28
  libraries
@@ -135,7 +134,6 @@ licenses:
135
134
  - LGPL-2.1+
136
135
  metadata:
137
136
  msys2_mingw_dependencies: gobject-introspection
138
- post_install_message:
139
137
  rdoc_options: []
140
138
  require_paths:
141
139
  - lib
@@ -150,8 +148,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
150
148
  - !ruby/object:Gem::Version
151
149
  version: '0'
152
150
  requirements: []
153
- rubygems_version: 3.5.0.dev
154
- signing_key:
151
+ rubygems_version: 3.6.0.dev
155
152
  specification_version: 4
156
153
  summary: Ruby/GObjectIntrospection is a Ruby binding of GObject Introspection.
157
154
  test_files: []