Skip to content

Releases: unikraft/unikraft

v0.16.3 Telesto

20 Mar 20:38
Compare
Choose a tag to compare

We are proud to announce the latest version update of Unikraft, v0.16.3!

This release comes with many fixes and updates to the application catalog and to the documentation.

Here is the full updates list in this release:

  • arch/arm64: Update asm constraints in mte_insert_random_tag() (#1361) by @michpappas
  • doc: Update kraft link in README.md (#1359) by @PorridgeSwim
  • lib/posix-futex: Clear thread's objects upon thread exit (#1358) by @michpappas
  • lib/posix-time: Support CLOCK_REALTIME_COARSE (#1355) by @andreittr
  • lib/posix-socket: Add LIBPOSIX_FDIO config dependency (#1354) by @michpappas
  • drivers/ukbus/platform: Make UKBUS_PLATFORM_FDT conditional to parent (#1353) by @michpappas
  • lib/posix-environ: Deduplicate env variables during boot (#1352) by @skuenzer
  • scripts/checkpatch: Do not warn about symbolic permissions (#1351) by @skuenzer
  • drivers/virtio: Replace libc types with unikraft defined (#1345) by @rares-miculescu
  • drivers/ukintctlr: Replace libc types with unikraft defined (#1344) by @rares-miculescu
  • drivers/ukbus: Replace libc types with unikraft defined (#1343) by @rares-miculescu
  • checkpatch: Additional updates for compliance to coding style (#1342) by @michpappas
  • lib/posix-poll: Fix missing epoll file locking (#1338) by @andreittr
  • lib/ukvmem/arch: Do not print error message if demand paging disabled (#1334) by @mogasergiu
  • lib/nolibc: Include htonl() and ntohl() functions (#1332) by @mschlumpp
  • lib/ukintctlr: Simplify the interface of ukintctlr_platform_probe() (#1330) by @michpappas
  • drivers/virtio/net: Ensure half-page alignment for netbuf (#1328) by @mogasergiu
  • lib/nolibc: Provide fd functions without vfscore (#1327) by @andreittr
  • lib/posix-unixsocket: Fix NULL deref crash (#1326) by @andreittr
  • lib/posix-sysinfo: Use a more Linux compatible release string (#1325) by @mschlumpp
  • lib/posix-time: Alias CLOCK_MONOTONIC_RAW to CLOCK_MONOTONIC (#1324) by @mschlumpp
  • plat/kvm/x86: Fix {XSAVE,AVX,FSGSBASE} checking/enabling behavior (#1323) by @mogasergiu
  • lib/uksched: Add membarrier syscall (#1321) by @andreittr
  • lib/vfscore: Ensure we return symlink target on namei_resolve (#1320) by @mogasergiu
  • driver/virtio/blk: Ensure request header stays in-page boundaries AND some minor sglist cleanup (#1290) by @mogasergiu
  • lib/uknetdev: Add a interface for TCP segmentation offload (#1030) by @mschlumpp
  • [app-elfloader]: Consider environment variables PATH and PWD (#75) by @skuenzer
  • [app-elfloader]: Ensure args, env and auxv strings are in the information block (#71) by @mogasergiu
  • [app-helloworld-cpp]: README: Add reference to active repository (#25) by @feohuman
  • [app-helloworld]: README: Add reference to active repository (#36) by @feohuman
  • [app-helloworld]: Fix verbose build issue by modifying makefile (#16) by @ranfun
  • [app-httpreply]: README: Add reference to active repository (#21) by @feohuman
  • [app-lua]: README: Add reference to active repository (#13) by @feohuman
  • [app-nginx]: README: Redirect to active repository (#24) by @feohuman
  • [app-redis]: README: Add reference to active repository (#24) by @feohuman
  • [app-sqlite]: README: Add reference to active repository (#14) by @feohuman
  • [lib-lwip]: Ignore SO_LINGER socket option (#51) by @mogasergiu
  • [lib-musl]: libsched: Add sys/membarrier.h to provided headers (#75) by @andreittr

Updates to the application catalog:

  • feat(examples): Add Node 21 Prisma example (#104) by @razvand
  • feat(examples): Update helloworld-rs (#97) by @razvand
  • feat(node18): Use alpine Dockerfile (#95) by @razvand
  • fix(library): Add user-provided EINITRD support (#94) by @razvand
  • feat(examples): Introduce Caddy example (#93) by @razvand
  • fix(examples): Update some examples to newer README.md format (#92) by @felipehuici
  • feat(examples): Add examples and have others use runtime directive (#91) by @felipehuici
  • feat(examples): Introduce HTTP Node21 example (#90) by @razvand
  • feat(library): Introduce NodeJS 21 as library (#83) by @razvand
  • feat(library): Introduce NodeJS 20 as library (#82) by @razvand
  • feat(library): Introduce NodeJS 19 as library (#81) by @razvand
  • feat(examples): Add Redis example (#78) by @felipehuici
  • feat(examples): Add Hugo, C++ Boost, DuckDB and Flask examples (#76) by @felipehuici
  • feat(examples): Add Memcached example (#74) by @felipehuici
  • feat(examples): Add PHP example (#73) by @felipehuici
  • feat(examples): Add Ruby and Perl examples (#71) by @felipehuici
  • feat(examples): Add Rust examples (#69) by @felipehuici
  • fix(examples): Improve http-python3.10 README (#68) by @razvand
  • fix(examples): Improve README for http-python3.10 (#63) by @felipehuici
  • fix(examples): Improve README for http-python3.10 (#62) by @razvand
  • docs(redis/7.0): Indicate min memory requirement (#59) by @ChaoyiHuang
  • feat(examples): Add Node Prisma example (#56) by @razvand
  • feat(examples): Introduce HTTP Flask server as example (#55) by @razvand
  • feat(library): Introduce Hugo 0.122 as library (#53) by @razvand
  • feat(library): Introduce Memcached 1.6 as library (#49) by @razvand
  • feat(library): Introduce Perl 5.38 as library (#28) by @razvand
  • feat(library): Introduce PHP as library (#24) by @razvand
  • feat(library): Introduce Ruby as library (#23) by @razvand
  • feat(native): add tiny-http Rust server (#20) by @mkroening
  • feat(library): Introduce Skipper 0.18 (#15) by @razvand
  • feat(library): Add support for Caddy (#12) by @razvand

A big thank you also to all those who helped in the review process: Alexander Jung, Andrei Tatar, Cezar Craciunoiu, Delia Pavel, Eduard Vintilă, Felipe Huici, Florin Postolache, Marco Schlumpp, Maria Pana, Maria Sfiraiala, Michalis Pappas, Mihnea Firoiu, Oleksii Moisieiev, Radu Nichita, Razvan Deaconescu, Razvan Virtan, Sergiu Moga, Simon Kuenzer, Stefan Jumarea.


For more information, check out the accompanying blog post or view the full changelog.

v0.16.2 Telesto

14 Feb 22:10
RELEASE-0.16.2
441905a
Compare
Choose a tag to compare

We are proud to announce the latest version update of Unikraft, v0.16.2!

This release comes with fixes, Xen ARM64 support an updates to the application catalog.

Here is the full updates list in this release:

A big thank you also to all those who helped in the review process: Alexander Jung, Andrei Stan, Cezar Craciunoiu, Delia Pavel, Eduard Vintilă, Florin Postolache, Ioan-Teodor Teugea, Marco Schlumpp, Maria Pana, Maria Sfiraiala, Michalis Pappas, Mihnea Firoiu, Oleksandr Grytsov, Oleksii Moisieiev, Radu Nichita, Razvan Deaconescu, Razvan Virtan, Sergiu Moga, Simon Kuenzer.

v0.16.1 Telesto

18 Jan 16:52
3054035
Compare
Choose a tag to compare

We are proud to announce the latest version update of Unikraft, v0.16.1!

This release contains both important and breaking changes related to the KConfig and syntax when statically specifying network interface information as well as the list of fstab (automount) entries at the kernel command-line.

Caution

We strongly advise upgrading to this latest version of Unikraft in order to continue to be compatible with future versions. In our accompanying blog post we include necessary migration steps. Additionally, we have released a new version of KraftKit (v0.7.2) which already incorporates an understanding these changes and have upgraded all images in the Unikraft Community Catalog of pre-built unikernel images.

Changelog

For more information, check out the accompanying blog post or view the full changelog.

v0.16.0 Telesto

02 Jan 20:16
Compare
Choose a tag to compare

We are proud to announce the latest version update of Unikraft, v0.16.0! This release brings important new features and further improvements and stabilizing to the previous release (0.15.0 - Pandora). It adds new features, a healthy number of fixes and it enhances application support.

Here is the full updates list:

🚀 New Features

🐛 Bug Fixes & Improvements

  • lib/posix-fdtab: Fix fdtab cleanup w/o asserts (#1239) by @andreittr
  • lib/fdtab: Fix compiler warnings (#1237) by @michpappas
  • lib/posix-unixsocket: Silence unused variable...
Read more

v0.15.0 Pandora

23 Oct 17:25
Compare
Choose a tag to compare

We are proud to announce the latest version update of Unikraft, v0.15.0! This release brings important new features and further improvements and stabilizing to the previous release (0.14.0 - Prometheus). It adds new features, a healthy number of fixes and it enhances application support.

Here is the full updates list:

🚀 New Features

  • Improved application documentation and support scripts
    • [app-click]: Add configuration files and run scripts (#5) by @StefanJum
    • [app-click]: Port app-click to use musl (#4) by @MekalBoy
    • [app-duktape]: Update setup for developer-centric scripts (#10) by @razvand
    • [app-duktape]: Add Musl support (#9) by @razvand
    • [app-duktape]: Added Makefile and Makefile.uk to duktape, including the necessary li… (#7) by @justin9939
    • [app-duktape]: lib/duktape: port to musl addresses: #3 (#6 by @JoachimBose
    • [app-helloworld-cpp]: README.md: Use correct Firecracker JSON file name (#22) by @razvand
    • [app-helloworld-cpp]: Stefan jum/add dev content (#21) by @StefanJum
    • [app-helloworld-cpp]: Add KraftKit configuration file for KraftCloud (#20) by @razvand
    • [app-helloworld-cpp]: kraft.yaml: Fix contents (#19) by @razvand
    • [app-helloworld-go]: Add networking support for Go applications (#11) by @razvand
    • [app-helloworld-go]: Add KraftKit configuration file for KraftCloud (#10) by @razvand
    • [app-helloworld]: Makefile: Remove lwip (#30) by @razvand
    • [app-helloworld]: Makefile: Remove lwip (#29) by @razvand
    • [app-helloworld]: Testlib fxdiv (#28) by @SumairShergill
    • [app-helloworld]: lib/update/test: added library (#27) by @SumairShergill
    • [app-helloworld]: lib-intx upadate v0.10.0 (#26) by @ZackYe42
    • [app-helloworld]: Stefan jum/add dev content (#25) by @StefanJum
    • [app-helloworld]: Add KraftKit configuration file for KraftCloud (#23) by @razvand
    • [app-httpreply]: README.md: Update documentation (#20) by @razvand
    • [app-httpreply]: Stefan jum/add dev content (#19) by @StefanJum
    • [app-httpreply]: Add KraftKit configuration file for KraftCloud (#18) by @razvand
    • [app-lua]: Stefan jum/add dev content (#12) by @StefanJum
    • [app-lua]: Add KraftKit configuration file for KraftCloud (#11) by @razvand
    • [app-lua]: Makefile: Port app-lua to use musl (#6) by @panagiotiskon
    • [app-nginx]: README.md: Fix repeating words (#22) by @Mihnea0Firoiu
    • [app-nginx]: README.md: Update README (#20) by @razvand
    • [app-nginx]: Stefan jum/add dev content (#17) by @StefanJum
    • [app-nginx]: Add KraftKit configuration file for KraftCloud (#16) by @razvand
    • [app-python3]: README.md: Fix typo (#24) by @gabrielpitic
    • [app-python3]: README.md: Update kraft run command (#23) by @SorinAlexB
    • [app-python3]: Update setup for developer-centric scripts (#21) by @razvand
    • [app-python3]: kraft.cloud.yaml: Add networking support (#20) by @razvand
    • [app-python3]: Simplify root filesystem (#19) by @razvand
    • [app-python3]: Add KraftKit configuration file for KraftCloud (#18) by @razvand
    • [app-python3]: kraft.yaml: Update libraries order (#14) by @StefanJum
    • [app-redis]: Update Redis app directory (#20) by @razvand
    • [app-redis]: Add kraft.cloud.yaml (#19) by @razvand
    • [app-run-app-elfloader]: Add new applications and use fs1 as 9p index (#18) by @razvand
    • [app-run-app-elfloader]: Update prebuilt images to Unikraft 0.14 (#17) by @razvand
    • [app-run-app-elfloader]: [run.sh] Let user use custom QEMU arguments (#11) by @costinsin
    • [app-sqlite]: Stefan jum/add dev content (#13) by @StefanJum
    • [app-sqlite]: Add KraftKit configuration file for KraftCloud (#12) by @razvand
    • [app-testing]: Introduce generate.py script (#4) by @razvand
    • [app-wamr]: Update setup for developer-centric scripts (#7) by @razvand
    • [app-wamr]: Update README.md (#6) by @chococandy63
    • [app-wamr]: add makefile, makefile.uk (#4) by @akouk
    • [run-app-elfloader]: Add new applications and use fs1 as 9p index (#18) by @razvand
    • [run-app-elfloader]: Update prebuilt images to Unikraft 0.14 (#17) by @razvand
    • [run-app-elfloader]: [run.sh] Let user use custom QEMU arguments (#11) by @costinsin
    • [lib-click]: Update lib click to the latest Unikraft version (#7) by @StefanJum
    • [lib-wamr]: patches: Remove patch 0005: main adaptation (#9) by @razvand
    • [lib-wamr]: base to pbase (#2) by @akouk
  • Improved Python support
    • [lib-python-numpy]: Makefile.uk: Fix internal build include paths (#2) by @andreittr
    • [lib-python-pillow]: Port upstream Pillow 10.0.0 (#1) by @andreittr
    • [lib-python3]: Add support for the Pillow extension (#22) by @andreittr
    • [lib-python3]: Makefile.uk: Supress warnings (#21) by @andreittr
    • [lib-python3]: Enable the mmap stdlib module (#20) by @andreittr
    • [lib-python3]: Makefile.uk: Fix generated header include path (#19) by @andreittr
    • [lib-python3]: patches: Fix ctypes import error (#18) by @andreittr
    • [lib-python3]: Introduce Library.uk (#14) by @nderjung
  • Extended application support
Read more

v0.14.0 Prometheus

17 Aug 23:56
Compare
Choose a tag to compare

We are proud to announce the latest version of Unikraft, v0.14.0 (Prometheus)! This is one of the biggest releases so far with tons of fixes and improvements!

Here is the full updates list:

🚀 New Features

  • build: Darwin (macOS) support (#1034) by @skuenzer
  • .github/workflows: Introduce GitHub Actions Workflow integrations (#1012) by @nderjung
  • build: Add tree builds (#1001) by @andreittr
  • plat/kvm/arm64: Firecracker support on arm64 (#989) by @michpappas
  • plat/kvm/arm64: Implement lxboot on arm64 (#988) by @michpappas
  • lib/vfscore: Implement individual volume automounting (#979) by @mogasergiu
  • lib/uklibid: Library identifiers and SUBBUILD build system feature (#938) by @skuenzer
  • build: Allow setting flags from the environment (#957) by @mkroening
  • lib/ukstore: Introduce dynamic store API (#939) by @michpappas
  • Add the ability to build EFI ISO and DISK images. (#910) by @mogasergiu
  • Add EFI stub support (#909) by @mogasergiu
  • doc: Introduce ADOPTERS.md (#892) by @nderjung
  • Add PIE support for Xen and KVM (#772) by @mogasergiu
  • Makefile: Add flags for cross-compiler LLVM target (#685) by @mariasfiraiala
  • [lib-geos] Port upstream libgeos 3.11.2 (#1) by @andreittr
  • [lib-libffi] Port upstream libffi 3.4.4 for x86_64 (#1) by @andreittr
  • [lib-fork-glibc] feat: Binary syscall bypass through VDSO (#1) by @i-Pear
  • [lib-fork-musl] feat: Binary syscall bypass through VDSO (#1) by @i-Pear
  • [lib-python-numpy] Port upstream NumPy 1.25.0 (#1) by @andreittr
  • [lib-python-shapely] Port upstream Shapely 2.0.1 (#1) by @andreittr
  • [app-elfloader] feat: Provide VDSO image and __kernel_vsyscall interface (#23) by @i-Pear
  • [catalog] Create initial version of catalog repository by @nderjung

🐛 Bug Fixes & Improvements

Read more

v0.13.1

01 Jun 12:57
RELEASE-0.13.1
abd35a2
Compare
Choose a tag to compare

This minor release fixes support for Aarch64 builds. A missing configuration option, introduced by the QEMU / Firecracker image split, prevented Aarch64-based builds to work.

Changelog

A big thank you also to all those who helped in the review process: @mschlumpp, @andraprs, @mariasfiraiala, @nderjung, @mogasergiu, @skuenzer and @razvand.

v0.13.0 Atlas

15 May 21:45
RELEASE-0.13.0
b0da6bf
Compare
Choose a tag to compare

We are proud to announce the latest version of Unikraft, v0.13.0 (Atlas)! Along with many fixes, this release comes with a bunch of new features that are worth your attention!

Warning
This release includes a breaking change which affects output unikernel binary name. See native Firecracker support for details.

Here is the full updates list:

🚀 New Features

🐛 Bug Fixes & Improvements

Read more

v0.12.0 Epimetheus

07 Feb 14:18
Compare
Choose a tag to compare

We are proud to announce the latest version of Unikraft, v0.12.0 (Epimetheus)! This release comes with a bag of new exciting features and more stability to the existing ones. Here is the full updates list:

🚀 New Features

🐛 Bug Fixes & Improvements

A big thank you also to all those who helped in the review process: @gabrielmocanu, @nderjung, @craciunoiuc, @eduardvintila, @marcrittinghaus, @mariasfiraiala, @razvand, @razvanvirtan, @kubanrob, @mogasergiu, @skuenzer, @StefanJum, @vladandrew, @RaduNichita, @fabianpatras, @andraprs, @michpappas, @maniatro111, @DeliaPavel and @mschlumpp.


For more information, check out the accompanying blog post or view the full changelog.

v0.11.0 Janus

02 Dec 02:19
Compare
Choose a tag to compare

We are proud to announce the latest version of Unikraft, v0.11.0 (Janus)! The most important asset of this release is the long awaited musl support. Besides this, we introduce many new improvements, including critical bug fixes, improved stability and new features. To summarise:

🚀 New Features

🐛 Bug Fixes & Improvements

A big thank you also to all those who helped in the review process: @adinasm, @nderjung, @craciunoiuc, @dragosargint, @eduardvintila, @marcrittinghaus, @mariasfiraiala, @razvand, @razvanvirtan, @rene, @kubanrob, @mogasergiu, @skuenzer, @StefanJum, @vladandrew, @maniatro111, @DeliaPavel and @mschlumpp!


For more information, check out the accompanying blog post or view the full changelog.