<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in fuel.c</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>adff9d9d - Fix externref/anyref ownership in C/C++ API (#11799)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/fuel.c#adff9d9d</link>
        <description>Fix externref/anyref ownership in C/C++ API (#11799)* Fix externref/anyref ownership in C/C++ APIThis commit is a follow-up to #11514 which was discovered throughfailing tests in the wasmtime-py repository when updating to Wasmtime37.0.0. Effectively a combination of bugs in the Rust API meant that itwasn&apos;t possible to use `externref` or `anyref` bindings correctly. TheRust changes in this commit are:* `wasmtime_val_unroot` correctly drops the value now as opposed to  effectively being a noop from before (typo of using `as_externref` vs  `from_externref`).* `wasmtime_{anyref,externref,val}_t` now have a `Drop` implementation  in Rust to correctly drop them if a value in Rust is dropped. This is  required to correctly manage memory in the `wasmtime_func_{call,new}`  implementations, for example.* `wasmtime_{anyref,externref,val}_clone` no longer have an unnecessary  context parameter.* `wasmtime_{anyref,externref,val}_unroot` no longer have an unnecessary  context parameter.Changes in the C/C++ APIs are:* `Result::{ok,err}_ref` APIs were added in addition to the preexisting  rvalue accessors.* Loading/storing typed arguments now has an overload for `const T&amp;` and  `T&amp;&amp;` which behaves differently. Notably transferring ownership for  `T&amp;&amp;` and not for `const T&amp;`. This means that passing parameters when  calling a wasm function uses `const T&amp;`, but passing results from a  host import uses `T&amp;&amp;`.* `TypedFunc::call` now uses `const Params&amp;` instead of `Params` to  explicitly specify it doesn&apos;t modify the parameters and forces using  the `const T&amp;` store method.* `Store::gc` is now a convenience method for `store.context().gc()`* `ExternRef`, `AnyRef`, and `Val` now have ownership semantics and  destructors. This matches the spirit of #11514 for Rust but models it  in C++ as well. This required filling out move/copy  constructors/assignments.* The explicit `ExternRef` now takes `std::any` instead of `T`.* Minor issues related to ownership are fixed in `Val` bindings.Valgrind was used to ensure that there were no leaks for the test suitewhich additionally resulted in a number of `*_delete` calls being addedto tests using the C API (accidental omissions).The original goal of this change was to be a patch release for 37.0.1 toenable updating wasmtime-py to the 37.0.x releases of Wasmtime. In theend though the changes here were broad enough that I no longer feel thatthis is a good idea, so wasmtime-py will be skipping the 37 version ofWasmtime.* Run `clang-format`prtest:full

            List of files:
            /wasmtime-44.0.1/examples/fuel.c</description>
        <pubDate>Tue, 07 Oct 2025 16:36:13 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>57ba95e9 - Fixed bugs in the C thread example program and updated some comments for build command. (#11155)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/fuel.c#57ba95e9</link>
        <description>Fixed bugs in the C thread example program and updated some comments for build command. (#11155)* Remove the cargo command for examples/*.c and fix thread example code.* Add _GNU_SOURCE.

            List of files:
            /wasmtime-44.0.1/examples/fuel.c</description>
        <pubDate>Mon, 30 Jun 2025 17:37:35 +0000</pubDate>
        <dc:creator>Masashi Yoshimura &lt;yoshimura.masashi.frbs@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>8f03b22e - Remove wasm-c-api submodule (#8170)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/fuel.c#8f03b22e</link>
        <description>Remove wasm-c-api submodule (#8170)* Remove wasm-c-api submoduleThis submodule hasn&apos;t been updated in ~3 years at this point and weadditionally don&apos;t need most of the submodule. Instead add a script tocopy the files we need and verify in CI that the files are up-to-date.This also makes using the C API a bit nicer where you don&apos;t have to havetwo `include` directories with a Wasmtime source tree, just onesuffices.* Don&apos;t format wasm.h{,h} vendored files

            List of files:
            /wasmtime-44.0.1/examples/fuel.c</description>
        <pubDate>Mon, 18 Mar 2024 18:58:11 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>f8fee938 - add clang format (#7601)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/fuel.c#f8fee938</link>
        <description>add clang format (#7601)* add clang-formatWe chose WebKit style because out of all the builtin styles it seems theclosest to what already exists in wasmtime.Signed-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* c-api: don&apos;t reorder headersThe order here mattersSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* c-api: apply clang-formatSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* fiber: apply clang-formatSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* runtime: apply clang-formatSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* examples: apply clang formatSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* tests: apply clang-formatSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* ci: add clang-format checksSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* clang-format: keep braces on the same lineThis is more the existing styleSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* remove clang-formatJust use the tool defaults (LLVM)Signed-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* Fix ci nameSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* manually reformat a couple of commentsprtest:fullSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* disable formatting for doc-wasm.hSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* manually reformat wasmtime.hSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* disable formattingTo prevent a link from being brokenSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* examples: fixing build commandsSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;* fix parameter commentSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;---------Signed-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;

            List of files:
            /wasmtime-44.0.1/examples/fuel.c</description>
        <pubDate>Wed, 29 Nov 2023 18:39:04 +0000</pubDate>
        <dc:creator>Tyler Rockwood &lt;rockwotj@users.noreply.github.com&gt;</dc:creator>
    </item>
<item>
        <title>85c0a2df - Switch to simpler fuel APIs (#7298)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/fuel.c#85c0a2df</link>
        <description>Switch to simpler fuel APIs (#7298)In an effort to simplify the many fuel related APIs, simplify theinterface here to a single counter with get and set methods.Additionally the async yield is reduced to an interval of the total fuelinstead of injecting fuel, so it&apos;s easy to still reason about how muchfuel is left even with yielding turned on.Internally this works by keeping two counters - one the VM uses toincrement towards 0 for fuel, the other to track how much is in&quot;reserve&quot;. Then when we&apos;re out of gas, we pull from the reserve torefuel and continue. We use the reserve in two cases: one for overflowof the fuel (which is an i64 and the API expresses fuel as u64) and theother for async yieling, which then the yield interval acts as a cap tohow much we can refuel with.This also means that `get_fuel` can return the full range of `u64`before this change it could only return up to `i64::MAX`. This isimportant because this PR is removing the functionality to track fuelconsumption, and this makes the API less error prone for embedders totrack consumption themselves.Careful to note that the VM counter that is stored as `i64` can bepositive if an instruction &quot;costs&quot; multiple units of fuel when the fuelran out.prtest:fullSigned-off-by: Tyler Rockwood &lt;rockwood@redpanda.com&gt;

            List of files:
            /wasmtime-44.0.1/examples/fuel.c</description>
        <pubDate>Mon, 23 Oct 2023 19:50:23 +0000</pubDate>
        <dc:creator>Tyler Rockwood &lt;rockwotj@users.noreply.github.com&gt;</dc:creator>
    </item>
<item>
        <title>42e88c7b - Fix `OutOfFuel` trap code not represented in the C API. (#5230)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/fuel.c#42e88c7b</link>
        <description>Fix `OutOfFuel` trap code not represented in the C API. (#5230)This commit adds the missing &quot;out of fuel&quot; trap code to the C API.Without this, calls to `wasmtime_trap_code` will trigger an unreachable panicon traps from running out of fuel.

            List of files:
            /wasmtime-44.0.1/examples/fuel.c</description>
        <pubDate>Thu, 10 Nov 2022 20:42:26 +0000</pubDate>
        <dc:creator>Peter Huene &lt;phuene@fastly.com&gt;</dc:creator>
    </item>
<item>
        <title>2ba3025e - Add cmake compatibility to c-api (#4369)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/fuel.c#2ba3025e</link>
        <description>Add cmake compatibility to c-api (#4369)* Add cmake compatibility to c-api* Add CMake documentation to wasmtime.h* Add CMake instructions in examples* Modify CI for CMake support* Use correct rust in CI* Trigger build* Refactor run-examples* Reintroduce example_to_run in run-examples* Replace run-examples crate with cmake* Fix markdown formatting in examples readme* Fix cmake test quotes* Build rust wasm before cmake tests* Pass CTEST_OUTPUT_ON_FAILURE* Another cmake test* Handle os differences in cmake test* Fix bugs in memory and multimemory examples

            List of files:
            /wasmtime-44.0.1/examples/fuel.c</description>
        <pubDate>Fri, 22 Jul 2022 17:22:36 +0000</pubDate>
        <dc:creator>TheGreatRambler &lt;31906920+TheGreatRambler@users.noreply.github.com&gt;</dc:creator>
    </item>
<item>
        <title>7a1b7cdf - Implement RFC 11: Redesigning Wasmtime&apos;s APIs (#2897)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/fuel.c#7a1b7cdf</link>
        <description>Implement RFC 11: Redesigning Wasmtime&apos;s APIs (#2897)Implement Wasmtime&apos;s new API as designed by RFC 11. This is quite a large commit which has had lots of discussion externally, so for more information it&apos;s best to read the RFC thread and the PR thread.

            List of files:
            /wasmtime-44.0.1/examples/fuel.c</description>
        <pubDate>Thu, 03 Jun 2021 14:10:53 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>21458559 - Add example of execution limits using fuel consumption (#2869)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/fuel.c#21458559</link>
        <description>Add example of execution limits using fuel consumption (#2869)* Add example of execution limits using fuel consumption* run rustfmt* Use a more naive WAT implementation* Catch error and return cleanly* Add a C example to demonstrate fuel consumption* Add error handling for add_fuel

            List of files:
            /wasmtime-44.0.1/examples/fuel.c</description>
        <pubDate>Tue, 04 May 2021 15:39:01 +0000</pubDate>
        <dc:creator>Ryan Brewster &lt;RyanPBrewster@gmail.com&gt;</dc:creator>
    </item>
</channel>
</rss>
