Build(deps): Bump ffi from 1.12.2 to 1.13.0 (PR #9954)

Bumps ffi from 1.12.2 to 1.13.0.

Changelog

Sourced from ffi's changelog.

1.13.0 / 2020-06-01

Added:

  • Add TruffleRuby support. Almost all specs are running on TruffleRuby and succeed. #768
  • Add ruby source files to the java gem. This allows to ship the Ruby library code per platform java gem and add it as a default gem to JRuby. #763
  • Add FFI::Platform::LONG_DOUBLE_SIZE
  • Add bounds checks for writing to an inline char[] . #756
  • Add long double as callback return value. #771
  • Update type definitions and add types from stdint.h and stddef.h on i386-windows, x86_64-windows, x86_64-darwin, x86_64-linux, arm-linux, powerpc-linux. #749
  • Add new type definitions for powerpc-openbsd and sparcv9-openbsd. #775, #778

Changed:

  • Raise required ruby version to >= 2.3.
  • Lots of cleanups and improvements in library, specs and benchmarks.
  • Fix a lot of compiler warnings at the C-extension
  • Fix several install issues on MacOS:
    • Look for libffi in SDK paths, since recent versions of macOS removed it from /usr/include . #757
    • Fix error ld: library not found for -lgcc_s.10.4
    • Don't built for i386 architecture as it is deprecated
  • Several fixes for MSVC build on Windows. #779
  • Use ucrtbase.dll as default C library on Windows instead of old msvcrt.dll. #779
  • Update builtin libffi to fix a Powerpc issue with parameters of type long
  • Allow unmodified sourcing of (the ruby code of) this gem in JRuby and TruffleRuby as a default gem. #747
  • Improve check to detect if a module has a #find_type method suitable for FFI. This fixes compatibility with stdlib mkmf . #776

Removed:

  • Reject callback with :string return type at definition, because it didn't work so far and is not save to use. #751, #782
Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don’t alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
  • @dependabot badge me will comment on this PR with code to add a “Dependabot enabled” badge to your readme

Additionally, you can set the following in your Dependabot dashboard:

  • Update frequency (including time of day and day of week)
  • Pull request limits (per update run and/or open at any time)
  • Out-of-range updates (receive only lockfile updates, if desired)
  • Security updates (receive only security updates, if desired)

GitHub