Skip to content

Commit 67f3706

Browse files
committed
Merge branch 'main' into feature/distributed-erlang
2 parents 1155363 + 02bb6dc commit 67f3706

File tree

14 files changed

+129
-9
lines changed

14 files changed

+129
-9
lines changed

.github/workflows/esp32-build.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,17 @@ jobs:
3131
esp-idf:
3232
runs-on: ubuntu-24.04
3333
container: espressif/idf:${{ matrix.idf-version }}
34+
permissions:
35+
actions: read
36+
contents: read
37+
security-events: write
3438

3539
strategy:
3640
fail-fast: false
3741

3842
matrix:
3943
esp-idf-target: ["esp32", "esp32c3"]
44+
language: ['cpp']
4045
idf-version:
4146
- 'v5.0.7'
4247
- 'v5.1.5'
@@ -53,6 +58,16 @@ jobs:
5358
- name: Checkout repo
5459
uses: actions/checkout@v4
5560

61+
- name: "Git config safe.directory for codeql"
62+
run: git config --global --add safe.directory /__w/AtomVM/AtomVM
63+
64+
- name: "Initialize CodeQL"
65+
uses: github/codeql-action/init@v3
66+
with:
67+
languages: ${{matrix.language}}
68+
build-mode: manual
69+
queries: +./code-queries/term-to-non-term-func.ql,./code-queries/non-term-to-term-func.ql
70+
5671
- name: Build with idf.py
5772
shell: bash
5873
working-directory: ./src/platforms/esp32/
@@ -69,6 +84,9 @@ jobs:
6984
. $IDF_PATH/export.sh
7085
idf.py size-components
7186
87+
- name: "Perform CodeQL Analysis"
88+
uses: github/codeql-action/analyze@v3
89+
7290
- name: Install dependencies to build host AtomVM and run qemu
7391
run: |
7492
set -eu

.github/workflows/pico-build.yaml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,9 @@ on:
2525
- 'src/libAtomVM/**'
2626

2727
permissions:
28+
actions: read
2829
contents: write
30+
security-events: write
2931

3032
concurrency:
3133
group: ${{ github.workflow }}-${{ github.ref != 'refs/heads/main' && github.ref || github.run_id }}
@@ -37,6 +39,7 @@ jobs:
3739
strategy:
3840
matrix:
3941
board: ["pico", "pico_w", "pico2"]
42+
language: ["cpp"]
4043

4144
steps:
4245
- name: Checkout repo
@@ -52,6 +55,16 @@ jobs:
5255
libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib \
5356
erlang-base erlang-dev erlang-dialyzer erlang-eunit rebar3
5457
58+
- name: "Git config safe.directory for codeql"
59+
run: git config --global --add safe.directory /__w/AtomVM/AtomVM
60+
61+
- name: "Initialize CodeQL"
62+
uses: github/codeql-action/init@v3
63+
with:
64+
languages: ${{matrix.language}}
65+
build-mode: manual
66+
queries: +./code-queries/term-to-non-term-func.ql,./code-queries/non-term-to-term-func.ql
67+
5568
- name: Build
5669
shell: bash
5770
working-directory: ./src/platforms/rp2/
@@ -62,6 +75,9 @@ jobs:
6275
cmake .. -G Ninja -DPICO_BOARD=${{ matrix.board }}
6376
ninja
6477
78+
- name: "Perform CodeQL Analysis"
79+
uses: github/codeql-action/analyze@v3
80+
6581
- name: Install nvm and nodejs 20
6682
if: matrix.board != 'pico2'
6783
run: |

.github/workflows/stm32-build.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,11 @@ concurrency:
2727
jobs:
2828
stm32:
2929
runs-on: ubuntu-24.04
30+
permissions:
31+
actions: read
32+
contents: read
33+
security-events: write
34+
3035
steps:
3136
- uses: actions/cache@v4
3237
id: builddeps-cache
@@ -63,6 +68,16 @@ jobs:
6368
- name: Checkout repo
6469
uses: actions/checkout@v4
6570

71+
- name: "Git config safe.directory for codeql"
72+
run: git config --global --add safe.directory /__w/AtomVM/AtomVM
73+
74+
- name: "Initialize CodeQL"
75+
uses: github/codeql-action/init@v3
76+
with:
77+
languages: 'cpp'
78+
build-mode: manual
79+
queries: +./code-queries/term-to-non-term-func.ql,./code-queries/non-term-to-term-func.ql
80+
6681
- name: Build
6782
shell: bash
6883
working-directory: ./src/platforms/stm32/
@@ -73,3 +88,6 @@ jobs:
7388
# -DAVM_WARNINGS_ARE_ERRORS=ON
7489
cmake .. -DCMAKE_TOOLCHAIN_FILE=cmake/arm-toolchain.cmake -DLIBOPENCM3_DIR=/home/runner/libopencm3
7590
make -j
91+
92+
- name: "Perform CodeQL Analysis"
93+
uses: github/codeql-action/analyze@v3

.github/workflows/wasm-build.yaml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,16 +30,38 @@ concurrency:
3030
cancel-in-progress: true
3131

