Work In Progress
Work In Progress
What's New In This Release
Major Changes to Core OS
New Features
Bug Fixes
Changes to the Build System
Improvements
- #8177 build: Add STACK_USAGE(-fstack-usage) to assist the stack analysis
- #8449 build/Kconfig: add BINDIR/APPSBINDIR to support out of tree build
- #8357 tools: add separate flags parameter for COMPILE/COMPILEXX
- #8391 tools: ARCHIVE uses the full path
- #8732 tools: arm: Add missing -mcpu param for zig
- #8403 tools: checkpatch.sh: Check the source code doesn't set executable bit
- #8379 tools: checkpatch: Added encoding check with cvt2utf
- #8379 tools: checkpatch: Added encoding check with cvt2utf
- #8347 tools: compile with full file path
- #8347 tools: compile with full file path
- #8443 tools: config: silent print of archive objects
- #8442 tools: config: stack usage(.su) file should be removed on clean phase
- #8674 tools: cxd56: Fix typo in mkspk tool
- #8663 tools: Don't download tarball if a local git repo found
- #7971 tools: Ensure removing Python related commands for macOS
- #7993 tools: Ensure removing Python3.11 related commands for macOS
- #8515 tools: Extract a valid trace line and resolve the address to a function name
- #8310 tools: Extend mkdep buffer
- #8916 tools: export: LLVM style arch info for non-c language
- #8870 tools: export: Add LDELFFLAGS to mkexport.sh.
- #8425 tools: Fix Config.mk
- #8494 tools: kconfig: add kconfiglib support
- #8384 tools: Makefile: fix redundant delimiters when using make V=1
- #8378 tools: makefile: silent all compile output
- #8381 tools: Make zig available for arm/riscv/sim
- #8601 tools: make the symbol table generated by mkallsyms.py two-byte aligned
- #8305 tools: minidumpserver: add arm-a support
- #8142 tools: minidumpserver: replace stackdump to stack_dump
- #7938 tools: minidumpserver: sync the stackdump search string after #7875
- #8723 tools: nxstyle: add 'IRQn_Type' to whitelists
- #8657 tools: nxstyle: add "NimMain" to whitelists.
- #8559 tools: nxstyle: add "CMUnitTest" to nxstyle white list
- #8307 tools: parsememdump.py: support show total pid memory
- #8652 tools: parsememdump.py: Restore the execution permission bit
- #8808 tools: parsetrace: fix context swtich parsing error
- #8928 tools: riscv: Map extensions to certain cpu model for LLVM based toolc…
- #8030 tools: script: support IPv6 in simhostroute.sh
- #8001 tools: script: enable forward in simhostroute.sh
- #8007 tools: syscall: export UP_WRAPSYM/UP_REALSYM macro
- #8419 tools: use relative paths when reverting to compile
- #8586 tools: unix: use anonymous pipes to avoid menuconfig break
- #8675 tools: Unix.mk: Add VERSION_ARG to argument of version.sh
- #8308 tools: unix.mk: Pass APPDIR to arch's Makefile
- #8582 tools: Updated python scripts interpreter invocation in tools/.
- #8306 tools: version: generate dummy version without breakout
- #8759 treewide: add DOWNLOAD variable as unification of curl call
Architectural Support
New Architecture Support
Driver Support
Bug Fixes
New Driver Support
Drivers With Significant Improvements
Board Support
Significant Improvements
New Board Support
Boards With Significant Improvements
File System
New FS
- #8109 fs: Add shmfs
Significant Improvements
- #4320 fs: Add model field to geometry and mtd_geometry_s
- #8194 fs: Avoid accessing filep fields if it is NULL & add DEBUGASSERTs
- #8163 fs: Define DT_xxx to number directly
- #8430 fs: Implement link as a normal function instead macro
- #8498 fs: Make more fs API available when CONFIG_DISABLE_MOUNTPOINT isn't enabled
- #8195 fs: Map madvice to posix_madvice
- #8581 fs: Map FD_SETSIZE to OPEN_MAX instead hardcoding 256
- #8092 fs: Map syncfs to fsync
- #8021 fs: Move mmap callback before truncate in [file|mountpt]_operations
- #8113 fs: Support O_NOFOLLOW flag
- #8440 fs: support openat/fchmodat/mkfifoat/fstatat/...at api
- #8324 fs: unlock tmpfs before free the file object
- #8656 fs: Undefine CONFIG_FS_LARGEFILE if compiler doesn't support long long
- #8871 fs: fs_epoll: add oneshot list to handle the EPOLLONESHOT correctly
- #7871 fs: fs_epoll: fix some potential issue for list operation
- #8153 fs: fs_fsync:Fix the expected error of socket,fifo and pipe returning error in fsync case
- #8896 fs: fs_initialize.c:Sync fs in system restart callback
- #8496 fs: littlefs: add full support for LittleFS block device cfg in Kconfig
- #8026 fs: mmap: Add mm map
- #8138 fs: mmap: fix mmap returned address
- #8075 fs: mmap: Minor improvement
- #8784 fs: mmap: try rammap when filesystem mmap don't support
- #8162 fs: mmap: fix compile warning if set the optimize level to O3
- #8383 fs: mqueue: Fix file_mq_open() for SMP
- #8269 fs: partiton: add sanity check
- #8079 fs: poll: add missing FAR qualifier to poll()
- #8072 fs: poll: Fix poll_notify for CONFIG_BUILD_KERNEL
- #8337 fs: procfs: sort level0 process id
- #8270 fs: procfs: fix the issue of /proc/cpuload in SMP
- #8626 fs: procfs/meminfo: skip invalid character before memdump
- #8637 fs: rpmsgfs: return ENOTTY to vfs to do cmd operate
- #7947 fs: streams: Flush streams in userspace when the process exits
- #7991 fs: signalfd: using file descriptor to accept signal
- #5999 fs: sync: add sync api
- #8053 fs: timerfd: Reverse truncate and mmap field
- #7990 fs: timerfd/eventfd: using anonymous inodes and using isr to notify poll waiter.
- #8373 fs: vfs: Suppoprt F_DUPFD_CLOEXEC
- #8032 fs: vfs: add missed truncate callback at timerfd file_operation
- #8729 fs: vfs/poll: Remove the unused ptr field from pollfd
- #8089 fs: vfs/poll: Remove POLLFILE and POLLSOCK NuttX specific extension
- #8154 fs: vfs/fs_truncate.c:Add socket judgment to return correct errno.
Networking
Applications
Improvements
Bug Fixes
Security Issues Fixed In This Release
Compatibility Concerns
Changes to Build System
Renamed or Modified Kconfig Options
Known Problems In This Release
More Information
How to Download
Release artifacts for all current and past NuttX releases can be downloaded at:
How to Clone the Git Repository
The Apache NuttX project uses Git SCM as its version control system.
There are two primary repositories:
- nuttx - The real time operating system itself.
- apps - Optional applications and example programs for the operating system. You can use this repository or make your own custom one.
The main "Single Source of Truth" repositories are hosted by the ASF:
- https://gitbox.apache.org/repos/asf?p=incubator-nuttx.git
- https://gitbox.apache.org/repos/asf?p=incubator-nuttx-apps.git
These are synchronized with repositories hosted at GitHub:
How to Contact the Community
The main forum for project communication, to ask a question, get involved, or contribute to NuttX, is our mailing list, dev@nuttx.apache.org. The list is publicly archived and searchable at https://lists.apache.org/list.html?dev@nuttx.apache.org. For more information, see NuttX Community.
Enthusiastic Contributors Welcome!
NuttX is a free open-source project. If you'd like to participate, whether it's to enhance documentation (even these release notes) or dive into the nitty gritty of some low-level drivers, please join us! You can join the conversation at our dev mailing list by emailing dev-subscribe@nuttx.apache.org. The mailing list is open to the public and archived. You can browse older messages at https://lists.apache.org/list.html?dev@nuttx.apache.org.