Download raw body.
update devel/ruby-ffi to 1.17.2
On 09/06 01:35, Klemens Nanni wrote:
> Loads of changes: https://github.com/ffi/ffi/blob/master/CHANGELOG.md
>
> Both Facter and Openfact are happy with this, Puppet and OpenVox apply
> without warnings or errors like before.
>
> They're the only consumers for which I had to relax the version spec,
> all others built fine, alhough I didn't runtest any of them:
>
> devel/ruby-ffi-compiler
> devel/ruby-get_process_mem
> security/ruby-argon2
> security/ruby-rbnacl
> sysutils/ruby-pdk
> www/ruby-ethon
> www/ruby-sassc
>
> The PLIST update is modulo the churn diff I already get, see my other mail.
>
> Feedback? OK?
Builds fine. I did some light runtime testing with an app using
ruby-argon2 and the updated ruby-ffi, no problems.
OK jeremy@
> Index: devel/ruby-ffi/Makefile
> ===================================================================
> RCS file: /cvs/ports/devel/ruby-ffi/Makefile,v
> diff -u -p -r1.29 Makefile
> --- devel/ruby-ffi/Makefile 1 Sep 2023 10:44:44 -0000 1.29
> +++ devel/ruby-ffi/Makefile 6 Sep 2025 11:49:06 -0000
> @@ -1,6 +1,6 @@
> COMMENT = cross-platform dynamic library loading for ruby
>
> -DISTNAME = ffi-1.15.5
> +DISTNAME = ffi-1.17.2
> CATEGORIES = devel
>
> HOMEPAGE= https://github.com/ffi/ffi
> @@ -12,7 +12,7 @@ PERMIT_PACKAGE = Yes
>
> MODULES = lang/ruby
>
> -WANTLIB = ffi
> +WANTLIB = c++abi ffi
>
> LIB_DEPENDS = devel/libffi
>
> Index: devel/ruby-ffi/distinfo
> ===================================================================
> RCS file: /cvs/ports/devel/ruby-ffi/distinfo,v
> diff -u -p -r1.12 distinfo
> --- devel/ruby-ffi/distinfo 1 Sep 2023 10:44:44 -0000 1.12
> +++ devel/ruby-ffi/distinfo 6 Sep 2025 11:40:50 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (ffi-1.15.5.gem) = by7S+mgEeWLWByuWRCDLqR2Czm+o7iUZUMF/ymrzwqA=
> -SIZE (ffi-1.15.5.gem) = 909824
> +SHA256 (ffi-1.17.2.gem) = KXI1hC5ZR8wwNuvmQHdYS/9YPNek6U6aAv3sOZ70baY=
> +SIZE (ffi-1.17.2.gem) = 1007104
> Index: devel/ruby-ffi/patches/patch-ext_ffi_c_libffi_bsd_mk
> ===================================================================
> RCS file: /cvs/ports/devel/ruby-ffi/patches/patch-ext_ffi_c_libffi_bsd_mk,v
> diff -u -p -r1.5 patch-ext_ffi_c_libffi_bsd_mk
> --- devel/ruby-ffi/patches/patch-ext_ffi_c_libffi_bsd_mk 11 Mar 2022 18:53:13 -0000 1.5
> +++ devel/ruby-ffi/patches/patch-ext_ffi_c_libffi_bsd_mk 6 Sep 2025 11:44:12 -0000
> @@ -8,8 +8,8 @@ Index: ext/ffi_c/libffi.bsd.mk
> -LIBFFI = ${LIBFFI_BUILD_DIR}/.libs/libffi_convenience.a
> +LIBFFI = -lffi
> LIBFFI_AUTOGEN = ${LIBFFI_SRC_DIR}/autogen.sh
> - LIBFFI_CONFIGURE = ${LIBFFI_SRC_DIR}/configure --disable-static \
> - --with-pic=yes --disable-dependency-tracking --disable-docs
> + LIBFFI_CONFIGURE = ${LIBFFI_SRC_DIR}/configure --disable-shared --enable-static \
> + --with-pic=yes --disable-dependency-tracking --disable-docs $(LIBFFI_DEBUG)
>
> -$(OBJS): ${LIBFFI}
> +$(OBJS):
> Index: devel/ruby-ffi/pkg/DESCR
> ===================================================================
> RCS file: /cvs/ports/devel/ruby-ffi/pkg/DESCR,v
> diff -u -p -r1.1.1.1 DESCR
> --- devel/ruby-ffi/pkg/DESCR 20 Dec 2010 18:04:16 -0000 1.1.1.1
> +++ devel/ruby-ffi/pkg/DESCR 6 Sep 2025 11:54:18 -0000
> @@ -1,11 +1,11 @@
> -Ruby-FFI is a ruby extension for programmatically loading dynamic
> +Ruby-FFI is a gem for programmatically loading dynamically-linked native
> libraries, binding functions within them, and calling those functions
> from Ruby code. Moreover, a Ruby-FFI extension works without changes on
> -Ruby and JRuby.
> +CRuby (MRI), JRuby, Rubinius and TruffleRuby.
>
> -* It has a very intuitive DSL
> -* It supports all C native types
> -* It supports C structs (also nested), enums and global variables
> -* It supports callbacks
> -* It has smart methods to handle memory management of pointers and
> - structs
> +* Intuitive DSL
> +* Supports all C native types
> +* C structs (also nested), enums and global variables
> +* Callbacks from C to Ruby
> +* Automatic garbage collection of native memory
> +* Usable in Ractor: How-to-use-FFI-in-Ruby-Ractors
> Index: devel/ruby-ffi/pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/devel/ruby-ffi/pkg/PLIST,v
> diff -u -p -r1.13 PLIST
> --- devel/ruby-ffi/pkg/PLIST 11 Mar 2022 18:53:14 -0000 1.13
> +++ devel/ruby-ffi/pkg/PLIST 6 Sep 2025 13:27:25 -0000
> @@ -15,12 +15,16 @@ ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/abst
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/autopointer.rb
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/buffer.rb
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/callback.rb
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/compat.rb
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/data_converter.rb
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/dynamic_library.rb
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/enum.rb
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/errno.rb
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/ffi.rb
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/function.rb
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/io.rb
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/library.rb
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/library_path.rb
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/managedstruct.rb
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/memorypointer.rb
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/
> @@ -35,12 +39,18 @@ ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/plat
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/aarch64-linux/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/aarch64-openbsd/
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/aarch64-openbsd/types.conf
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/aarch64-windows/
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/aarch64-windows/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/arm-freebsd/
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/arm-freebsd/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/arm-freebsd12/
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/arm-freebsd12/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/arm-linux/
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/arm-linux/types.conf
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/hppa1.1-linux/
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/hppa1.1-linux/types.conf
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/hppa2.0-linux/
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/hppa2.0-linux/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/i386-cygwin/
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/i386-cygwin/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/i386-darwin/
> @@ -63,6 +73,8 @@ ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/plat
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/i386-windows/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/ia64-linux/
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/ia64-linux/types.conf
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/loongarch64-linux/
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/loongarch64-linux/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/mips-linux/
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/mips-linux/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/mips64-linux/
> @@ -101,12 +113,14 @@ ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/plat
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sparc-linux/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sparc-solaris/
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sparc-solaris/types.conf
> -${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sparc64-linux/
> -${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sparc64-linux/types.conf
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sparcv9-linux/
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sparcv9-linux/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sparcv9-openbsd/
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sparcv9-openbsd/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sparcv9-solaris/
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sparcv9-solaris/types.conf
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sw_64-linux/
> +${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/sw_64-linux/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/x86_64-cygwin/
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/x86_64-cygwin/types.conf
> ${GEM_LIB}/gems/${DISTNAME}/lib/ffi/platform/x86_64-darwin/
> @@ -154,7 +168,28 @@ ${GEM_LIB}/gems/${DISTNAME}/samples/getl
> ${GEM_LIB}/gems/${DISTNAME}/samples/getpid.rb
> ${GEM_LIB}/gems/${DISTNAME}/samples/gettimeofday.rb
> ${GEM_LIB}/gems/${DISTNAME}/samples/hello.rb
> +${GEM_LIB}/gems/${DISTNAME}/samples/hello_ractor.rb
> ${GEM_LIB}/gems/${DISTNAME}/samples/inotify.rb
> ${GEM_LIB}/gems/${DISTNAME}/samples/pty.rb
> ${GEM_LIB}/gems/${DISTNAME}/samples/qsort.rb
> +${GEM_LIB}/gems/${DISTNAME}/samples/qsort_ractor.rb
> +${GEM_LIB}/gems/${DISTNAME}/sig/
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/abstract_memory.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/auto_pointer.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/buffer.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/data_converter.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/dynamic_library.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/enum.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/function.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/library.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/native_type.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/pointer.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/struct.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/struct_by_reference.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/struct_by_value.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/struct_layout.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/struct_layout_builder.rbs
> +${GEM_LIB}/gems/${DISTNAME}/sig/ffi/type.rbs
> ${GEM_LIB}/specifications/${DISTNAME}.gemspec
> Index: sysutils/ruby-openfact/Makefile
> ===================================================================
> RCS file: /cvs/ports/sysutils/ruby-openfact/Makefile,v
> diff -u -p -r1.1.1.1 Makefile
> --- sysutils/ruby-openfact/Makefile 31 Aug 2025 14:39:33 -0000 1.1.1.1
> +++ sysutils/ruby-openfact/Makefile 6 Sep 2025 12:00:45 -0000
> @@ -1,5 +1,6 @@
> COMMENT = system inventory tool
> DISTNAME = openfact-5.1.0
> +REVISION = 0
> CATEGORIES = sysutils
>
> HOMEPAGE = https://github.com/OpenVoxProject/openfact/
> @@ -12,7 +13,7 @@ PERMIT_PACKAGE = Yes
> MODULES = lang/ruby
>
> BUILD_DEPENDS = ${RUN_DEPENDS}
> -RUN_DEPENDS = devel/ruby-ffi,${MODRUBY_FLAVOR}>=1.15.5,<1.17 \
> +RUN_DEPENDS = devel/ruby-ffi,${MODRUBY_FLAVOR}>=1.15.5 \
> devel/ruby-hocon,${MODRUBY_FLAVOR}>=1.3 \
> devel/ruby-thor,${MODRUBY_FLAVOR}>=1.0.1
>
> Index: sysutils/ruby-openfact/patches/patch-_metadata
> ===================================================================
> RCS file: /cvs/ports/sysutils/ruby-openfact/patches/patch-_metadata,v
> diff -u -p -r1.1.1.1 patch-_metadata
> --- sysutils/ruby-openfact/patches/patch-_metadata 31 Aug 2025 14:39:33 -0000 1.1.1.1
> +++ sysutils/ruby-openfact/patches/patch-_metadata 6 Sep 2025 12:04:00 -0000
> @@ -1,9 +1,30 @@
> +Relax version requirement for the ffi gem to use newer versions.
> Relax version requirement for the logger gem to use lang/ruby's bundle.
>
> Index: .metadata
> --- .metadata.orig
> +++ .metadata
> -@@ -223,16 +223,16 @@ dependencies:
> +@@ -16,9 +16,6 @@ dependencies:
> + - - ">="
> + - !ruby/object:Gem::Version
> + version: 1.15.5
> +- - - "<"
> +- - !ruby/object:Gem::Version
> +- version: 1.17.0
> + - - "!="
> + - !ruby/object:Gem::Version
> + version: 1.16.0
> +@@ -35,9 +32,6 @@ dependencies:
> + - - ">="
> + - !ruby/object:Gem::Version
> + version: 1.15.5
> +- - - "<"
> +- - !ruby/object:Gem::Version
> +- version: 1.17.0
> + - - "!="
> + - !ruby/object:Gem::Version
> + version: 1.16.0
> +@@ -223,16 +217,16 @@ dependencies:
> name: logger
> requirement: !ruby/object:Gem::Requirement
> requirements:
> Index: sysutils/ruby-facter/Makefile
> ===================================================================
> RCS file: /cvs/ports/sysutils/ruby-facter/Makefile,v
> diff -u -p -r1.103 Makefile
> --- sysutils/ruby-facter/Makefile 31 Aug 2025 14:35:25 -0000 1.103
> +++ sysutils/ruby-facter/Makefile 6 Sep 2025 11:58:30 -0000
> @@ -4,7 +4,7 @@ DISTNAME = facter-4.10.0
> CATEGORIES = sysutils
> HOMEPAGE = https://github.com/puppetlabs/facter
> MAINTAINER = Sebastian Reitenbach <sebastia@openbsd.org>
> -REVISION = 0
> +REVISION = 1
>
> # Apache 2.0
> PERMIT_PACKAGE = Yes
> @@ -13,7 +13,7 @@ MODULES = lang/ruby
>
> BUILD_DEPENDS += ${RUN_DEPENDS}
>
> -RUN_DEPENDS += devel/ruby-ffi,${MODRUBY_FLAVOR}>=1.15.5,<1.17 \
> +RUN_DEPENDS += devel/ruby-ffi,${MODRUBY_FLAVOR}>=1.15.5 \
> devel/ruby-hocon,${MODRUBY_FLAVOR}>=1.3,<2 \
> devel/ruby-thor,${MODRUBY_FLAVOR}>=1.0.1,<1.3
>
update devel/ruby-ffi to 1.17.2