Issue #13095 has been updated by shyouhei (Shyouhei Urabe).


We looked at this issue in today's developer meeting.

We see that using fiddle to wrap libc is too complicated.  At the same time however, it is true that memory alignment is not exposed to ruby level so it is not possible right now to write a "correct" code that calls this interface. The current situation is sort of "nice in theory, broken in practice".

So the problem is: do we want to make it complete, like by adding alignment support?  Maybe other things are also needed like SYS_foobar definitions.  Should we do that in-core? or in new library (like, say, ext/syscall)?  Or in reverse, should we just delete this as the warning says now?  We at the meeting could not conclude.

----------------------------------------
Feature #13095: [PATCH] io.c (rb_f_syscall): remove deprecation notice
https://bugs.ruby-lang.org/issues/13095#change-63563

* Author: normalperson (Eric Wong)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
io.c (rb_f_syscall): remove deprecation notice

New, perhaps experimental syscalls appear all the time which
may not and never be be supported by the system C library.

Furthermore, on common GNU/Linux platforms, kernel development
and releases happens at a much faster pace than GNU C library
(glibc) development.  In my experience, is more common for users
to run recent, custom-built Linux kernels than a recent,
custom-built glibc.  (This is likely because Linux upstream has
better built-in tooling for distro package management integration
than glibc upstream).

So, ruby should support users who want to deal with the latest
and greatest syscalls in the kernel without having them wait for
C library support.


---Files--------------------------------
0001-io.c-rb_f_syscall-remove-deprecation-notice.patch (1.33 KB)


-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>