Releases: WebAssembly/wasi-sdk
wasi-sdk-16
- Update to LLVM 14.0.4.
- Update wasi-libc to 30094b6ed05f19cee102115215863d185f2db4f0.
- Fix utimensat to avoid passing uninitialized values into WASI calls.
- Optimize memcpy etc. using bulk-memory
- Update to musl 1.2.3.
- Fix
gettimeofday
to correctly handle a null argument. - Remove support for
__original_main
. (#295)
wasi-sdk-15
Major updates include:
- Update to LLVM 14.0.
- Update to the latest wasi-libc
- Add support for
accept
andaccept4
- Add support for
DTTOIF
andIFTODT
. - Add support for
utimes
andfutimesat
.
- Add support for
wasi-sdk-14
wasi-sdk-13 accidentally included an older version of LLVM. This
release corrects the error, and fixes a packaging error on Windows.
wasi-sdk-13
- Update to the LLVM 13.0 release.
wasi-sdk-12
wasi-sdk changes since wasi-sdk-11:
- Build and test SDK without requiring root (sudo) access (#143)
- Drop support for LLVM 8.0 (#151)
- Update to LLVM 11.0 (#110)
- Build windows SDK with MSVC instead of gcc (#164)
- Update how wasi-sdk uses cmake (#161)
- fix deb build (#167)
wasi-libc changes since wasi-sdk-11:
- Rename
__prepare_for_exit
to__wasm_call_dtors
(WebAssembly/wasi-libc#201) - Comment a use of
__attribute__((visibility("protected")))
(WebAssembly/wasi-libc#204) - Redefine the
access
bits to be compatible with other systems (WebAssembly/wasi-libc#210) - Activate use of __heap_base (WebAssembly/wasi-libc#215)
- New-style command support (WebAssembly/wasi-libc#203)
- Add basic emulation of getcwd/chdir (WebAssembly/wasi-libc#214)
- Update to musl 1.2.1 (WebAssembly/wasi-libc#222)
- Fix sinh's sign handling (WebAssembly/wasi-libc#225)
wasi-sdk-11
wasi-sdk changes since wasi-sdk-10:
- Test signals (#140)
- pull in wasi-libc in prep for release 11 (#141)
- Add a basic mmap and munmap testcase. (#137)
- Remove branch from LLVM submodule (#136)
- Honor $CC and $CXX in test runner (#132)
- update links to wasm org, avoid github redirect (#130)
- Fix windows SDK builds (#126)
- Update name of github artifact upload after #123 (#124)
- Build against ubuntu xenial (#123)
wasi-libc changes since wasi-sdk-10:
- Avoid calling
poll_oneoff
with zero subscriptions. (#162) - Merge the basics component into libc-bottom-half. (#199)
- Rewrite the preopen functionality. (#173)
- Replace old <signal.h> support with emulated <signal.h> support. (#183)
- Reactor support. (#74)
- Make mmap() possible to use in a conformant way. (#197)
- Make munmap() actually work. (#198)
- CI: use llvm 10.0.0 release (#194)
- github ci: download llvm over https, add -L flag to curl
Note: The artifact wasi-sdk_11.0_amd64.deb
is identical to wasi-sdk_11.0_amd64_ubuntu16.04.deb
. In the future we will only upload the deb built on Ubuntu 16.04, and not include the _ubuntu16.04
suffix. See #142
wasi-sdk-10
wasi-sdk-10
is a replacement for wasi-sdk-9
. Changes are given against the last good release, wasi-sdk-8
.
This release is the first release targeting WASI Snapshot 1, and the first release since the repository was moved under the WebAssembly org.
SDK Changes:
- switch CI from Azure Pipelines to GitHub Actions
- Add a test suite
- Use LLVM 10.0.0 release
- Strip symbols from executables
- Add beginner-level documentation for installation and use
- Add LICENSE file, "Apache-2.0 WITH LLVM-exception"
- move home to WebAssembly org
- test Docker build in CI
libc changes:
CI: use llvm 10.0.0 release (#194)
github ci: download llvm over https, add -L flag to curl
Added utime.h (#188)
regenerate api.h
gen-headers: make handle output consistient with prior
wasi submodule: point to latest (witx 0.8.5 release)
Update libc-top-half/musl/README
Update URL
Fix references to musl version
Makefile refactoring; NFC (#186)
Lazy-initialize the environment variables. (#184)
Fix -std=gnu17 when generating predefined_macros.txt (#187)
Mention libcxx and libcxxabi too.
Update WASI Libc's README.md.
Multi-license wasi-libc under Apache and MIT licenses. (#174)
Add support for `__main_argc_argv`.
Update to musl 1.2.0.
Update to musl 1.1.24.
point at WASI with tagged unions merged into master
rebased wasi repo branch
main: get more useful help by requiring subcommand
minor change in union AST in wasi- tag is namedtype
libc: change to flattened event struct
update to WASI where snashot event_u flattened to struct
cloudlibc & libpreopen: changes for tagged unions
wasi/api.h: regenerated with tagged unions
WASI: tagged unions PR wip
wasi-headers: unions are tagged now
Define a_clz_32 for musl so that it doesn't use a software version. (#171)
WASI libc supports environment variables; update the README. (#172)
Remove unused cloudlibc headers. (#170)
fix macos filename, use https
CI: upgrade to llvm 9.0.0
remove no-self-update workaround for windows azure
deprecate azure pipelines CI, build libc on GH Actions
Don't call `free` on paths which are about to call `_Exit`. (#161)
gen-headers: Generate assertions of layout from witx (#149)
Correct minor typo in c_headers.rs (#166)
Convert more wasi-libc code to `//`-style comments. (#153)
Improvements to wasi-headers tool (#160)
Fix environment variable init to exit successfully. (#159)
Move math source files. (#151)
Avoid using cast expressions in WASI API constants. (#148)
Update signal macros after upgrade to snapshot1 (#144)
github actions: pin checkout action to v1 (#145)
Use constructor functions for optional init routines. (#142)
c header generation updated for reorganized witx ast (#139)
Correct the version of #136 on master (#141)
Wasi snapshot preview1 (#140)
Ignore rights in libpreopen. (#129)
Make the `__original_main` definition weak, fixing -flto. (#138)
Optimize `fmin`, `fmax`, etc. (#120)
Don't pre-check capabilities in `openat`. (#130)
Use consistent style for wasi-libc C source files. (#131)
Fix unintended recursion in __wasilibc_register_preopened_fd. (#133)
Avoid a `strdup` call in `__wasilibc_populate_libpreopen`. (#128)
Don't link in libpreopen initialization code when it isn't needed. (#127)
Temporarily disable the use of `__heap_base`. (#132)
Use __heap_base by dlmalloc (#114)
Avoid varargs conventions when calling open (#126)
Revamp and simplify the libpreopen code. (#110)
Remove more unsupported headers. (#123)
redacted release: wasi-sdk-9
Breaking changes:
- This is the first release based on WASI snapshot 1.
- The linux build
wasi-sdk-9.0-ubuntu18.04.tar.gz
requires Ubuntu 18.04.wasi-sysroot
and theclang
builtins can still be installed on any system already shipping with LLVM >= 8. - Due to regressions this release has been redacted, we will release
wasi-sdk-10
shortly to take its place
wasi-sdk-8
Note: Path names within the wask-sdk tar archive no longer contain opt/wasi
. This means that paths to WASI tools will all be shorter, but build scripts will need to be updated accordingly.
In this release, wasi-libc includes optimizations to avoid linking in command-line argument initialization code in programs that don't use command-line arguments (eg. `int main(void)), and similar to avoid linking in environment-variable initalization code in programs that don't access environment variables.
And, the wasi-sdk installation now includes common tools such as nm
, ar
, strings
, and others.
wasi-sdk-7
Changes to wasi-libc 8df0d4c..c9a5733:
Set the MALLOC_ALIGNMENT to 16.
When checking undefined symbol list, ignore certain llvm buildins
Fix a warning about a spurious redundant static keyword.
Update docs to say "libc" rather than "sysroot" where applicable.
WASI libc's dirent does have t_type, so define _DIRENT_HAVE_D_TYPE.
Fix DIRENT_HAVE_D* macros.
Disable the lseek optimization in C++.
Add Azure Pipelines definition (#78)
Update to musl 1.1.23.
Changes to llvm:
use release tag llvmorg-9.0.0
Changes to wasi-sdk:
Documentation updates