1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/test/-ext-
Peter Zhu 3df16924b4 [Feature #18249] Implement ABI checking
Header file include/ruby/internal/abi.h contains RUBY_ABI_VERSION which
is the ABI version. This value should be bumped whenever an ABI
incompatible change is introduced.

When loading dynamic libraries, Ruby will compare its own
`ruby_abi_version` and the `ruby_abi_version` of the loaded library. If
these two values don't match it will raise a `LoadError`. This feature
can also be turned off by setting the environment variable
`RUBY_RUBY_ABI_CHECK=0`.

This feature will prevent cases where previously installed native gems
fail in unexpected ways due to incompatibility of changes in header
files. This will force the developer to recompile their gems to use the
same header files as the built Ruby.

In Ruby, the ABI version is exposed through
`RbConfig::CONFIG["ruby_abi_version"]`.
2022-02-22 09:55:21 -05:00
..
arith_seq
array
bignum
bug_reporter Do not create core file if it is intentional abort 2022-01-19 23:17:14 +09:00
class
debug
exception
file
float Use omit instead of skip: test/-ext-/**/*.rb 2021-12-28 21:13:39 +09:00
funcall
gvl Use omit instead of skip: test/-ext-/**/*.rb 2021-12-28 21:13:39 +09:00
hash
integer
iseq_load Use omit instead of skip: test/-ext-/**/*.rb 2021-12-28 21:13:39 +09:00
iter
load
marshal
method
num2int
path_to_class
popen_deadlock
postponed_job Avoid assert failure when NULL EC is expected 2021-11-22 19:29:29 -05:00
proc
rational
st
string Decouple GC slot sizes from RVALUE 2022-02-02 09:52:04 -05:00
struct
symbol
thread_fd
time
tracepoint
typeddata
vm
wait fix random EBADF problem 2021-10-26 11:39:52 +09:00
win32
test_abi.rb [Feature #18249] Implement ABI checking 2022-02-22 09:55:21 -05:00
test_bug-3571.rb
test_bug-5832.rb
test_bug-14834.rb
test_enumerator_kw.rb
test_notimplement.rb
test_printf.rb
test_random.rb
test_recursion.rb
test_scan_args.rb