Age | Commit message (Collapse) | Author |
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4909
|
|
https://github.com/ruby/fiddle/commit/e08c4c635e
Co-authored-by: Sutou Kouhei <kou@clear-code.com>
Notes:
Merged: https://github.com/ruby/ruby/pull/4810
|
|
(https://github.com/ruby/fiddle/pull/90)
I need to get the offset of members inside sub structures. This patch
adds sub-structure offset support for structs.
https://github.com/ruby/fiddle/commit/cf78eddbb6
|
|
(https://github.com/ruby/fiddle/pull/88)
https://github.com/ruby/fiddle/commit/4ee1c6fc4b
|
|
(https://github.com/ruby/fiddle/pull/86)
https://github.com/ruby/fiddle/commit/c5abcc3a7e
|
|
FIddle::Handle#to_ptr (https://github.com/ruby/fiddle/pull/87)
https://github.com/ruby/fiddle/commit/170111a0cb
|
|
|
|
https://github.com/ruby/fiddle/commit/93f9564446
|
|
(https://github.com/ruby/fiddle/pull/85)
Drop supports for old versions, keeping 2.5 as CI supports it for
now.
https://github.com/ruby/fiddle/commit/90634e7c55
|
|
Fix https://github.com/ruby/fiddle/pull/84
It may detect ruby/memory_view.h for system Ruby that is installed in
/usr.
We can use RUBY_API_VERSION_MAJOR to detect memory view availability
because memory view is available since Ruby 3.0.
Reported by Jun Aruga. Thanks!!!
https://github.com/ruby/fiddle/commit/3292929830
|
|
(https://github.com/ruby/fiddle/pull/83)
* Add "offsetof" to Struct classes
I need to get the offset of a member inside a struct without allocating
the struct. This patch adds an "offsetof" class method to structs that
are generated.
The usage is like this:
```ruby
MyStruct = struct [
"int64_t i",
"char c",
]
MyStruct.offsetof("i") # => 0
MyStruct.offsetof("c") # => 8
```
* Update test/fiddle/test_c_struct_builder.rb
Co-authored-by: Sutou Kouhei <kou@cozmixng.org>
https://github.com/ruby/fiddle/commit/4e3b60c5b6
Co-authored-by: Sutou Kouhei <kou@cozmixng.org>
|
|
https://github.com/ruby/fiddle/commit/049138b4b8
|
|
https://github.com/ruby/fiddle/commit/0ed39345fe
|
|
https://github.com/ruby/fiddle/commit/bddca7c895
|
|
(https://github.com/ruby/fiddle/pull/80)
fix https://github.com/ruby/fiddle/pull/79
Users can release memory views explicitly before process exit.
Reported by xtkoba. Thanks!!!
https://github.com/ruby/fiddle/commit/1de64b7e76
|
|
(https://github.com/ruby/fiddle/pull/78)
Fix https://github.com/ruby/fiddle/pull/74
Reported by dsisnero. Thanks!!!
|
|
Ruby: [Bug #11579]
Patch by cremno phobia. Thanks!!!
https://github.com/ruby/fiddle/commit/760a8f9b14
|
|
https://github.com/ruby/fiddle/commit/3784cfeec4
|
|
https://github.com/ruby/fiddle/commit/e9955d74ae
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
GitHub: fix GH-72
Users can't use WSAGetLastError() with Ruby 3.0 or later because
rb_funcall() resets the last socket error internally.
Users can get the last socket error by Fiddle.win32_last_socket_error.
Reported by Kentaro Hayashi. Thanks!!!
https://github.com/ruby/fiddle/commit/76158db00a
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
GitHub: fix #68
Reported by kojix2. Thanks!!!
https://github.com/ruby/fiddle/commit/d7322c234a
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
https://github.com/ruby/fiddle/commit/e0498e60ea
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
https://github.com/ruby/fiddle/commit/35dec6c5a5
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
https://docs.microsoft.com/en-us/windows/win32/winprog/windows-data-types
https://github.com/ruby/fiddle/commit/805c1a595a
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
https://docs.microsoft.com/en-us/windows/win32/winprog/windows-data-types
https://github.com/ruby/fiddle/commit/28ee5b1608
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
https://github.com/ruby/fiddle/commit/0cbd370fd6
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
GitHub: fix GH-62
Reported by Cody Krieger. Thanks!!!
https://github.com/ruby/fiddle/commit/284b820f2d
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
https://github.com/ruby/fiddle/commit/dc2da6633e
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
https://github.com/ruby/fiddle/commit/831522e768
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
https://github.com/ruby/fiddle/commit/63e5f98412
Notes:
Merged: https://github.com/ruby/ruby/pull/4506
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4371
|
|
|
|
This lets us cast a Fiddle::Function to a block, allowing is to write
things like:
```ruby
f = Fiddle::Function.new(@libc['strcpy'], [TYPE_VOIDP, TYPE_VOIDP], TYPE_VOIDP)
define_method :strcpy, &f
```
|
|
|
|
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3970
|
|
I'm using `<code>` instead of `+` since `+` only works when it encloses
a single word.
|
|
I don't use tool/sync_default_gem.rb because the last sync was incomplete.
Co-authored-by: Hiroshi SHIBATA <hsbt@ruby-lang.org>
Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>
Co-authored-by: sinisterchipmunk <sinisterchipmunk@gmail.com>
Co-authored-by: Sutou Kouhei <kou@clear-code.com>
Notes:
Merged-By: mrkn <mrkn@ruby-lang.org>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3780
|
|
https://github.com/ruby/fiddle/commit/50e02f9445
Notes:
Merged: https://github.com/ruby/ruby/pull/3780
|
|
https://github.com/ruby/fiddle/commit/74b65cb858
Notes:
Merged: https://github.com/ruby/ruby/pull/3780
|
|
It's fixed in upstream.
https://github.com/MSP-Greg/ruby-loco/issues/4
https://github.com/ruby/fiddle/commit/2ae0ff4934
Notes:
Merged: https://github.com/ruby/ruby/pull/3780
|
|
https://github.com/ruby/fiddle/commit/bb227c206d
Notes:
Merged: https://github.com/ruby/ruby/pull/3780
|
|
https://github.com/ruby/fiddle/commit/fee175a8ff
Notes:
Merged: https://github.com/ruby/ruby/pull/3780
|
|
https://github.com/ruby/fiddle/commit/6d24fb5438
Notes:
Merged: https://github.com/ruby/ruby/pull/3780
|
|
GitHub: fix GH-15
Reported by Eneroth3. Thanks!!!
https://github.com/ruby/fiddle/commit/f3d70b81ec
Notes:
Merged: https://github.com/ruby/ruby/pull/3780
|
|
See comment for details.
https://github.com/ruby/fiddle/commit/0c76f03dc4
Notes:
Merged: https://github.com/ruby/ruby/pull/3780
|
|
* Add a "pinning" reference
A `Fiddle::Pinned` objects will prevent the objects they point to from
moving. This is useful in the case where you need to pass a reference
to a C extension that keeps the address in a global and needs the
address to be stable.
For example:
```ruby
class Foo
A = "hi" # this is an embedded string
some_c_function A # A might move!
end
```
If `A` moves, then the underlying string buffer may also move.
`Fiddle::Pinned` will prevent the object from moving:
```ruby
class Foo
A = "hi" # this is an embedded string
A_pinner = Fiddle::Pinned.new(A) # :nodoc:
some_c_function A # A can't move because of `Fiddle::Pinned`
end
```
This is a similar strategy to what Graal uses:
https://www.graalvm.org/sdk/javadoc/org/graalvm/nativeimage/PinnedObject.html#getObject--
* rename global to match exception name
* Introduce generic Fiddle::Error and rearrange error classes
Fiddle::Error is the generic exception base class for Fiddle exceptions.
This commit introduces the class and rearranges Fiddle exceptions to
inherit from it.
https://github.com/ruby/fiddle/commit/ac52d00223
Notes:
Merged: https://github.com/ruby/ruby/pull/3780
|
|
For example, :voidp equals to Fiddle::TYPE_VOID_P.
https://github.com/ruby/fiddle/commit/3b4de54899
Notes:
Merged: https://github.com/ruby/ruby/pull/3780
|