Skip to content

Bump ffi from 1.15.5 to 1.16.3

Imanuel Ulbricht requested to merge dependabot-bundler-ffi-1.16.3 into main

Bumps ffi from 1.15.5 to 1.16.3.

Changelog

Sourced from ffi's changelog.

1.16.3 / 2023-10-04

Fixed:

  • Fix gcc error when building on CentOS 7. #1052
  • Avoid trying to store new DataConverter type in frozen TypeDefs hash. #1057

1.16.2 / 2023-09-25

Fixed:

  • Handle null pointer crash after fork. #1051

1.16.1 / 2023-09-24

Fixed:

  • Fix compiling the builtin libffi. #1049

1.16.0 / 2023-09-23

Fixed:

  • Fix an issue with signed bitmasks when using flags on the most significant bit. #949
  • Fix FFI::Pointer#initialize using NUM2LL instead of NUM2ULL.
  • Fix FFI::Type#inspect to properly display the constant name. #1002
  • Use libffi closure allocations on hppa-Linux. #1017 Previously they would segfault.
  • Fix class name of Symbol#inspect.
  • Fix MSVC support of libtest. #1028
  • Fix attach_function of functions ending in ? or ! #971

Added:

  • Convert all C-based classes to TypedData and use write barriers. #994, #995, #996, #997, #998, #999, #1000, #1001, #1003, #1004, #1005, #1006, #1007, #1008, #1009, #1010, #1011, #1012 This results in less pressure on the garbage collector, since the objects can be promoted to the old generation, which means they only get marked on major GC.
  • Implement ObjectSpace.memsize_of() of all C-based classes.
  • Make FFI Ractor compatible. #1023 Modules extended per extend FFI::Library need to be frozen in order to be used by non-main Ractors. This can be done by calling freeze below of all C interface definitions.
    • In a Ractor it's possible to:
      • load DLLs and call its functions, access its global variables
      • use builtin typedefs
      • use and modify ractor local typedefs
      • define callbacks
      • receive async callbacks from non-ruby threads
      • use frozen FFI::Library based modules with all attributes (enums, structs, typedefs, functions, callbacks)
      • invoke frozen functions and callbacks defined in the main Ractor

... (truncated)

Commits


Dependabot commands
You can trigger Dependabot actions by commenting on this MR
  • $dependabot recreate will recreate this MR rewriting all the manual changes and resolving conflicts

Merge request reports

Loading