Files
wolfssl/.github/workflows/freertos-mem-track.yml
T
Juliusz Sosinowicz 844852202b .github: bump JavaScript actions to Node.js 24 runtimes
GitHub Actions now emits "Node.js 20 actions are deprecated" warnings:
actions are forced to Node.js 24 by default starting 2026-06-16, and
Node.js 20 is removed from the runners on 2026-09-16. Update every
JavaScript action referenced by the workflows and the local composite
actions to the lowest release that runs on Node.js 24:

  actions/checkout              v4     -> v5
  actions/checkout (SHA pin)    v4.1.7 -> v5
  actions/upload-artifact       v4     -> v6   (v5 still Node.js 20)
  actions/download-artifact     v4     -> v7   (v5/v6 still Node.js 20)
  actions/cache[/restore|/save] v4     -> v5
  actions/setup-python          v5     -> v6
  actions/github-script         v7     -> v8
  docker/setup-buildx-action    v3     -> v4
  docker/build-push-action      v5     -> v7   (v6 still Node.js 20)
  docker/login-action           v3     -> v4
  microsoft/setup-msbuild       v2     -> v3
  open-watcom/setup-watcom      v0     -> v1

Actions already running on Node.js 24 (jwlawson/actions-setup-cmake,
shogo82148/actions-setup-perl, msys2/setup-msys2, dorny/paths-filter)
are left unchanged. These bumps are runtime-only; no workflow uses an
input or output removed by the new majors, and v4-format artifacts
remain compatible across the upload v6 / download v7 backends.
2026-06-15 18:09:04 +00:00

37 lines
1.3 KiB
YAML

name: FreeRTOS mem_track.h compile regression
# START OF COMMON SECTION
on:
push:
branches: [ 'release/**' ]
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
branches: [ '*' ]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
# END OF COMMON SECTION
# Regression test for the memLock / pthread.h guard misalignment in
# wolfssl/wolfcrypt/mem_track.h that previously broke multi-threaded
# FreeRTOS-class builds with WOLFSSL_TRACK_MEMORY + USE_WOLFSSL_MEMORY
# + !WOLFSSL_STATIC_MEMORY. The bug was preprocessor-only, so the test
# simulates a non-Linux/Mac/Zephyr target by suppressing the host
# platform autodefines (-U__linux__ -U__MACH__ -U__ZEPHYR__) and using
# the clean-room FreeRTOS.h / semphr.h stubs under
# tests/freertos-mem-track-repro/. No cross compiler needed.
jobs:
freertos_mem_track:
name: mem_track.h non-Linux multi-threaded compile
if: ${{ (github.repository_owner == 'wolfssl') && (github.event_name != 'pull_request' || github.event.pull_request.draft == false) }}
runs-on: ubuntu-24.04
timeout-minutes: 5
steps:
- name: Checkout wolfSSL
uses: actions/checkout@v5
- name: Run mem_track.h FreeRTOS reproducer
run: sh tests/freertos-mem-track-repro/run.sh