3232
jobs:
33+
3334
compile_tests:
35+
3436
runs-on: ubuntu-24.04
3537
container: erlang:27
38+
permissions:
39+
actions: read
40+
contents: read
41+
security-events: write
42+
43+
strategy:
44+
fail-fast: false
45+
matrix:
46+
language: ["c-cpp"]
47+
3648
steps:
3749
- name: Checkout repo
3850
uses: actions/checkout@v4
3951

4052
- name: Install required packages
4153
run: apt update && apt install -y gperf zlib1g-dev cmake ninja-build
4254

55+
- name: "Git config safe.directory for codeql"
56+
run: git config --global --add safe.directory /__w/AtomVM/AtomVM
57+
58+
- name: "Initialize CodeQL"
59+
uses: github/codeql-action/init@v3
60+
with:
61+
languages: ${{matrix.language}}
62+
build-mode: manual
63+
queries: +./code-queries/term-to-non-term-func.ql,./code-queries/non-term-to-term-func.ql
64+
4365
- name: Compile AtomVM and test modules
4466
run: |
4567
set -e
@@ -49,6 +71,9 @@ jobs:
4971
# test_eavmlib does not work with wasm due to http + ssl test
5072
ninja AtomVM atomvmlib erlang_test_modules test_etest test_alisp test_estdlib hello_world run_script call_cast html5_events wasm_webserver
5173
74+
- name: "Perform CodeQL Analysis"
75+
uses: github/codeql-action/analyze@v3
76+
5277
- name: Upload AtomVM and test modules
5378
uses: actions/upload-artifact@v4
5479
with:
@@ -80,6 +105,7 @@ jobs:
80105
needs: compile_tests
81106
runs-on: ubuntu-24.04
82107
container: emscripten/emsdk
108+
83109
steps:
84110
- name: Checkout repo
85111
uses: actions/checkout@v4
@@ -145,13 +171,30 @@ jobs:
145171
wasm_build_web:
146172
runs-on: ubuntu-24.04
147173
container: emscripten/emsdk
174+
permissions:
175+
actions: read
176+
contents: read
177+
security-events: write
178+
179+
strategy:
180+
fail-fast: false
181+
matrix:
182+
language: ["javascript-typescript"]
183+
148184
steps:
149185
- name: Checkout repo
150186
uses: actions/checkout@v4
151187

152188
- name: "Install deps"
153189
run: sudo apt update -y && sudo apt install -y cmake gperf
154190

191+
- name: "Initialize CodeQL"
192+
uses: github/codeql-action/init@v3
193+
with:
194+
languages: ${{matrix.language}}
195+
build-mode: none
196+
db-location: '${{ github.runner_temp }}/codeql_js_database'
197+
155198
- name: Build wasm build for web
156199
shell: bash
157200
working-directory: ./src/platforms/emscripten/
@@ -162,6 +205,9 @@ jobs:
162205
emcmake cmake .. -DAVM_EMSCRIPTEN_ENV=web
163206
emmake make -j
164207
208+
- name: "Perform CodeQL Analysis"
209+
uses: github/codeql-action/analyze@v3
210+
165211
- name: Upload wasm build for web
166212
uses: actions/upload-artifact@v4
167213
with:

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
4545
- Added several `io_lib` functions including `io_lib:fwrite/2` and `io_lib:write_atom/1`
4646
- Added `init:get_argument/1`, `init:get_plain_arguments/0` and `init:notify_when_started/1`
4747
- Added `application:get_env/2`
48+
- Added CodeQL analysis to esp32, stm32, pico, and wasm workflows
4849

4950
### Changed
5051

LICENSES/LicenseRef-Proprietary.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
This file is proprietary. Please contact the copyright holder for more information about its licensing and use.

README.Md

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ All of these limitations are going to be fixed in a reasonable amount of time.
112112
About This Project
113113
==================
114114
This project has been created by [Davide Bettio](https://github.com/bettio/), and now is developed
115-
from a growing number of contributors.
115+
from a growing number of [contributors](https://github.com/atomvm/AtomVM/graphs/contributors).
116116

117117
How to Contribute
118118
-----------------
@@ -123,3 +123,18 @@ of the [organization](https://github.com/atomvm) repositories.
123123
License
124124
-------
125125
This project is under the terms of the Apache 2.0 license.
126+
127+
❤️ Acknowledgements
128+
-------------------
129+
130+
AtomVM is made possible thanks to the dedication of a vibrant community of individual contributors
131+
who have generously shared their time and expertise. We are deeply grateful for their ongoing
132+
support and passion over the years.
133+
134+
We also want to extend a special thank you to the following companies for supporting the development
135+
of AtomVM:
136+
137+
[![Dashbit](doc/assets/dashbit-logo.png)](https://dashbit.co/)
138+
[![Software Mansion](doc/assets/sw-mansion-logo.png)](https://swmansion.com/)
139+
140+
Thank you all for being part of this journey! 🙌

doc/assets/dashbit-logo.png

11.1 KB
Loading

doc/assets/dashbit-logo.png.license

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
SPDX-FileCopyrightText: (C) Dashbit
2+
SPDX-License-Identifier: LicenseRef-Proprietary

doc/assets/sw-mansion-logo.png

2.39 KB
Loading

0 commit comments

Comments
 (0)