Skip to content

Commit

Permalink
release: Add blog post and notes for release 0.16.2
Browse files Browse the repository at this point in the history
Add blog post, notes and support files for release 0.16.2 (Telesto).

Signed-off-by: Razvan Deaconescu <razvand@unikraft.io>
  • Loading branch information
razvand committed Feb 13, 2024
1 parent c7d37ae commit 2be9c22
Show file tree
Hide file tree
Showing 3 changed files with 142 additions and 5 deletions.
73 changes: 73 additions & 0 deletions content/blog/2024-02-13-unikraft-releases-v0.16.2.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
---
title: "Unikraft releases v0.16.2 (Telesto)"
description: |
This release contains fixes primarily related to platform and application support.
publishedDate: 2024-02-13
authors:
- Razvan Deaconescu
- Alexander Jung
- Oleksii Moiseiev
tags:
- release
- announcement
---

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

Check failure on line 15 in content/blog/2024-02-13-unikraft-releases-v0.16.2.mdx

View workflow job for this annotation

GitHub Actions / Markdown Linter

line per sentence one line (and only one line) per sentence [Expected one sentence per line. Multiple end of sentence punctuation signs found on one line!]

### Xen on ARM64

_This feature was championed by [Oleksii Moiseiev](https://github.com/oleksiimoisieiev) with great support from [Michalis Pappas](https://github.com/michpappas) and from [Andrei Stan](https://github.com/andreistan26) and [Maria Sfîrăială](https://github.com/mariasfiraiala)_.

This release brings the Xen support for ARM64.
Up until this point, Xen was only running on x86_64.
Recent advances in the embedded world, with focus on automotive and security, have made Xen an important target for the ARM64 architecture.

The current Xen on ARM64 work includes the following features:

* Implemented of the loaders and image header for ARM64 architecture.
* Implemented all basic drivers, that are essential for work on XEN, such as: memory management, `gnttab`, `xenbus` and console drivers.
* Updated and tested frontend drivers for the devices: `9p`, `blkfront` and `netfront`.
* Ported `pvcalls`-frontend driver from the Linux Kernel implementation.

With the resurfacing of Xen support in release 0.16, Unikraft has now enhanced its Xen ecosystem with the ARM64 support.

Check failure on line 32 in content/blog/2024-02-13-unikraft-releases-v0.16.2.mdx

View workflow job for this annotation

GitHub Actions / Markdown Linter

line per sentence one line (and only one line) per sentence [Expected one sentence per line. Multiple end of sentence punctuation signs found on one line!]
Future steps relate to using binary-compatibility mode on Xen and KraftKit integration.

### Application Catalog

_This feature was championed by [Alexander Jung](https://github.com/nderjung) and [Razvan Deaconescu](https://github.com/razvand) with feedback from [Ștefan Jumărea](https://github.com/StefanJum) and [Mihnea Firoiu](https://github.com/Mihnea0Firoiu)._

The [`catalog`](https://github.com/unikraft/catalog) has been populated with additional applications and examples.
Currently a large set of programming languages (JavaScript, Java, Python, Lua, Ruby, Perl) are supported, together with other applications (Nginx, Redis).

Feel free to try existing applications and examples and add your own to the catalog.

### Community Activities

#### Monthly Hackathon

We continue organizing monthly hackathons, generally taking place in the last Saturday of each month.
Hackathons take place both online and in person, generally at the National University of Science and Technology POLITEHNICA of Bucharest.

We organized a monthly hackathon on Saturday, January 27, 2024.
It was targeted on the 0.16.2 release, application support, CI improvements and fixes.

Check failure on line 52 in content/blog/2024-02-13-unikraft-releases-v0.16.2.mdx

View workflow job for this annotation

GitHub Actions / Markdown Linter

line per sentence one line (and only one line) per sentence [Expected one sentence per line. Multiple end of sentence punctuation signs found on one line!]

The next monthly hackathon is scheduled to take place on Saturday, March 2, 2024.

#### FOSDEM'24

Unikraft was of [FOSDEM'24](https://fosdem.org/2024/), at the [Microkernel and Component-based OS devroom](https://fosdem.org/2024/schedule/track/microkernel/), on February 3&4, 2024, in Brussels.
There were two talks from the Unikraft community, videos and slides now available online:

- ["Linux Binary Compatible Unikernels with Unikraft"](https://fosdem.org/2024/schedule/event/fosdem-2024-3386-linux-binary-compatible-unikernels-with-unikraft/), by [Simon Kuenzer](https://github.com/skuenzer)
- ["Unikernels Are Here: Building, Running and Deploying Application Unikernels With One Command"](https://fosdem.org/2024/schedule/event/fosdem-2024-3459-unikernels-are-here-building-running-and-deploying-application-unikernels-with-one-command/) by [Răzvan Deaconescu](https://github.com/razvand)

It was a good time to meet with members of the [Unikernel Alliance community](https://unikernelalliance.org/), and other friends of the Unikraft project.

### Applying for GSoC'24

With [Google Summer of Code 2024 (GSoC'24)](https://summerofcode.withgoogle.com/) being announced, Unikraft applied as an organization.
We have [a healthy list of projects](https://github.com/unikraft/gsoc/blob/staging/gsoc-2024/ideas.md) that we offer to future participants, in case Unikraft is selected for GSoC'24.

According to the [GSoC'24 timeline](https://developers.google.com/open-source/gsoc/timeline), we will know whether Unikraft is selected as an organization on Wednesday, February 21, 2024.

If you are interested in taking part in GSoC'24, and work on operating-systems, cloud and tooling items, see the [Unikraft GSoC'24 projects page](https://github.com/unikraft/gsoc/blob/staging/gsoc-2024/ideas.md), join [Unikraft Discord](http://bit.ly/UnikraftDiscord), take part in discussions, make contributions and ask for support.
64 changes: 64 additions & 0 deletions content/releases/v0.16.2.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
version: 0.16.2
releaseDate: 2024-02-12
codename: Telesto
commit: 6b137204f6944d35399557eeecdfd45a7fbfaac2
blogPost: /blog/2024-02-16-unikraft-releases-v0.16.2
changelog: https://github.com/unikraft/unikraft/compare/RELEASE-0.16.1...RELEASE-0.16.2
---

## Changelog

Check failure on line 10 in content/releases/v0.16.2.mdx

View workflow job for this annotation

GitHub Actions / Markdown Linter

First line in a file should be a top-level heading [Context: "## Changelog"]

* `.github/workflows`: Disable 'merge' global flag ([#1318](https://github.com/unikraft/unikraft/pull/1318)) by @craciunoiuc
* `.github/workflows`: Set committer email and name globally ([#1313](https://github.com/unikraft/unikraft/pull/1313)) by @craciunoiuc
* `lib/posix-fdtab`: Fix minor docstring issues ([#1312](https://github.com/unikraft/unikraft/pull/1312)) by @andreittr
* `lib/nolibc`: Solve warning of Musl imported `strstr` ([#1311](https://github.com/unikraft/unikraft/pull/1311)) by @mogasergiu
* `lib/posix-poll`: Fix EPOLL_CTL_MOD missing events ([#1310](https://github.com/unikraft/unikraft/pull/1310)) by @andreittr
* `lib/nolibc`: Expose FD_SETSIZE as Kconfig option ([#1309](https://github.com/unikraft/unikraft/pull/1309)) by @andreittr
* `lib/posix-sysinfo`: Fix off-by-1 error in `sethostname` ([#1307](https://github.com/unikraft/unikraft/pull/1307)) by @andreittr
* `plat/xen`: Remove duplicate PAGE definitions ([#1306](https://github.com/unikraft/unikraft/pull/1306)) by @michpappas
* `plat/kvm/x86`: Remove unused variable from `lxboot_entry()` ([#1305](https://github.com/unikraft/unikraft/pull/1305)) by @michpappas
* `lib/posix-time`: Add support for` CLOCK_BOOTTIME` ([#1304](https://github.com/unikraft/unikraft/pull/1304)) by @andreittr
* `lib/posix-process`: Add option to context switch away from clone caller ([#1303](https://github.com/unikraft/unikraft/pull/1303)) by @mschlumpp
* `lib/vfscore`: Prevent superfluous slashes in working directory ([#1302](https://github.com/unikraft/unikraft/pull/1302)) by @mschlumpp
* `lib/posix-fdio`: ENOTTY for unsupported tty ioctls ([#1301](https://github.com/unikraft/unikraft/pull/1301)) by @andreittr
* `lib/ukvmem`: Use correct argument type in format string ([#1300](https://github.com/unikraft/unikraft/pull/1300)) by @michpappas
* `lib/posix-fdtab`: Silence unused parameter warning ([#1299](https://github.com/unikraft/unikraft/pull/1299)) by @michpappas
* `lib/nolibc`: Use `strcat()` from mini-os ([#1298](https://github.com/unikraft/unikraft/pull/1298)) by @michpappas
* `lib/posix-poll`: Fix `epoll` missing events ([#1297](https://github.com/unikraft/unikraft/pull/1297)) by @andreittr
* `lib/posix-socket`: Introduce `CREATE`, `BIND` events ([#1296](https://github.com/unikraft/unikraft/pull/1296)) by @skuenzer
* `.github/workflows`: Remove redundant checks ([#1295](https://github.com/unikraft/unikraft/pull/1295)) by @craciunoiuc
* `lib/posix-process`: Add support for RLIMIT_AS ([#1294](https://github.com/unikraft/unikraft/pull/1294)) by @andreittr
* `build`: Disable image compression ([#1293](https://github.com/unikraft/unikraft/pull/1293)) by @michpappas
* `.github/workflows`: Enable `-Werror` on integration builds ([#1292](https://github.com/unikraft/unikraft/pull/1292)) by @michpappas
* `lib/ukboot`: Ensure the auxiliary stack is backed by physical memory ([#1291](https://github.com/unikraft/unikraft/pull/1291)) by @michpappas
* `checkpatch`: Update to v6.8-rc2 ([#1289](https://github.com/unikraft/unikraft/pull/1289)) by @michpappas
* `drivers/ukintctrl`: Update GICv2 compatible list ([#1287](https://github.com/unikraft/unikraft/pull/1287)) by @ananos
* `lib/ukboot`: Ensure the auxiliary stack is backed by physical memory ([#1286](https://github.com/unikraft/unikraft/pull/1286)) by @michpappas
* `.github/workflows`: Add missing checkpatch flags ([#1285](https://github.com/unikraft/unikraft/pull/1285)) by @craciunoiuc
* `lib/vfscore`: Additional mount options ([#1282](https://github.com/unikraft/unikraft/pull/1282)) by @skuenzer
* `lib/nolibc`: Change default FD_SETSIZE to 1024 ([#1280](https://github.com/unikraft/unikraft/pull/1280)) by @marcrittinghaus
* `lib/posix-socket`: Extend socket events ([#1279](https://github.com/unikraft/unikraft/pull/1279)) by @marcrittinghaus
* `support/scripts`: Fix `checkpatch.uk` ([#1276](https://github.com/unikraft/unikraft/pull/1276)) by @skuenzer
* Add README for posix-pipe library ([#1275](https://github.com/unikraft/unikraft/pull/1275)) by @RaduNichita
* `support/scripts`: Auto-split words and disable info message ([#1274](https://github.com/unikraft/unikraft/pull/1274)) by @craciunoiuc
* `lib/posix-mmap`: Round-up madvise length to page size ([#1273](https://github.com/unikraft/unikraft/pull/1273)) by @michpappas
* `.github/workflows`: Switch to debug logging ([#1270](https://github.com/unikraft/unikraft/pull/1270)) by @craciunoiuc
* Misc fixes found during the development of the Aarch64 XEN support. ([#1269](https://github.com/unikraft/unikraft/pull/1269)) by @oleksiimoisieiev
* Align auxiliary stack with regular stacks and add guard pages on per-thread regular stacks ([#1264](https://github.com/unikraft/unikraft/pull/1264)) by @mogasergiu
* Promote unhandled page fault message level and add stack guard page explicit message ([#1263](https://github.com/unikraft/unikraft/pull/1263)) by @mogasergiu
* `lib/nolibc`: Import `strstr` from `musl` ([#1261](https://github.com/unikraft/unikraft/pull/1261)) by @mogasergiu
* `lib/posix-poll`: Fix `epoll()` crash on `NULL` event arg ([#1259](https://github.com/unikraft/unikraft/pull/1259)) by @andreittr
* `lib/posix-poll`: Handle unpollable files correctly ([#1258](https://github.com/unikraft/unikraft/pull/1258)) by @andreittr
* `lib/posix-poll`: Fix `poll()` ignoring fd 0 ([#1255](https://github.com/unikraft/unikraft/pull/1255)) by @andreittr
* `{include/,lib/*}`: Separate initializers from anonymous right-hand values ([#1245](https://github.com/unikraft/unikraft/pull/1245)) by @andreittr
* `lib/posix-fdtab`: Add comments for `posix-fdtab` ([#1241](https://github.com/unikraft/unikraft/pull/1241)) by @DeliaPavel
* `.github/workflows`: Move integration tests to upb runners ([#1215](https://github.com/unikraft/unikraft/pull/1215)) by @craciunoiuc
* `plat/common/x86`: Use `FSGSBASE` for TLS if available ([#862](https://github.com/unikraft/unikraft/pull/862)) by @andreittr
* `arm64/xen`: Introduce xen support for aarch64 architecture ([#726](https://github.com/unikraft/unikraft/pull/726)) by @oleksiimoisieiev
* `[lib-lwip]`: Expose `LWIP_SO_RCVBUF` config and set on by default ([#50](https://github.com/unikraft/lib-lwip/pull/50)) by @andreittr
* `[lib-lwip]`: Set system hostname when initializing interface ([#49](https://github.com/unikraft/lib-lwip/pull/49)) by @andreittr
* `[lib-lwip]`: Prepare lwip to provde DNS functions to native musl ([#48](https://github.com/unikraft/lib-lwip/pull/48)) by @skuenzer
* `[lib-lwip]`: Option to wait for DHCP and fail without netifs ([#47](https://github.com/unikraft/lib-lwip/pull/47)) by @skuenzer
* `[lib-lwip]`: Various smaller fixes ([#46](https://github.com/unikraft/lib-lwip/pull/46)) by @mschlumpp
* `[lib-musl]`: Option to handle DNS requesets by lwIP ([#74](https://github.com/unikraft/lib-musl/pull/74)) by @skuenzer
10 changes: 5 additions & 5 deletions src/components/landing-hero.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ export default function LandingHero() {
p='2'
pr='4'
>
<NextLink href={'/blog/2024-01-18-unikraft-releases-v0.16.1'} passHref>
<NextLink href={'/blog/2024-02-12-unikraft-releases-v0.16.2'} passHref>
<chakra.a
as={Box}
role={'group'}
Expand Down Expand Up @@ -111,7 +111,7 @@ export default function LandingHero() {
textDecoration: 'underline'
}}
>
Unikraft releases v0.16.1 (Telesto)
Unikraft releases v0.16.2 (Telesto)
</Text>
<Box
display={{
Expand Down Expand Up @@ -240,19 +240,19 @@ export default function LandingHero() {
}}
>
<Stat>
<StatNumber>v0.16.1</StatNumber>
<StatNumber>v0.16.2</StatNumber>
<StatLabel>Latest Version</StatLabel>
</Stat>
<Stat>
<StatNumber>1824</StatNumber>
<StatNumber>1834</StatNumber>
<StatLabel>GitHub Stars</StatLabel>
</Stat>
<Stat>
<StatNumber>93</StatNumber>
<StatLabel>Contributors</StatLabel>
</Stat>
<Stat>
<StatNumber>1269</StatNumber>
<StatNumber>1273</StatNumber>
<StatLabel>Discord Members</StatLabel>
</Stat>
</StatGroup>
Expand Down

0 comments on commit 2be9c22

Please sign in to comment.