mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-05-12 04:31:14 +00:00
Update version number to 1.3.0 and update release notes (#2821)
And refine the code format for wasm_export.h.
This commit is contained in:
parent
67a887e2d3
commit
ac602bda32
165
RELEASE_NOTES.md
165
RELEASE_NOTES.md
|
@ -1,3 +1,168 @@
|
||||||
|
## WAMR-1.3.0
|
||||||
|
|
||||||
|
### Breaking Changes
|
||||||
|
- Abstract POSIX filesystem functions (#2585)
|
||||||
|
- Change API wasm_runtime_set_wasi_args_ex's arguments
|
||||||
|
`int stdinfd/stdoutfd/stderrfd` to `int64_t stdinfd/stdoutfd/stderrfd`
|
||||||
|
- core/iwasm: Support mapped file system access on non-libuv WASI (#2628)
|
||||||
|
- Enable mapping host directories to guest directories by parsing
|
||||||
|
the `map_dir_list` argument in API `wasm_runtime_init_wasi` for libc-wasi
|
||||||
|
- Support muti-module for AOT mode (#2482)
|
||||||
|
- Add argument `package_type_t module_type` for module_reader callback
|
||||||
|
- Generate jitdump to support linux perf for LLVM JIT (#2788)
|
||||||
|
- Add a field `bool linux_perf_support` in RuntimeInitArgs
|
||||||
|
- Remove provision of unnecessary fd rights (#2579)
|
||||||
|
- libc-wasi: Conditionally support SYNC flags (#2581)
|
||||||
|
|
||||||
|
### New Features
|
||||||
|
- Support muti-module for AOT mode (#2482)
|
||||||
|
- Implement libc-wasi for Windows platform (#2740)
|
||||||
|
- Implement module instance context APIs (#2436)
|
||||||
|
- Implement async termination of blocking thread (#2516)
|
||||||
|
- Generate jitdump to support linux perf for LLVM JIT (#2788)
|
||||||
|
- Add Cosmopolitan Libc Platform (#2598)
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
- sgx-ra: Disable the building of samples (#2507)
|
||||||
|
- Handle a return from wasi _start function correctly (#2529)
|
||||||
|
- fd_object_release: Preserve errno (#2535)
|
||||||
|
- Fix build error with ancient GCC (4.8) (#2553)
|
||||||
|
- Fix compiling error for RT-Thread (#2569)
|
||||||
|
- Fix potential unaligned store issue when extra return value is v128 (#2583)
|
||||||
|
- Fix loader push_pop_frame_ref_offset (#2590)
|
||||||
|
- Fix compilation error on Android platform (#2594)
|
||||||
|
- Ignore handling SIG_DFL/SIG_IGN for previous sig action (#2589)
|
||||||
|
- Fix nightly run sanitizer error in Fast JIT (#2601)
|
||||||
|
- Check ValueKind before extracting a constant int value (#2595)
|
||||||
|
- Patch implementations of vfbinop(min,max,pmin,pax) (#2584)
|
||||||
|
- Improve stack trace dump and fix coding guideline CI (#2599)
|
||||||
|
- aot_resolve_stack_sizes: Disable the size check for now (#2608)
|
||||||
|
- Remove module instance from hashmap in wasi_nn_destroy (#2613)
|
||||||
|
- Fix label index out-of-range references in op_br_table_cache (#2615)
|
||||||
|
- Fix compilation of shift opcodes on x86_64 and i386 architectures (#2619)
|
||||||
|
- Fix potential issue in aot compiler when translating block opcodes (#2622)
|
||||||
|
- Use another default pipeline when opt-level is 0 (#2624)
|
||||||
|
- Fix AOT shift operations for indirect constants (#2627)
|
||||||
|
- Fix fast-interp "pre-compiled label offset out of range" issue (#2659)
|
||||||
|
- Revert "Strip static and shared libraries of iwasm to reduce the binary size (#2431)" (#2669)
|
||||||
|
- Fix windows compilation on C++20 (#2670)
|
||||||
|
- Fix fast-jit f32/f64 truncate to i32/i64 (#2671)
|
||||||
|
- Fix use getrandom on cosmopolitan libc (#2674)
|
||||||
|
- Fix repeatedly initialize shared memory data and protect the memory's fields (#2673)
|
||||||
|
- Minor fixes for Go bindings (#2676)
|
||||||
|
- Fix issues reported by Coverity (#2681)
|
||||||
|
- Add more buffer boundary checks in wasm loader (#2734)
|
||||||
|
- Grab cluster->lock when modifying exec_env->module_inst (#2685)
|
||||||
|
- Fix CMSIS import with Zephyr 3.4+ (#2744)
|
||||||
|
- Fix log messages in Zephyr example (#2761)
|
||||||
|
- Fix fast-jit callnative translation (#2765)
|
||||||
|
- aot compiler: Disable musttail for thumb (#2771)
|
||||||
|
- Fix data/elem drop (#2747)
|
||||||
|
- Fix formatting in aot_dump_perf_profiling (#2796)
|
||||||
|
- Fix formatting in wasm_dump_perf_profiling (#2799)
|
||||||
|
- Fix memory.init opcode issue in fast-interp (#2798)
|
||||||
|
- aot compiler: Fix handle next reachable if block (#2793)
|
||||||
|
- Fix configurable bounds checks typo (#2809)
|
||||||
|
- Attestation: Free JSON from the Wasm module heap (#2803)
|
||||||
|
- Update Zephyr support to v3.5.0 and make instructions generic to boards (#2805)
|
||||||
|
- Return error when shutdown() fails (#2801)
|
||||||
|
- iwasm: Print help when meeting unknown cmd options (#2824)
|
||||||
|
- Fix fast-jit accessing shared memory's fields issue (#2841)
|
||||||
|
- Fix wasm loader handle op_br_table and op_drop (#2864)
|
||||||
|
- Fix block with type issue in fast interp (#2866)
|
||||||
|
|
||||||
|
### Enhancements
|
||||||
|
- Implement strict validation of thread IDs according to the specification (#2521)
|
||||||
|
- Stop abusing shared memory lock to protect exception (#2509)
|
||||||
|
- Implement os_usleep for posix (#2517)
|
||||||
|
- set_exception_visitor: Remove the special case for wasi proc exit (#2525)
|
||||||
|
- Revert "Return error when exception was raised after main thread finishes" (#2524)
|
||||||
|
- libc-wasi: Remove unused code (#2528)
|
||||||
|
- Add callback to handle memory.grow failures (#2522)
|
||||||
|
- Add context to enlarge memory error callback (#2546)
|
||||||
|
- Add ARM aeabi symbol for clearing memory content in a specific range (#2531)
|
||||||
|
- Unifdef -U WASMTIME_SSP_STATIC_CURFDS (#2533)
|
||||||
|
- Fix typo for IP address buffer (#2532)
|
||||||
|
- Add an API to terminate instance (#2538)
|
||||||
|
- Add user to enlarge memory error callback (#2546)
|
||||||
|
- runtest.py: Show accurate case amount in summary (#2549)
|
||||||
|
- Allow using custom signal handler from non-main thread (#2551)
|
||||||
|
- Return __WASI_EINVAL from fd_prestat_dir_name (#2580)
|
||||||
|
- Support AOT compiler with LLVM 17 (#2567)
|
||||||
|
- Add support for closing/renumbering preopen fds (#2578)
|
||||||
|
- Enable AOT usage on M1 mac (#2618)
|
||||||
|
- core/iwasm: Support mapped file system access on non-libuv WASI (#2628)
|
||||||
|
- Enable MASM automatically in runtime_lib.cmake (#2634)
|
||||||
|
- Abstract POSIX filesystem functions (#2585)
|
||||||
|
- Implement wasi clock_time/clock_res get (#2637)
|
||||||
|
- Fix several typo/warning/unused-code issues (#2655)
|
||||||
|
- Partial windows filesystem implementation (#2657)
|
||||||
|
- Apply no_sanitize_address for clang compiler in several places (#2663)
|
||||||
|
- Refactor clock functions to use WASI types (#2666)
|
||||||
|
- Refine lock/unlock shared memory (#2682)
|
||||||
|
- Fix several AOT compiler issues (#2697)
|
||||||
|
- Fix AOT compiler simd shift opcodes (#2715)
|
||||||
|
- Fix invalid use of jit_reg_is_const_val in fast-jit (#2718)
|
||||||
|
- Use user defined malloc/free functions for user defined memory allocator (#2717)
|
||||||
|
- Move WASI types into separate header (#2724)
|
||||||
|
- Provide default vprintf on UWP (#2725)
|
||||||
|
- Fix typo in Zephyr simple example (#2738)
|
||||||
|
- Fix switch-case fallthrough compilation warning (#2753)
|
||||||
|
- Add eabihf ABI support and set vendor-sys of bare-metal targets (#2745)
|
||||||
|
- Return uint32 from WASI functions (#2749)
|
||||||
|
- Add compilation flag to enable/disable heap corruption check (#2766)
|
||||||
|
- Extend os_mmap to support map file from fd (#2763)
|
||||||
|
- Fix printing ref.extern addresses in wasm_application.c (#2774)
|
||||||
|
- Remove unused JitBitmap (#2775)
|
||||||
|
- Use next generation crypto API on Windows (#2769)
|
||||||
|
- More precise help info of enabled targets for wamrc (#2783)
|
||||||
|
- Refine atomic operation flags in bh_atomic.h (#2780)
|
||||||
|
- Fix comment in WAMR_MEM_DUAL_BUS_MIRROR (#2791)
|
||||||
|
- Fix return type in wasm_loader_get_custom_section (#2794)
|
||||||
|
- Add support for custom sections in nuttx (#2795)
|
||||||
|
- Change is_shared_memory type from bool to uint8 (#2800)
|
||||||
|
- Fix typos in zephyr platform struct descriptions (#2818)
|
||||||
|
- Access linear memory size atomically (#2834)
|
||||||
|
- Output warning and quit if import/export name contains '\00' (#2806)
|
||||||
|
- Use wasm_config_t to pass private configuration to wasm_engine_new (#2837)
|
||||||
|
- core/iwasm/interpreter/wasm_loader.c: remove an extra validation (#2845)
|
||||||
|
- Don't add "+d" to riscv cpu features if already given (#2855)
|
||||||
|
|
||||||
|
### Others
|
||||||
|
- Add mutex stress test (#2472)
|
||||||
|
- Add unit tests for the tid allocator (#2519)
|
||||||
|
- Add support for running tests on apple M1 macs (#2554)
|
||||||
|
- export_native_api.md: Add a note about thread termination (#2572)
|
||||||
|
- test_wamr.sh: Print a bit more meaningful message (#2574)
|
||||||
|
- run_wasi_tests.sh: Provide stdin by ourselves (#2576)
|
||||||
|
- Fix a few issues in "run_wasi_tests.sh: provide stdin by ourselves" (#2582)
|
||||||
|
- Fix compile error of tsf benchmark (#2588)
|
||||||
|
- test_wamr.sh: Bump wasi-testsuite version (#2568)
|
||||||
|
- samples/inst-context-threads: Add a brief explanation (#2592)
|
||||||
|
- doc/memory_tune.md: "remove malloc" hack is not relevant to wasi-threads (#2603)
|
||||||
|
- Refactor stress tests to make them runnable in reactor mode (#2614)
|
||||||
|
- Run rust tests from wasi-testsuite (#2484)
|
||||||
|
- spec-test-script: Fix NaN comparision between v128 values (#2605)
|
||||||
|
- CI: Enable testing AOT multi-module feature (#2621)
|
||||||
|
- Vote for nomination of Woods, Chris and Trenner, Thomas as TSC members (#2638)
|
||||||
|
- Add tsan for fast interp and aot (#2679)
|
||||||
|
- Enable WASI tests on Windows CI (#2699)
|
||||||
|
- docs: Fix typo in export native APIs doc (#2750)
|
||||||
|
- Update RISC-V compilers in Nuttx compilation CI and spec test CI (#2756)
|
||||||
|
- Enable more LLVM backends for the release wamrc binary (#2778)
|
||||||
|
- Disable FPU in NuttX spec test (#2781)
|
||||||
|
- Fix broken links in app-mgr README.md (#2786)
|
||||||
|
- Fix build error of libsodium benchmark (#2792)
|
||||||
|
- Fix wamr-test-suites script for macos (#2819)
|
||||||
|
- Run spec test for classic/fast-interp in NuttX CI (#2817)
|
||||||
|
- test_wamr.sh: Don't bother to build shared library (#2844)
|
||||||
|
- doc/build_wamr.md: Fix links to RISC-V named ABIs (#2852)
|
||||||
|
- Fix typos of CIDR in docs and help text (#2851)
|
||||||
|
- Enable spectest on riscv64 (#2843)
|
||||||
|
- Update FPU configuration in spec_test_on_nuttx.yml (#2856)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## WAMR-1.2.3
|
## WAMR-1.2.3
|
||||||
|
|
||||||
### Breaking Changes
|
### Breaking Changes
|
||||||
|
|
|
@ -118,7 +118,7 @@ typedef union MemAllocOption {
|
||||||
void *realloc_func;
|
void *realloc_func;
|
||||||
void *free_func;
|
void *free_func;
|
||||||
/* allocator user data, only used when
|
/* allocator user data, only used when
|
||||||
WASM_MEM_ALLOC_WITH_USER_DATA is defined */
|
WASM_MEM_ALLOC_WITH_USER_DATA is defined */
|
||||||
void *user_data;
|
void *user_data;
|
||||||
} allocator;
|
} allocator;
|
||||||
} MemAllocOption;
|
} MemAllocOption;
|
||||||
|
@ -149,7 +149,7 @@ typedef struct RuntimeInitArgs {
|
||||||
uint32_t n_native_symbols;
|
uint32_t n_native_symbols;
|
||||||
|
|
||||||
/* maximum thread number, only used when
|
/* maximum thread number, only used when
|
||||||
WASM_ENABLE_THREAD_MGR is defined */
|
WASM_ENABLE_THREAD_MGR is defined */
|
||||||
uint32_t max_thread_num;
|
uint32_t max_thread_num;
|
||||||
|
|
||||||
/* Debug settings, only used when
|
/* Debug settings, only used when
|
||||||
|
@ -320,7 +320,8 @@ wasm_runtime_is_xip_file(const uint8_t *buf, uint32_t size);
|
||||||
/**
|
/**
|
||||||
* Callback to load a module file into a buffer in multi-module feature
|
* Callback to load a module file into a buffer in multi-module feature
|
||||||
*/
|
*/
|
||||||
typedef bool (*module_reader)(package_type_t module_type,const char *module_name,
|
typedef bool (*module_reader)(package_type_t module_type,
|
||||||
|
const char *module_name,
|
||||||
uint8_t **p_buffer, uint32_t *p_size);
|
uint8_t **p_buffer, uint32_t *p_size);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -880,6 +881,7 @@ wasm_application_execute_main(wasm_module_inst_t module_inst,
|
||||||
WASM_RUNTIME_API_EXTERN bool
|
WASM_RUNTIME_API_EXTERN bool
|
||||||
wasm_application_execute_func(wasm_module_inst_t module_inst,
|
wasm_application_execute_func(wasm_module_inst_t module_inst,
|
||||||
const char *name, int32_t argc, char *argv[]);
|
const char *name, int32_t argc, char *argv[]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get exception info of the WASM module instance.
|
* Get exception info of the WASM module instance.
|
||||||
*
|
*
|
||||||
|
@ -942,6 +944,7 @@ wasm_runtime_terminate(wasm_module_inst_t module_inst);
|
||||||
WASM_RUNTIME_API_EXTERN void
|
WASM_RUNTIME_API_EXTERN void
|
||||||
wasm_runtime_set_custom_data(wasm_module_inst_t module_inst,
|
wasm_runtime_set_custom_data(wasm_module_inst_t module_inst,
|
||||||
void *custom_data);
|
void *custom_data);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the custom data within a WASM module instance.
|
* Get the custom data within a WASM module instance.
|
||||||
*
|
*
|
||||||
|
@ -961,6 +964,7 @@ wasm_runtime_get_custom_data(wasm_module_inst_t module_inst);
|
||||||
WASM_RUNTIME_API_EXTERN void
|
WASM_RUNTIME_API_EXTERN void
|
||||||
wasm_runtime_set_bounds_checks(wasm_module_inst_t module_inst,
|
wasm_runtime_set_bounds_checks(wasm_module_inst_t module_inst,
|
||||||
bool enable);
|
bool enable);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if the memory bounds checks flag is enabled for a WASM module instance.
|
* Check if the memory bounds checks flag is enabled for a WASM module instance.
|
||||||
*
|
*
|
||||||
|
@ -970,6 +974,7 @@ wasm_runtime_set_bounds_checks(wasm_module_inst_t module_inst,
|
||||||
WASM_RUNTIME_API_EXTERN bool
|
WASM_RUNTIME_API_EXTERN bool
|
||||||
wasm_runtime_is_bounds_checks_enabled(
|
wasm_runtime_is_bounds_checks_enabled(
|
||||||
wasm_module_inst_t module_inst);
|
wasm_module_inst_t module_inst);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Allocate memory from the heap of WASM module instance
|
* Allocate memory from the heap of WASM module instance
|
||||||
*
|
*
|
||||||
|
@ -1344,7 +1349,8 @@ wasm_externref_objdel(wasm_module_inst_t module_inst, void *extern_obj);
|
||||||
*
|
*
|
||||||
* @param module_inst the WASM module instance that the extern object
|
* @param module_inst the WASM module instance that the extern object
|
||||||
* belongs to
|
* belongs to
|
||||||
* @param extern_obj the external object to which to set the `extern_obj_cleanup` cleanup callback.
|
* @param extern_obj the external object to which to set the
|
||||||
|
* `extern_obj_cleanup` cleanup callback.
|
||||||
* @param extern_obj_cleanup a callback to release `extern_obj`
|
* @param extern_obj_cleanup a callback to release `extern_obj`
|
||||||
*
|
*
|
||||||
* @return true if success, false otherwise
|
* @return true if success, false otherwise
|
||||||
|
@ -1552,11 +1558,11 @@ WASM_RUNTIME_API_EXTERN void
|
||||||
wasm_runtime_destroy_context_key(void *key);
|
wasm_runtime_destroy_context_key(void *key);
|
||||||
|
|
||||||
WASM_RUNTIME_API_EXTERN void
|
WASM_RUNTIME_API_EXTERN void
|
||||||
wasm_runtime_set_context(wasm_module_inst_t inst, void *key,
|
wasm_runtime_set_context(wasm_module_inst_t inst, void *key, void *ctx);
|
||||||
void *ctx);
|
|
||||||
WASM_RUNTIME_API_EXTERN void
|
WASM_RUNTIME_API_EXTERN void
|
||||||
wasm_runtime_set_context_spread(wasm_module_inst_t inst, void *key,
|
wasm_runtime_set_context_spread(wasm_module_inst_t inst, void *key, void *ctx);
|
||||||
void *ctx);
|
|
||||||
WASM_RUNTIME_API_EXTERN void *
|
WASM_RUNTIME_API_EXTERN void *
|
||||||
wasm_runtime_get_context(wasm_module_inst_t inst, void *key);
|
wasm_runtime_get_context(wasm_module_inst_t inst, void *key);
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,6 @@
|
||||||
#ifndef _WAMR_VERSION_H_
|
#ifndef _WAMR_VERSION_H_
|
||||||
#define _WAMR_VERSION_H_
|
#define _WAMR_VERSION_H_
|
||||||
#define WAMR_VERSION_MAJOR 1
|
#define WAMR_VERSION_MAJOR 1
|
||||||
#define WAMR_VERSION_MINOR 2
|
#define WAMR_VERSION_MINOR 3
|
||||||
#define WAMR_VERSION_PATCH 3
|
#define WAMR_VERSION_PATCH 0
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue
Block a user