-
Notifications
You must be signed in to change notification settings - Fork 96
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bump esp-idf 5.3 CI to rc1 #1227
Closed
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: Davide Bettio <[email protected]>
Prepare v0.7.0-dev dev cycle These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
Merge release-0.6 branch into main. This merges also i2c driver acquire / release bugfix and release CI. Signed-off-by: Davide Bettio <[email protected]>
Merge release-0.6 branch into main. This merges a number of fixes and cleanups about docs, CI, and build/release scripts.
Merge v0.6.0-beta.1 into main. This merges a number of fixes and changes, most importants: - Fixes to UTF-8 and latin1 atom support - UTF-8 is used as default for atom serialization in term to binary - Support to functions with more than 9 parameters - Support for code that makes use of more than 16 x registers, such as when doing complex pattern matching, etc... See also v0.6.0-beta.1 CHANGELOG.md section for more information
Merge v0.6.0 into main. This merges a number of fixes and some important additions: - API for sending messages from other threads (useful on FreeRTOS on single core devices with SMP disabled) - Fixes to the socket driver - All ESP32-* images are working now See also v0.6.0 CHANGELOG.md section for more information
Signed-off-by: Fred Dushin <[email protected]>
Signed-off-by: Fred Dushin <[email protected]>
Add optional I2C Nif-based resource driver This PR adds an optional Nif-based resource for use with the I2C interface. Using a Nif-based resource has several advantages, including: * More predictable (and less) latency between the I2C client and IDF calls, since Nifs are not as beholden to the whims of the scheduler as ports/processes; * One less process needed (as opposed to the port-based implementation), so has less memory overhead; * Automated resource reclamation when resource is GC’d (after ref count goes to 0), so users can call close, but in cases where they do not, the i2c driver will be removed (eventually). This implementation is currently opt-in. Set `use_nif` to true in the initialization parameter when creating an I2C instance, to use it. Otherwise, the port-based implementation will be used. These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
Added a limited implementation of the OTP ets interface *** Few opening words, Fred recently passed away and this is the last time I will merge a PR from him. It was an honor to work with you on this project, thanks for your precious help and for taking part to this journey. Fred, will miss you. *** This PR implements a small subset of the OTP `ets` interface. The following `ets` functions are supported: * `ets:new/2` * `ets:insert/2` * `ets:lookup/2` * `ets:delete/2` The following parameters to `ets:new/2` are supported: * `is_named` * `{keypos, I :: non_neg_integer()}` * `private` | `protected` | `public` access types Only the `set` table type is supported. This limited functionality allows users to define ETS tables and share term data between processes in a manner that is more efficient than using message passing with a process. The likely initial users of this feature will be the logging subsystem, as well as parts of the (forthcoming) application support, for storing application environment settings. This PR provides a partial implementation of issue atomvm#887. Subsequent PRs can add additional features from this issue. For information about the OTP `ets` interface, see https://www.erlang.org/doc/man/ets. This implementation attempts to be API-compatible with the OTP implementation. These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
Merge fixes to ref, pid to list, to binary and display, and few other changes. Signed-off-by: Davide Bettio <[email protected]>
Just use Unreleased for unreleased version. Signed-off-by: Davide Bettio <[email protected]>
Merge all changes included in v0.6.1, such as mbedtls and TLS 1.3 bugfix, etc... Also merge valgrind warning fix and support to DragonFly BSD, that have been added after v0.6.1 release.
Mentioned in atomvm#887, required to port gleam/mist. Implementation is in C as initially designed by @fadushin, which saves a little bit memory as we don't need to copy the whole entry. Signed-off-by: Paul Guyot <[email protected]>
…lement_3 Implement ets:lookup_element/3 Mentioned in atomvm#887, required to port gleam/mist. Implementation is in C as initially designed by @fadushin, which saves a little bit memory as we don't need to copy the whole entry. These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
Merge changes from release-0.6 branch, such as stacktraces on pico2040 defaulting to on, is_even and is_odd guards for Elixir Integer module and CI fixes.
Merge changes such as ssl fixes and new proplists functions.
Merge type fixes for `gen_tcp` and `ssl`, scheduling of trapped process and new and improved API for GPIO wakup on ESP32.
Merge fix to race condition in whereis_dead_process test, and ssl fix/workaround.
Merge fix for C++ with newer esp-idf and new `network:sta_rssi/0`.
Signed-off-by: Paul Guyot <[email protected]>
esp32, rp2040 and stm32 all use the same logic to use .ctor runtime to register drivers and nifs collections. Also use the smaller constructor name for nifs of RP2040 on other platforms to maintain compatibility as RP2040 builds have to explicitely list nifs so they are not gc'd. EPS32 is unaffected as enabling of nifs is done through menuconfig. Signed-off-by: Paul Guyot <[email protected]>
Fix C++ compilation for ets headers This PR depends on atomvm#1158. These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
Factorize REGISTER_* macros and logic for ports and nifs esp32, rp2040 and stm32 all use the same logic to use .ctor runtime to register drivers and nifs collections. Also use the smaller constructor name for nifs of RP2040 on other platforms to maintain compatibility as RP2040 builds have to explicitely list nifs so they are not gc'd. EPS32 is unaffected as enabling of nifs is done through menuconfig. These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
term.h wasn't using stdbool so predicate functions were returning int instead of bool. So change them to use instead bool. Signed-off-by: Davide Bettio <[email protected]>
Use bool instead of int for predicates. Signed-off-by: Davide Bettio <[email protected]>
Use bool for predicates instead of int. Signed-off-by: Davide Bettio <[email protected]>
Use bool for predicates instead of int. Signed-off-by: Davide Bettio <[email protected]>
Use bool for predicates These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
Merge new http client module, updates to ESP32 CI, support for ESP32-C2 and ESP32-H2, new Elixir Keyword functions, fix to bs_context_to_binary opcode (OTP-21) and misc improvements to READMEs.
Signed-off-by: Davide Bettio <[email protected]>
CI: switch arm64 to Debian bookworm These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
Signed-off-by: Paul Guyot <[email protected]>
Factorize sys_load_module function The same function was duplicated across platforms. These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
Signed-off-by: Paul Guyot <[email protected]>
…ailable Add code:all_loaded/0 and code:all_available/0 These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
Merge several changes into main, including: - undef function error - Map string representation, ordered iterator and io:format support for maps - erlang:apply/2,3 - CI improvements, including OTP-27 and testing with newver gcc/clang versions - Allow configuring wifi AP channel - ESP32 conditional build of GPIO module on ESP32 - Fix issue with multiple link creation - byte/bit_size with OTP-27 code - Fix race condition of logger_manager - Fix some missing exported types - Documentation fixes and removed obsolete readmes
Signed-off-by: Paul Guyot <[email protected]>
…de-all-available Fix buffer overflow in code:all_available/0 implementation Crash was triggered with eunit tests and gcc-13 on ubuntu-24.04. These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
Merge several changes into main, including: - Fixes to CI and tests - Fix a bug where x0 and x1 were corrupted by failing guards - Export missing types in gen_server module - Fix a crash caused by `memory_estimate_usage` failing with some funcs
Add a simplified implementation of eunit interface, with an output compatible with unity test as parsed by Python dut module for qemu-based eunit testing. Eunit can be used on rebar3 projects on generic_unix on both BEAM and AtomVM with: rebar3 eunit rebar3 as test atomvm packbeam atomvm ${ATOMVMDIR}/build/libs/etest/src/beams/eunit.beam \ ${ATOMVMDIR}/build/libs/atomvmlib.avm \ _build/test/lib/*.avm Signed-off-by: Paul Guyot <[email protected]>
Add support for eunit module Add a simplified implementation of eunit interface, with an output compatible with unity test as parsed by Python dut module for qemu-based eunit testing. Eunit can be used on rebar3 projects on generic_unix on both BEAM and AtomVM with: ```shell rebar3 eunit rebar3 as test atomvm packbeam atomvm ${ATOMVMDIR}/build/libs/etest/src/beams/eunit.beam \ ${ATOMVMDIR}/build/libs/atomvmlib.avm \ _build/test/lib/*.avm ``` These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License 2.1 or later" license terms (dual license). SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later
Merge several changes into main, including: - Add support for `erlang:size/1` bif - Add missing DEBUG_FAIL_NULL for gcbifs - CI adjustments
Bump esp-idf 5.3 CI to rc1. Signed-off-by: Peter M <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Bump esp-idf 5.3 CI to rc1.
These changes are made under both the "Apache 2.0" and the "GNU Lesser General
Public License 2.1 or later" license terms (dual license).
SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later