sanger / gatekeeper

Gatekeeper is used to track the production and validation of batches of tag plates for sequencing. It is designed to interface with the Sequencescape LIMS.
MIT License
0 stars 5 forks source link

Update listen 3.8.0 → 3.9.0 (minor) #373

Closed depfu[bot] closed 8 months ago

depfu[bot] commented 8 months ago

Here is everything you need to know about this update. Please take a good look at what changed and the test results before merging this pull request.

What changed?

✳️ listen (3.8.0 → 3.9.0) · Repo · Changelog

Release Notes

3.9.0

Does any of this look wrong? Please let us know.

Commits

See the full diff on Github. The new version differs by 6 commits:

↗️ ffi (indirect, 1.15.5 → 1.16.3) · Repo · Changelog

Release Notes

1.16.3 (from changelog)

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 (from changelog)

Fixed:

  • Handle null pointer crash after fork. #1051

1.16.1 (from changelog)

Fixed:

  • Fix compiling the builtin libffi. #1049

1.16.0 (from changelog)

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
      • use FFI::Struct definitions from the main Ractor
    • In a Ractor it's impossible to:
      • create new FFI::Library based modules
      • create new FFI::Struct definitions
      • use custom global typedefs
      • use non-frozen FFI::Library based modules
  • Allow type retrieval of attached functions+variables. #1023
  • Make FFI classes GC.compact friendly. #1021
  • Update libffi and disable custom trampoline when using libffi closure allocation. #1020 This is because libffi changed the way how closures are allocated to static trampolines.
  • Add types.conf for loongarch64-linux. #943
  • Add types.conf for sw_64-linux (Shen Wei 64-bit, based on Alpha). #1018
  • Add support for aarch64-windows. #1035
  • Windows: Update LoadLibrary error message to include error code. #1026
  • Allow private release method for FFI::ManagedStruct and FFI::AutoPointer. #1029
  • Add support for passing ABI version to FFI.map_library_name. #963 This adds the new class FFI::LibraryPath .
  • Add support for ruby-3.2 to windows binary gem. #1047
  • Enable debug symbols for rake compile builds to ease debugging. #1048

Removed:

  • Remove allocator of AbstractMemory. #1013 This disables AbstractMemory.new, which has no practical use.
  • Remove unused FFI::SizeTypes. #1022

Does any of this look wrong? Please let us know.

Commits

See the full diff on Github. The new version differs by more commits than we can show here.


Depfu Status

Depfu will automatically keep this PR conflict-free, as long as you don't add any commits to this branch yourself. You can also trigger a rebase manually by commenting with @depfu rebase.

All Depfu comment commands
@​depfu rebase
Rebases against your default branch and redoes this update
@​depfu recreate
Recreates this PR, overwriting any edits that you've made to it
@​depfu merge
Merges this PR once your tests are passing and conflicts are resolved
@​depfu cancel merge
Cancels automatic merging of this PR
@​depfu close
Closes this PR and deletes the branch
@​depfu reopen
Restores the branch and reopens this PR (if it's closed)
@​depfu pause
Ignores all future updates for this dependency and closes this PR
@​depfu pause [minor|major]
Ignores all future minor/major updates for this dependency and closes this PR
@​depfu resume
Future versions of this dependency will create PRs again (leaves this PR as is)