Deprecated: Function get_magic_quotes_gpc() is deprecated in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 99
Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 619
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 832
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839 tag:github.com,2008:https://github.com/ffi/ffi/releasesRelease notes from ffi2025-04-14T20:07:27Ztag:github.com,2008:Repository/270054/v1.17.22025-04-14T20:07:27Zv1.17.2: 1.17.2 / 2025-04-14<hr>
<p>Fixed:</p>
<ul>
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2968569616" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1144" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1144/hovercard" href="https://github.com/ffi/ffi/pull/1144">#1144</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2984364677" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1145" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1145/hovercard" href="https://github.com/ffi/ffi/pull/1145">#1145</a> Update libffi to 3.4.8 to fix installation issues on latest Macos on ARM64</li>
<li>Various adjustments to run the specs cleanly on Ruby-3.5 master branch</li>
</ul>larskanistag:github.com,2008:Repository/270054/v1.17.12024-12-30T21:03:25Zv1.17.1: 1.17.1 / 2024-12-30<hr>
<p>Fixed:</p>
<ul>
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2469277328" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1117" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1117/hovercard" href="https://github.com/ffi/ffi/pull/1117">#1117</a> Restart async callback dispatcher thread after fork.</li>
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2762392294" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1133" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1133/hovercard" href="https://github.com/ffi/ffi/pull/1133">#1133</a> Add ruby-3.4 native gem.</li>
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2763675771" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1134" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1134/hovercard" href="https://github.com/ffi/ffi/pull/1134">#1134</a> Fix FFI::DataConverter non-generic usage in RBS files</li>
</ul>larskanistag:github.com,2008:Repository/270054/v1.17.02024-06-02T10:39:52Zv1.17.0: 1.17.0 / 2024-06-02<hr>
<p>Fixed:</p>
<ul>
<li>Add FFI::AbstractMemory#read_array_of_string . It was defined but not exposed to Ruby nor tested. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2060881902" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1070" data-hovercard-type="issue" data-hovercard-url="/ffi/ffi/issues/1070/hovercard" href="https://github.com/ffi/ffi/issues/1070">#1070</a></li>
</ul>larskanistag:github.com,2008:Repository/270054/v1.17.0.rc22024-04-22T17:22:08Zv1.17.0.rc2: 1.17.0.rc2 / 2024-04-22<hr>
<p>Fixed:</p>
<ul>
<li>Add missing write barriers to StructLayout#initialize causing a segfault with GC.stress. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2121755302" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1079" data-hovercard-type="issue" data-hovercard-url="/ffi/ffi/issues/1079/hovercard" href="https://github.com/ffi/ffi/issues/1079">#1079</a></li>
</ul>larskanistag:github.com,2008:Repository/270054/v1.17.0.rc12024-04-07T19:29:14Zv1.17.0.rc1: 1.17.0.rc1 / 2024-04-07<hr>
<p>Fixed:</p>
<ul>
<li>Fix type definitions on <code>aarch64-linux</code>. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2060819763" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1067" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1067/hovercard" href="https://github.com/ffi/ffi/pull/1067">#1067</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2039777816" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1066" data-hovercard-type="issue" data-hovercard-url="/ffi/ffi/issues/1066/hovercard" href="https://github.com/ffi/ffi/issues/1066">#1066</a></li>
<li>Use RB_TEST for <code>Pointer.autorelease=</code> . <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2000890804" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1065" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1065/hovercard" href="https://github.com/ffi/ffi/pull/1065">#1065</a><br>
So that <code>false</code> and <code>nil</code> are treated as falsey and anything else as truthy.</li>
<li>Replace Fixnum by Integer. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2000874505" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1064" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1064/hovercard" href="https://github.com/ffi/ffi/pull/1064">#1064</a><br>
Fixnum is no longer present in the ruby language.</li>
<li>Update <code>FFI::NativeType</code> doc. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1989709372" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1061" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1061/hovercard" href="https://github.com/ffi/ffi/pull/1061">#1061</a></li>
<li>Store FFI::Type::Mapped of FFI::StrPtrConverter in global instead of custom type map</li>
<li>Various documentation fixes. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1846133773" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1042" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1042/hovercard" href="https://github.com/ffi/ffi/pull/1042">#1042</a></li>
<li>Update <code>FFI::Pointer#==</code> to return <code>false</code> if a pointer is compared to a non-pointer object, which is the expected behavior. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2212619994" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1083" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1083/hovercard" href="https://github.com/ffi/ffi/pull/1083">#1083</a></li>
<li>Avoid warning about undefined wariable <code>@ffi_functions</code> <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2215872438" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1085" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1085/hovercard" href="https://github.com/ffi/ffi/pull/1085">#1085</a></li>
<li>Fix a very unlikely GC bug when using a callback block. # 1089</li>
</ul>
<p>Added:</p>
<ul>
<li>Provide binary gems for many platforms. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1560466212" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/990" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/990/hovercard" href="https://github.com/ffi/ffi/pull/990">#990</a></li>
<li>Add Windows fat binary gem for Ruby-3.3</li>
<li>Add RBS type definitions for many user facing parts of the FFI API. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1846133773" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1042" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1042/hovercard" href="https://github.com/ffi/ffi/pull/1042">#1042</a></li>
<li>Improve fallback search path logic. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2216820926" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1088" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1088/hovercard" href="https://github.com/ffi/ffi/pull/1088">#1088</a><br>
Respect LD_LIBRARY_PATH and DYLD_LIBRARY_PATH on Macos.</li>
<li>Update libffi to current git master branch.</li>
</ul>
<p>Removed:</p>
<ul>
<li>Remove <code>enum CHAR_ARRAY</code> which is no longer used. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2000861906" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1063" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1063/hovercard" href="https://github.com/ffi/ffi/pull/1063">#1063</a></li>
</ul>larskanistag:github.com,2008:Repository/270054/v1.16.32023-10-04T07:09:00Zv1.16.3: 1.16.3 / 2023-10-04<hr>
<p>Fixed:</p>
<ul>
<li>Fix gcc error when building on CentOS 7. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1912272142" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1052" data-hovercard-type="issue" data-hovercard-url="/ffi/ffi/issues/1052/hovercard" href="https://github.com/ffi/ffi/issues/1052">#1052</a></li>
<li>Avoid trying to store new DataConverter type in frozen TypeDefs hash. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1918729677" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1057" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1057/hovercard" href="https://github.com/ffi/ffi/pull/1057">#1057</a></li>
</ul>larskanistag:github.com,2008:Repository/270054/v1.16.22023-09-25T18:52:59Zv1.16.2: 1.16.2 / 2023-09-25<hr>
<p>Fixed:</p>
<ul>
<li>Handle null pointer crash after fork. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1911749268" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1051" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1051/hovercard" href="https://github.com/ffi/ffi/pull/1051">#1051</a></li>
</ul>larskanistag:github.com,2008:Repository/270054/v1.16.12023-09-24T08:43:42Zv1.16.1: 1.16.1 / 2023-09-24<hr>
<p>Fixed:</p>
<ul>
<li>Fix compiling the builtin libffi. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1910128216" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1049" data-hovercard-type="issue" data-hovercard-url="/ffi/ffi/issues/1049/hovercard" href="https://github.com/ffi/ffi/issues/1049">#1049</a></li>
</ul>larskanistag:github.com,2008:Repository/270054/v1.16.02023-09-23T21:35:39Zv1.16.0: 1.16.0 / 2023-09-23<hr>
<p>Fixed:</p>
<ul>
<li>Fix an issue with signed bitmasks when using flags on the most significant bit. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1202717356" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/949" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/949/hovercard" href="https://github.com/ffi/ffi/pull/949">#949</a></li>
<li>Fix FFI::Pointer#initialize using NUM2LL instead of NUM2ULL.</li>
<li>Fix FFI::Type#inspect to properly display the constant name. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1611023334" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1002" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1002/hovercard" href="https://github.com/ffi/ffi/pull/1002">#1002</a></li>
<li>Use libffi closure allocations on hppa-Linux. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1659698689" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1017" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1017/hovercard" href="https://github.com/ffi/ffi/pull/1017">#1017</a><br>
Previously they would segfault.</li>
<li>Fix class name of Symbol#inspect.</li>
<li>Fix MSVC support of libtest. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1677136688" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1028" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1028/hovercard" href="https://github.com/ffi/ffi/pull/1028">#1028</a></li>
<li>Fix attach_function of functions ending in ? or ! <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1330223454" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/971" data-hovercard-type="issue" data-hovercard-url="/ffi/ffi/issues/971/hovercard" href="https://github.com/ffi/ffi/issues/971">#971</a></li>
</ul>
<p>Added:</p>
<ul>
<li>Convert all C-based classes to TypedData and use write barriers. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1606521592" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/994" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/994/hovercard" href="https://github.com/ffi/ffi/pull/994">#994</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1606750223" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/995" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/995/hovercard" href="https://github.com/ffi/ffi/pull/995">#995</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1606779589" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/996" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/996/hovercard" href="https://github.com/ffi/ffi/pull/996">#996</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1606792943" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/997" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/997/hovercard" href="https://github.com/ffi/ffi/pull/997">#997</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1607041412" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/998" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/998/hovercard" href="https://github.com/ffi/ffi/pull/998">#998</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1607072624" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/999" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/999/hovercard" href="https://github.com/ffi/ffi/pull/999">#999</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1609195947" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1000" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1000/hovercard" href="https://github.com/ffi/ffi/pull/1000">#1000</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1610948435" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1001" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1001/hovercard" href="https://github.com/ffi/ffi/pull/1001">#1001</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1611114493" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1003" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1003/hovercard" href="https://github.com/ffi/ffi/pull/1003">#1003</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1611193990" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1004" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1004/hovercard" href="https://github.com/ffi/ffi/pull/1004">#1004</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1611359928" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1005" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1005/hovercard" href="https://github.com/ffi/ffi/pull/1005">#1005</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1611511152" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1006" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1006/hovercard" href="https://github.com/ffi/ffi/pull/1006">#1006</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1611589254" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1007" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1007/hovercard" href="https://github.com/ffi/ffi/pull/1007">#1007</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1611702405" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1008" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1008/hovercard" href="https://github.com/ffi/ffi/pull/1008">#1008</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1611723781" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1009" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1009/hovercard" href="https://github.com/ffi/ffi/pull/1009">#1009</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1611887680" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1010" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1010/hovercard" href="https://github.com/ffi/ffi/pull/1010">#1010</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1612015967" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1011" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1011/hovercard" href="https://github.com/ffi/ffi/pull/1011">#1011</a>, <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1612119531" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1012" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1012/hovercard" href="https://github.com/ffi/ffi/pull/1012">#1012</a><br>
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.</li>
<li>Implement <code>ObjectSpace.memsize_of()</code> of all C-based classes.</li>
<li>Make FFI Ractor compatible. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1670119713" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1023" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1023/hovercard" href="https://github.com/ffi/ffi/pull/1023">#1023</a><br>
Modules extended per <code>extend FFI::Library</code> need to be frozen in order to be used by non-main Ractors.<br>
This can be done by calling <code>freeze</code> below of all C interface definitions.
<ul>
<li>In a Ractor it's possible to:
<ul>
<li>load DLLs and call its functions, access its global variables</li>
<li>use builtin typedefs</li>
<li>use and modify ractor local typedefs</li>
<li>define callbacks</li>
<li>receive async callbacks from non-ruby threads</li>
<li>use frozen FFI::Library based modules with all attributes (enums, structs, typedefs, functions, callbacks)</li>
<li>invoke frozen functions and callbacks defined in the main Ractor</li>
<li>use FFI::Struct definitions from the main Ractor</li>
</ul>
</li>
<li>In a Ractor it's impossible to:
<ul>
<li>create new FFI::Library based modules</li>
<li>create new FFI::Struct definitions</li>
<li>use custom global typedefs</li>
<li>use non-frozen FFI::Library based modules</li>
</ul>
</li>
</ul>
</li>
<li>Allow type retrieval of attached functions+variables. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1670119713" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1023" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1023/hovercard" href="https://github.com/ffi/ffi/pull/1023">#1023</a></li>
<li>Make FFI classes <code>GC.compact</code> friendly. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1668478706" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1021" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1021/hovercard" href="https://github.com/ffi/ffi/pull/1021">#1021</a></li>
<li>Update libffi and disable custom trampoline when using libffi closure allocation. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1668472965" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1020" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1020/hovercard" href="https://github.com/ffi/ffi/pull/1020">#1020</a><br>
This is because libffi changed the way how closures are allocated to static trampolines.</li>
<li>Add types.conf for loongarch64-linux. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1158116388" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/943" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/943/hovercard" href="https://github.com/ffi/ffi/pull/943">#943</a></li>
<li>Add types.conf for sw_64-linux (Shen Wei 64-bit, based on Alpha). <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1661863112" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1018" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1018/hovercard" href="https://github.com/ffi/ffi/pull/1018">#1018</a></li>
<li>Add support for aarch64-windows. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1773239371" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1035" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1035/hovercard" href="https://github.com/ffi/ffi/pull/1035">#1035</a></li>
<li>Windows: Update LoadLibrary error message to include error code. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1676042487" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1026" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1026/hovercard" href="https://github.com/ffi/ffi/pull/1026">#1026</a></li>
<li>Allow private release method for FFI::ManagedStruct and FFI::AutoPointer. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1692137225" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1029" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1029/hovercard" href="https://github.com/ffi/ffi/pull/1029">#1029</a></li>
<li>Add support for passing ABI version to FFI.map_library_name. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1283510952" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/963" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/963/hovercard" href="https://github.com/ffi/ffi/pull/963">#963</a><br>
This adds the new class FFI::LibraryPath .</li>
<li>Add support for ruby-3.2 to windows binary gem. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1909993515" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1047" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1047/hovercard" href="https://github.com/ffi/ffi/pull/1047">#1047</a></li>
<li>Enable debug symbols for <code>rake compile</code> builds to ease debugging. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1910001954" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1048" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1048/hovercard" href="https://github.com/ffi/ffi/pull/1048">#1048</a></li>
</ul>
<p>Removed:</p>
<ul>
<li>Remove allocator of AbstractMemory. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1612127244" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1013" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1013/hovercard" href="https://github.com/ffi/ffi/pull/1013">#1013</a><br>
This disables AbstractMemory.new, which has no practical use.</li>
<li>Remove unused FFI::SizeTypes. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1670107900" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/1022" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/1022/hovercard" href="https://github.com/ffi/ffi/pull/1022">#1022</a></li>
</ul>larskanistag:github.com,2008:Repository/270054/v1.15.52022-01-10T14:39:09Zv1.15.5: 1.15.5 / 2022-01-10<hr>
<p>Fixed:</p>
<ul>
<li>Fix long double argument or return values on 32bit i686. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="756345485" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/849" data-hovercard-type="issue" data-hovercard-url="/ffi/ffi/issues/849/hovercard" href="https://github.com/ffi/ffi/issues/849">#849</a></li>
<li>FFI::ConstGenerator: avoid usage of the same binary file simultaneously. <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1092467574" data-permission-text="Title is private" data-url="https://github.com/ffi/ffi/issues/929" data-hovercard-type="pull_request" data-hovercard-url="/ffi/ffi/pull/929/hovercard" href="https://github.com/ffi/ffi/pull/929">#929</a></li>
</ul>
<p>Added:</p>
<ul>
<li>Add Windows fat binary gem for Ruby-3.1</li>
</ul>
<p>Removed:</p>
<ul>
<li>Remove Windows fat binary gem for Ruby < 2.4</li>
</ul>larskanis