From 4149bad49349c622632d88b34ca22e39d6628f87 Mon Sep 17 00:00:00 2001 From: Winford Date: Mon, 22 Jul 2024 00:22:34 -0700 Subject: [PATCH] Announce release v0.6.3 Release announcement post for v0.6.3. Signed-off-by: Winford --- _posts/2024-07-22-Release_v0.6.3.md | 73 +++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 _posts/2024-07-22-Release_v0.6.3.md diff --git a/_posts/2024-07-22-Release_v0.6.3.md b/_posts/2024-07-22-Release_v0.6.3.md new file mode 100644 index 000000000..82585f361 --- /dev/null +++ b/_posts/2024-07-22-Release_v0.6.3.md @@ -0,0 +1,73 @@ +--- +layout: post +title: Announcing AtomVM v0.6.3 +excerpt_separator: +--- + +## 2024/07/22 Announcing AtomVM v0.6.3 + +We are pleased to announce the release of v0.6.3 of the AtomVM virtual machine! + +This release expands OTP coverage to include the Erlang `sets` and `queue` modules and several +Elixir `Keyword` functions: `Keyword.merge`, `Keyword.take`, `Keyword.pop(!)`, `Keyword.keyword?`, +and `Keyword.has_key?`. Support for `~kp` with `io_lib:format/2` and `maps:iterator/2` that were +introduced with OTP26 have added, along with `maps:from_keys/2`. The `lists` modules gains support +for `lists:keytake/3`, `lists:keystore/4`, and `lists:filtermap/2`. Support for `erlang:size/1` and +`erlang:apply/2` has also been added. + +A simple [http client](https://www.atomvm.net/doc/v0.6.3/apidocs/erlang/eavmlib/ahttp_client.html), +that can be used for different use cases, such as downloading OTA updates has been added to +[`eavmlib`](https://www.atomvm.net/doc/v0.6.3/apidocs/erlang/eavmlib/README.html). + +The [channel used in access point mode](https://www.atomvm.net/doc/v0.6.3/network-programming-guide.html#ap-mode) +can now be changed in the +[`network`](https://www.atomvm.net/doc/v0.6.3/apidocs/erlang/eavmlib/network.html) driver. + +This release adds support for [ESP32-H2](https://www.espressif.com/en/products/socs/esp32-h2) +devices. Support has also been added for USB serial output on ESP32 devices with native USB support +(ESP32-S2 for example). + +Notable changes include: +* the default size of ESP32 RTC slow memory being bumped from 4086 to 4096, except on ESP32-H2 +where it's 3072 bytes +* updates to `byte_size/1` and `bit_size/1` to implement OTP27 match context reuse optimization +OTP-18987 +* ESP32 network driver messages for event 40 (home channel change events) are now suppressed, +but the details for the channel changes can be observed in the console log if "debug" level +logging is enabled in ESP-IDF Kconfig options. + +Several bugs have been fixed, including the creation of multiple links for the same process and +links not being removed at trapped exits. A bug affecting binary pattern matching (for builds with +OTP-21) has been fixed, and several memory related bugs have been corrected, as well as a bug that +could yield crashes when functions are sent in messages. The error that is raised when a function +is undefined has also been fixed. + +For the full set of bug fixes, changes and additions consult the +[Changelog](https://www.atomvm.net/doc/v0.6.3/CHANGELOG.html). + +Download images and binaries are available for most platforms, except STM32, are available from +[AtomVM Releases on GitHub](https://github.com/atomvm/AtomVM/releases/tag/v0.6.3). STM32 users as +well as anyone needing to build a generic_unix port for a device without release binaries should +consult the [Build Instructions](https://www.atomvm.net/doc/v0.6.3/build-instructions.html). MacOS +users also have the option of +[installing with `macports`](https://www.atomvm.net/doc/v0.6.3/getting-started-guide.html#installation-on-macos), +and an updated HomeBrew tap should be available in the near future. The "tap" is currently out of date, but a fix +has already been submitted. + +The git repository and tarballs of the AtomVM source release for all platforms can be found on our +[GitHub AtomVM page](https://github.com/atomvm/AtomVM). + +Documentation for the v0.6.3 release of the AtomVM virtual machine, including a +[Getting Started Guide](https://www.atomvm.net/doc/v0.6.3/getting-started-guide.html), can be found in the +[AtomVM Documentation](https://www.atomvm.net/doc/v0.6.3/). + +As always, tools, drivers, and modules are available on the +[GitHub AtomVM Project page](https://github.com/atomvm). + +Many thanks go to [Davide Bettio](https://github.com/bettio), for creating and maintaining such a +fine work of software. Special thanks also to [takasehideki](https://github.com/takasehideki) and +[Mikael Karlsson](https://github.com/karlsson) for their first contributions to the project :tada , +along with the rest of the [contributors](https://github.com/atomvm/AtomVM/graphs/contributors) and +[testers who have helped make this release possible](https://github.com/atomvm/AtomVM/issues). + +The AtomVM team