gir_ffi 0.17.0 → 0.18.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Changelog.md +13 -0
- data/lib/ffi-glib/bytes.rb +2 -2
- data/lib/ffi-gobject/object.rb +4 -4
- data/lib/ffi-gobject.rb +2 -2
- data/lib/ffi-gobject_introspection/gobject_type_init.rb +1 -1
- data/lib/gir_ffi/builders/argument_builder.rb +2 -2
- data/lib/gir_ffi/builders/argument_builder_collection.rb +1 -0
- data/lib/gir_ffi/builders/method_template.rb +1 -1
- data/lib/gir_ffi/class_base.rb +4 -4
- data/lib/gir_ffi/enum_like_base.rb +2 -2
- data/lib/gir_ffi/info_ext/i_signal_info.rb +2 -2
- data/lib/gir_ffi/interface_base.rb +2 -2
- data/lib/gir_ffi/unintrospectable_signal_info.rb +2 -2
- data/lib/gir_ffi/version.rb +1 -1
- data/lib/gir_ffi-base/gobject/lib.rb +1 -1
- metadata +28 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7a0a971b16d81d55e25b0944aaaf1ae8c28e8546a416b699902e7f254e5ae79d
|
4
|
+
data.tar.gz: 5ef09a4c0f0e2f3fbf9afc7c0de7878fa9e44e65a4808a5f0489119139dcc8b7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 35c6e4c0d8f99d790685fc7c4f3a7ad1dcd602696b204c52dc837cc361c7843e0b57887f06e3aca96c55d75e651dac26add7c677d01ddbe3ae275e91615c84fd
|
7
|
+
data.tar.gz: a516176df5475cdc56995c20c84f50bc906e9c3c299c577d3354d9059db07b1deb412a1902c9ca1bc07f43849524a5b93c3659fc6489e172b5b8f24f03aba4c2
|
data/Changelog.md
CHANGED
@@ -1,5 +1,18 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 0.18.0 / 2025-02-07
|
4
|
+
|
5
|
+
* Update contribution guidelines ([#360] by [mvz])
|
6
|
+
* Support Ruby 3.1 through 3.4, dripping support for Ruby 3.0 ([#366] by [mvz])
|
7
|
+
* Load gobject-2.0 library in a way that does not require the dev package
|
8
|
+
([#367] by [mvz])
|
9
|
+
* Update tests for compatibility with GObjectIntrospection 1.81.2 ([#378] by [mvz])
|
10
|
+
|
11
|
+
[#360]: https://github.com/mvz/gir_ffi/pull/360
|
12
|
+
[#366]: https://github.com/mvz/gir_ffi/pull/366
|
13
|
+
[#367]: https://github.com/mvz/gir_ffi/pull/367
|
14
|
+
[#378]: https://github.com/mvz/gir_ffi/pull/378
|
15
|
+
|
3
16
|
## 0.17.0 / 2023-12-31
|
4
17
|
|
5
18
|
* Support Ruby 3.0 and up, dropping support for Ruby 2.7 ([#356] by [mvz])
|
data/lib/ffi-glib/bytes.rb
CHANGED
data/lib/ffi-gobject/object.rb
CHANGED
@@ -71,12 +71,12 @@ module GObject
|
|
71
71
|
end
|
72
72
|
end
|
73
73
|
|
74
|
-
def signal_connect(event, data = nil, &
|
75
|
-
GObject.signal_connect(self, event, data, &
|
74
|
+
def signal_connect(event, data = nil, &)
|
75
|
+
GObject.signal_connect(self, event, data, &)
|
76
76
|
end
|
77
77
|
|
78
|
-
def signal_connect_after(event, data = nil, &
|
79
|
-
GObject.signal_connect_after(self, event, data, &
|
78
|
+
def signal_connect_after(event, data = nil, &)
|
79
|
+
GObject.signal_connect_after(self, event, data, &)
|
80
80
|
end
|
81
81
|
|
82
82
|
setup_instance_method! "get_property"
|
data/lib/ffi-gobject.rb
CHANGED
@@ -60,8 +60,8 @@ module GObject
|
|
60
60
|
signal_connect_closure object, detailed_signal, closure, after
|
61
61
|
end
|
62
62
|
|
63
|
-
def self.signal_connect_after(object, detailed_signal, data = nil, &
|
64
|
-
signal_connect
|
63
|
+
def self.signal_connect_after(object, detailed_signal, data = nil, &)
|
64
|
+
signal_connect(object, detailed_signal, data, true, &)
|
65
65
|
end
|
66
66
|
|
67
67
|
load_class :Callback
|
@@ -164,7 +164,7 @@ module GirFFI
|
|
164
164
|
end
|
165
165
|
|
166
166
|
def has_output_value?
|
167
|
-
|
167
|
+
[:inout, :out].include?(direction) && !skipped_out?
|
168
168
|
end
|
169
169
|
|
170
170
|
def has_input_value?
|
@@ -172,7 +172,7 @@ module GirFFI
|
|
172
172
|
end
|
173
173
|
|
174
174
|
def has_ingoing_component?
|
175
|
-
|
175
|
+
[:inout, :in].include?(direction)
|
176
176
|
end
|
177
177
|
|
178
178
|
def array_length_assignment
|
@@ -76,6 +76,7 @@ module GirFFI
|
|
76
76
|
@base_argument_builders.each do |bldr|
|
77
77
|
if (idx = bldr.closure_idx) >= 0
|
78
78
|
target_bldr = @base_argument_builders[idx]
|
79
|
+
# NOTE: Only needed for GObjectIntrospection versions 1.67.1 through 1.80.1
|
79
80
|
unless target_bldr.specialized_type_tag == :void
|
80
81
|
target_bldr, bldr = bldr, target_bldr
|
81
82
|
end
|
@@ -18,7 +18,7 @@ module GirFFI
|
|
18
18
|
end
|
19
19
|
|
20
20
|
def method_definition
|
21
|
-
code =
|
21
|
+
code = "def #{qualified_method_name}"
|
22
22
|
code << "(#{method_arguments.join(", ")})" if method_arguments.any?
|
23
23
|
method_lines.each { |line| code << "\n #{line}" }
|
24
24
|
code << "\nend\n"
|
data/lib/gir_ffi/class_base.rb
CHANGED
@@ -21,24 +21,24 @@ module GirFFI
|
|
21
21
|
|
22
22
|
def_delegators :@struct, :to_ptr
|
23
23
|
|
24
|
-
def setup_and_call(method, arguments, &
|
24
|
+
def setup_and_call(method, arguments, &)
|
25
25
|
method_name = self.class.try_in_ancestors(:setup_instance_method, method.to_s)
|
26
26
|
|
27
27
|
raise NoMethodError, "undefined method `#{method}' for #{self}" unless method_name
|
28
28
|
|
29
|
-
send
|
29
|
+
send(method_name, *arguments, &)
|
30
30
|
end
|
31
31
|
|
32
32
|
def ==(other)
|
33
33
|
other.class == self.class && to_ptr == other.to_ptr
|
34
34
|
end
|
35
35
|
|
36
|
-
def self.setup_and_call(method, arguments, &
|
36
|
+
def self.setup_and_call(method, arguments, &)
|
37
37
|
method_name = try_in_ancestors(:setup_method, method.to_s)
|
38
38
|
|
39
39
|
raise NoMethodError, "undefined method `#{method}' for #{self}" unless method_name
|
40
40
|
|
41
|
-
send
|
41
|
+
send(method_name, *arguments, &)
|
42
42
|
end
|
43
43
|
|
44
44
|
def self.try_in_ancestors(method, *arguments)
|
@@ -30,12 +30,12 @@ module GirFFI
|
|
30
30
|
from_native pointer.get_int32(offset), nil
|
31
31
|
end
|
32
32
|
|
33
|
-
def setup_and_call(method, arguments, &
|
33
|
+
def setup_and_call(method, arguments, &)
|
34
34
|
result = setup_method method.to_s
|
35
35
|
|
36
36
|
raise "Unable to set up method #{method} in #{self}" unless result
|
37
37
|
|
38
|
-
send
|
38
|
+
send(method, *arguments, &)
|
39
39
|
end
|
40
40
|
|
41
41
|
def to_ffi_type
|
@@ -11,9 +11,9 @@ module GirFFI
|
|
11
11
|
#
|
12
12
|
# @return [GObject::RubyClosure] The signal handler closure, ready to be
|
13
13
|
# passed as a GClosure to C.
|
14
|
-
def wrap_in_closure(&
|
14
|
+
def wrap_in_closure(&)
|
15
15
|
bldr = Builders::SignalClosureBuilder.new(self)
|
16
|
-
bldr.build_class.new(&
|
16
|
+
bldr.build_class.new(&)
|
17
17
|
end
|
18
18
|
|
19
19
|
def arguments_to_gvalues(instance, arguments)
|
@@ -11,11 +11,11 @@ module GirFFI
|
|
11
11
|
include MethodSetup
|
12
12
|
include InstanceMethodSetup
|
13
13
|
|
14
|
-
def setup_and_call(method, arguments, &
|
14
|
+
def setup_and_call(method, arguments, &)
|
15
15
|
method_name = setup_method method.to_s
|
16
16
|
raise NoMethodError, "undefined method `#{method}' for #{self}" unless method_name
|
17
17
|
|
18
|
-
send
|
18
|
+
send(method_name, *arguments, &)
|
19
19
|
end
|
20
20
|
|
21
21
|
# TODO: Unify with implementation in ObjectBase
|
data/lib/gir_ffi/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gir_ffi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.18.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matijs van Zuijlen
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 2025-02-07 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
13
12
|
- !ruby/object:Gem::Dependency
|
14
13
|
name: ffi
|
@@ -58,6 +57,26 @@ dependencies:
|
|
58
57
|
- - "~>"
|
59
58
|
- !ruby/object:Gem::Version
|
60
59
|
version: '2.0'
|
60
|
+
- !ruby/object:Gem::Dependency
|
61
|
+
name: cucumber
|
62
|
+
requirement: !ruby/object:Gem::Requirement
|
63
|
+
requirements:
|
64
|
+
- - "~>"
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: '9.2'
|
67
|
+
- - ">="
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: 9.2.1
|
70
|
+
type: :development
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - "~>"
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '9.2'
|
77
|
+
- - ">="
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: 9.2.1
|
61
80
|
- !ruby/object:Gem::Dependency
|
62
81
|
name: minitest
|
63
82
|
requirement: !ruby/object:Gem::Requirement
|
@@ -154,28 +173,28 @@ dependencies:
|
|
154
173
|
requirements:
|
155
174
|
- - "~>"
|
156
175
|
- !ruby/object:Gem::Version
|
157
|
-
version: '1.
|
176
|
+
version: '1.63'
|
158
177
|
type: :development
|
159
178
|
prerelease: false
|
160
179
|
version_requirements: !ruby/object:Gem::Requirement
|
161
180
|
requirements:
|
162
181
|
- - "~>"
|
163
182
|
- !ruby/object:Gem::Version
|
164
|
-
version: '1.
|
183
|
+
version: '1.63'
|
165
184
|
- !ruby/object:Gem::Dependency
|
166
185
|
name: rubocop-minitest
|
167
186
|
requirement: !ruby/object:Gem::Requirement
|
168
187
|
requirements:
|
169
188
|
- - "~>"
|
170
189
|
- !ruby/object:Gem::Version
|
171
|
-
version: 0.
|
190
|
+
version: 0.36.0
|
172
191
|
type: :development
|
173
192
|
prerelease: false
|
174
193
|
version_requirements: !ruby/object:Gem::Requirement
|
175
194
|
requirements:
|
176
195
|
- - "~>"
|
177
196
|
- !ruby/object:Gem::Version
|
178
|
-
version: 0.
|
197
|
+
version: 0.36.0
|
179
198
|
- !ruby/object:Gem::Dependency
|
180
199
|
name: rubocop-packaging
|
181
200
|
requirement: !ruby/object:Gem::Requirement
|
@@ -423,7 +442,6 @@ metadata:
|
|
423
442
|
source_code_uri: https://github.com/mvz/gir_ffi
|
424
443
|
changelog_uri: https://github.com/mvz/gir_ffi/blob/master/Changelog.md
|
425
444
|
rubygems_mfa_required: 'true'
|
426
|
-
post_install_message:
|
427
445
|
rdoc_options:
|
428
446
|
- "--main"
|
429
447
|
- README.md
|
@@ -433,15 +451,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
433
451
|
requirements:
|
434
452
|
- - ">="
|
435
453
|
- !ruby/object:Gem::Version
|
436
|
-
version: 3.
|
454
|
+
version: 3.1.0
|
437
455
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
438
456
|
requirements:
|
439
457
|
- - ">="
|
440
458
|
- !ruby/object:Gem::Version
|
441
459
|
version: '0'
|
442
460
|
requirements: []
|
443
|
-
rubygems_version: 3.
|
444
|
-
signing_key:
|
461
|
+
rubygems_version: 3.6.2
|
445
462
|
specification_version: 4
|
446
463
|
summary: FFI-based GObject binding using the GObject Introspection Repository
|
447
464
|
test_files: []
|