public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: hydai <hydai@hyd.ai>
To: git-commits@fedoraproject.org
Subject: [rpms/wasmedge] f43: Release 0.16.1
Date: Tue, 02 Jun 2026 04:24:45 GMT [thread overview]
Message-ID: <178037428513.1.9780015042912978082.rpms-wasmedge-2deb44698f7b@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/wasmedge
Branch : f43
Commit : 2deb44698f7b7a165a2e4fefadcb3a351f8921b9
Author : hydai <hydai@hyd.ai>
Date : 2026-01-29T10:57:10+00:00
Stats : +149/-55 in 5 file(s)
URL : https://src.fedoraproject.org/rpms/wasmedge/c/2deb44698f7b7a165a2e4fefadcb3a351f8921b9?branch=f43
Log:
Release 0.16.1
Signed-off-by: hydai <hydai@hyd.ai>
---
diff --git a/.gitignore b/.gitignore
index 2010a24..f7f5b05 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,4 @@
/WasmEdge-0.14.0-src.tar.gz
/WasmEdge-0.14.1-src.tar.gz
/WasmEdge-0.15.0-src.tar.gz
+/WasmEdge-0.16.1-src.tar.gz
diff --git a/0001-fix-refactor-Poller-context-handling-to-use-pointer-instead-of-wrapper.patch b/0001-fix-refactor-Poller-context-handling-to-use-pointer-instead-of-wrapper.patch
new file mode 100644
index 0000000..bc373d6
--- /dev/null
+++ b/0001-fix-refactor-Poller-context-handling-to-use-pointer-instead-of-wrapper.patch
@@ -0,0 +1,131 @@
+From 3b9c754fbe96289452ef76951e783e5a7d7eacc7 Mon Sep 17 00:00:00 2001
+From: "Wang-Yang, Li" <7088579+LFsWang@users.noreply.github.com>
+Date: Tue, 13 Jan 2026 01:24:29 +0800
+Subject: [PATCH] fix: refactor Poller context handling to use pointer instead
+ of wrapper (#4509)
+
+fix: refactor Poller context handling to use direct reference instead of wrapper
+
+Signed-off-by: LFsWang <tnst92002@gmail.com>
+---
+ include/host/wasi/environ.h | 2 +-
+ include/host/wasi/inode.h | 2 +-
+ lib/host/wasi/inode-linux.cpp | 12 ++++++------
+ lib/host/wasi/inode-macos.cpp | 2 +-
+ lib/host/wasi/inode-win.cpp | 2 +-
+ 5 files changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/include/host/wasi/environ.h b/include/host/wasi/environ.h
+index 83783a2b..2e2f3b97 100644
+--- a/include/host/wasi/environ.h
++++ b/include/host/wasi/environ.h
+@@ -1284,7 +1284,7 @@ public:
+ void close(std::shared_ptr<VINode> Node) noexcept { VPoller::close(Node); }
+
+ private:
+- Environ &env() noexcept { return static_cast<Environ &>(Ctx.get()); }
++ Environ &env() noexcept { return static_cast<Environ &>(*Ctx); }
+ };
+
+ inline WasiExpect<EVPoller>
+diff --git a/include/host/wasi/inode.h b/include/host/wasi/inode.h
+index 758cdb03..15bad334 100644
+--- a/include/host/wasi/inode.h
++++ b/include/host/wasi/inode.h
+@@ -911,7 +911,7 @@ public:
+ bool ok() noexcept;
+
+ protected:
+- std::reference_wrapper<PollerContext> Ctx;
++ PollerContext *Ctx;
+
+ private:
+ Span<__wasi_event_t> WasiEvents;
+diff --git a/lib/host/wasi/inode-linux.cpp b/lib/host/wasi/inode-linux.cpp
+index 01c0e290..e6875a19 100644
+--- a/lib/host/wasi/inode-linux.cpp
++++ b/lib/host/wasi/inode-linux.cpp
+@@ -1592,7 +1592,7 @@ Poller::Poller(PollerContext &C) noexcept
+ ::epoll_create(32)
+ #endif
+ ),
+- Ctx(C) {
++ Ctx(&C) {
+ #if !__GLIBC_PREREQ(2, 9)
+ if (auto Res = ::fcntl(Fd, F_SETFD, FD_CLOEXEC); unlikely(Res != 0)) {
+ FdHolder::reset();
+@@ -1623,7 +1623,7 @@ void Poller::clock(__wasi_clockid_t Clock, __wasi_timestamp_t Timeout,
+ Event.userdata = UserData;
+ Event.type = __WASI_EVENTTYPE_CLOCK;
+
+- if (auto Res = Ctx.get().acquireTimer(Clock); unlikely(!Res)) {
++ if (auto Res = Ctx->acquireTimer(Clock); unlikely(!Res)) {
+ Event.Valid = true;
+ Event.error = Res.error();
+ return;
+@@ -1633,7 +1633,7 @@ void Poller::clock(__wasi_clockid_t Clock, __wasi_timestamp_t Timeout,
+
+ auto &Timer = Timers.back();
+ if (auto Res = Timer.setTime(Timeout, Precision, Flags); unlikely(!Res)) {
+- Ctx.get().releaseTimer(std::move(Timer));
++ Ctx->releaseTimer(std::move(Timer));
+ Timers.pop_back();
+ Event.Valid = true;
+ Event.error = Res.error();
+@@ -1657,7 +1657,7 @@ void Poller::clock(__wasi_clockid_t Clock, __wasi_timestamp_t Timeout,
+ if (auto Res = ::epoll_ctl(Fd, EPOLL_CTL_ADD, Timer.Fd, &EPollEvent);
+ unlikely(Res < 0)) {
+ FdDatas.erase(Iter);
+- Ctx.get().releaseTimer(std::move(Timer));
++ Ctx->releaseTimer(std::move(Timer));
+ Timers.pop_back();
+ Event.Valid = true;
+ Event.error = fromErrNo(errno);
+@@ -1666,7 +1666,7 @@ void Poller::clock(__wasi_clockid_t Clock, __wasi_timestamp_t Timeout,
+
+ return;
+ } catch (std::bad_alloc &) {
+- Ctx.get().releaseTimer(std::move(Timer));
++ Ctx->releaseTimer(std::move(Timer));
+ Timers.pop_back();
+ Event.Valid = true;
+ Event.error = __WASI_ERRNO_NOMEM;
+@@ -1895,7 +1895,7 @@ void Poller::wait() noexcept {
+ // `this` as the dummy parameter.
+ ::epoll_ctl(Fd, EPOLL_CTL_DEL, Timer.Fd,
+ reinterpret_cast<struct epoll_event *>(this));
+- Ctx.get().releaseTimer(std::move(Timer));
++ Ctx->releaseTimer(std::move(Timer));
+ }
+
+ std::swap(FdDatas, OldFdDatas);
+diff --git a/lib/host/wasi/inode-macos.cpp b/lib/host/wasi/inode-macos.cpp
+index a622f71a..bb9e57ff 100644
+--- a/lib/host/wasi/inode-macos.cpp
++++ b/lib/host/wasi/inode-macos.cpp
+@@ -1392,7 +1392,7 @@ WasiExpect<void> INode::updateStat() const noexcept {
+ return {};
+ }
+
+-Poller::Poller(PollerContext &C) noexcept : FdHolder(::kqueue()), Ctx(C) {}
++Poller::Poller(PollerContext &C) noexcept : FdHolder(::kqueue()), Ctx(&C) {}
+
+ WasiExpect<void> Poller::prepare(Span<__wasi_event_t> E) noexcept {
+ WasiEvents = E;
+diff --git a/lib/host/wasi/inode-win.cpp b/lib/host/wasi/inode-win.cpp
+index f2b2a33a..b9f2cf27 100644
+--- a/lib/host/wasi/inode-win.cpp
++++ b/lib/host/wasi/inode-win.cpp
+@@ -2179,7 +2179,7 @@ WasiExpect<__wasi_filesize_t> INode::filesize() const noexcept {
+
+ bool INode::canBrowse() const noexcept { return SavedVFSFlags & VFS::Read; }
+
+-Poller::Poller(PollerContext &C) noexcept : Ctx(C) {}
++Poller::Poller(PollerContext &C) noexcept : Ctx(&C) {}
+
+ WasiExpect<void> Poller::prepare(Span<__wasi_event_t> E) noexcept {
+ WasiEvents = E;
+--
+2.52.0
+
+
diff --git a/0001-fix-runtime-refine-the-overflow-detection-when-wrapp.patch b/0001-fix-runtime-refine-the-overflow-detection-when-wrapp.patch
deleted file mode 100644
index c332c3e..0000000
--- a/0001-fix-runtime-refine-the-overflow-detection-when-wrapp.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 37cc9fa19bd23edbbdaa9252059b17f191fa4d17 Mon Sep 17 00:00:00 2001
-From: YiYing He <yiying@secondstate.io>
-Date: Wed, 17 Dec 2025 20:27:38 +0800
-Subject: [PATCH] fix(runtime): refine the overflow detection when wrapping
- memory instance
-
-Signed-off-by: YiYing He <yiying@secondstate.io>
----
- include/runtime/instance/memory.h | 24 +++++++++++++++++++-----
- 1 file changed, 19 insertions(+), 5 deletions(-)
-
-diff --git a/include/runtime/instance/memory.h b/include/runtime/instance/memory.h
-index ce511a7b..9d849598 100644
---- a/include/runtime/instance/memory.h
-+++ b/include/runtime/instance/memory.h
-@@ -241,14 +241,28 @@ public:
- return reinterpret_cast<T>(&DataPtr[Offset]);
- }
-
-- /// Get array of object at specific offset of memory.
-+ /// Get array of object with count at specific offset of memory.
- template <typename T>
-- Span<T> getSpan(uint32_t Offset, uint32_t Size) const noexcept {
-- uint32_t ByteSize = static_cast<uint32_t>(sizeof(T) * Size);
-- if (unlikely(!checkAccessBound(Offset, ByteSize))) {
-+ Span<T> getSpan(uint32_t Offset, uint32_t Count) const noexcept {
-+ uint32_t Size;
-+#if defined(_MSC_VER) && !defined(__clang__) // MSVC
-+ // Should extend for memory64 proposal.
-+ uint64_t Num =
-+ static_cast<uint64_t>(sizeof(T)) * static_cast<uint64_t>(Count);
-+ if ((Num >> 32) != 0) {
-+ return Span<T>();
-+ }
-+ Size = static_cast<uint32_t>(Num);
-+#else
-+ if (unlikely(__builtin_mul_overflow(static_cast<uint32_t>(sizeof(T)), Count,
-+ &Size))) {
-+ return Span<T>();
-+ }
-+#endif
-+ if (unlikely(!checkAccessBound(Offset, Size))) {
- return Span<T>();
- }
-- return Span<T>(reinterpret_cast<T *>(&DataPtr[Offset]), Size);
-+ return Span<T>(reinterpret_cast<T *>(&DataPtr[Offset]), Count);
- }
-
- /// Get array of object at specific offset of memory.
---
-2.43.0
-
diff --git a/sources b/sources
index 87a5719..4c29ce3 100644
--- a/sources
+++ b/sources
@@ -12,3 +12,4 @@ SHA512 (WasmEdge-0.13.5-src.tar.gz) = 9d3ece45897d2c9bb3848662fc4ab36c2e0f178450
SHA512 (WasmEdge-0.14.0-src.tar.gz) = fa9ab14f1c477e1909efe88d760a2ab9212687328a885054f0830284bc71d559ab5263eefbbc564d88280b3907d5e3145ffeff87830eb13ad1f3fc4a599e4340
SHA512 (WasmEdge-0.14.1-src.tar.gz) = cf708ad789c8d7cb8b5885d6b13dbb010fa433e93971fedb0c05dd2794ad69d79b08535c854ea8744243ff65c61f0de1b6e3fe2a981b69fc92701b4675cc80d4
SHA512 (WasmEdge-0.15.0-src.tar.gz) = 3a41f362852dd04dc441ebe10fac266703bb146100cceec64df3fce76f57960ac7dacfc9c1243f4177899a5c4d50166158908b0ec4e88e3f226cad2fd350e6cd
+SHA512 (WasmEdge-0.16.1-src.tar.gz) = b09c8d83e3627085382109ea073ecc099b57e109b419171a29ab780ee36b371de9bd1864d478c15324f29baabd0c19dda8a32a37f46a738f39e47ef6d51a0770
diff --git a/wasmedge.spec b/wasmedge.spec
index 7521160..9a61293 100644
--- a/wasmedge.spec
+++ b/wasmedge.spec
@@ -1,4 +1,4 @@
-%global version 0.15.0
+%global version 0.16.1
%global reponame WasmEdge
%global capi_soname 0
%global capi_version 0.1.0
@@ -12,8 +12,8 @@ Summary: High performance WebAssembly Virtual Machine
License: Apache-2.0 AND CC0-1.0
URL: https://github.com/%{reponame}/%{reponame}
Source0: %{url}/releases/download/%{version}/%{reponame}-%{version}-src.tar.gz
-# Patch from https://github.com/WasmEdge/WasmEdge/commit/37cc9fa19bd23edbbdaa9252059b17f191fa4d17
-Patch0: 0001-fix-runtime-refine-the-overflow-detection-when-wrapp.patch
+# Patch from https://github.com/WasmEdge/WasmEdge/commit/3b9c754fbe96289452ef76951e783e5a7d7eacc7
+Patch0: 0001-fix-refactor-Poller-context-handling-to-use-pointer-instead-of-wrapper.patch
BuildRequires: cmake
BuildRequires: gcc-c++
BuildRequires: git
@@ -104,6 +104,19 @@ cd ..
%{_includedir}/%{name}/int128.h
%{_includedir}/%{name}/version.h
%{_includedir}/%{name}/wasmedge.h
+%{_includedir}/%{name}/wasmedge_ast.h
+%{_includedir}/%{name}/wasmedge_basic.h
+%{_includedir}/%{name}/wasmedge_compiler.h
+%{_includedir}/%{name}/wasmedge_configure.h
+%{_includedir}/%{name}/wasmedge_context.h
+%{_includedir}/%{name}/wasmedge_deprecated.h
+%{_includedir}/%{name}/wasmedge_execution.h
+%{_includedir}/%{name}/wasmedge_experimental.h
+%{_includedir}/%{name}/wasmedge_instance.h
+%{_includedir}/%{name}/wasmedge_plugin.h
+%{_includedir}/%{name}/wasmedge_tools.h
+%{_includedir}/%{name}/wasmedge_value.h
+%{_includedir}/%{name}/wasmedge_vm.h
%{_libdir}/lib%{name}.so
%changelog
reply other threads:[~2026-06-02 4:24 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=178037428513.1.9780015042912978082.rpms-wasmedge-2deb44698f7b@fedoraproject.org \
--to=hydai@hyd.ai \
--cc=git-commits@fedoraproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox