blob: a79dd4cae829912ea578637cfaf11c27a5072845 [file] [view] [edit]
**Date:** October 31, 2023
**Version:** F14
The following changes have been implemented:
### Application Runtimes (Flutter, Starnix, and Web)
#### Starnix
The following updates have been made for Starnix:
* Added support for mounting remote filesystems.
* Added support for `xattrs` on symlinks in fxfs.
* Added tracepoints to `mmap()` syscall path.
* Added an update to cache remote file VMO handles.
* Added fixes to get more LTP tests to pass.
* Added the names for every field in `/proc/pid/stat`.
* Added additional information to the fields in `/proc/pid/stat`.
* Added power suspend stats to sysfs.
* Documented how to use the `toybox` container.
* Enabled `fuchsia_sync::Mutex`.
* Fixed various memory leaks in `binder` and `waiter`.
* Implemented `O_TMPFILE`.
* Implemented `pidfd_getfd`.
* Implemented non-panic `sys_reboot()`.
* Implemented `timer_create` and `timer_delete` syscalls.
* Implemented `times()` syscall.
* Improved locking in the Starnix kernel.
* Initial support for `ptrace()` syscall.
* Route `fuchsia.net` to Starnix.
* Updated syscall handling with task info.
* Updated the behavior to start up synthetic UTC clock if a real clock is not
started.
* Updated `ext4` to use filesystem cache.
* Updated `starnix_test_runner` to use an existing component runner protocol.
### Component Framework
The following updates have been made for Component Framework:
* Launched a component controller API which gives users direct access to
lifecycle states.
### Connectivity (Bluetooth, IOT, WLAN, Netstack)
The following updates have been made for Connectivity:
#### Connectivity Drivers
* Added ability to recover the FW sub-system on SDIO timeouts.
* Added minor fixes and improvements.
* Added stability fixes for firmware recovery.
* Re-enable `sdio_timeout` recovery trigger condition.
* Updated firmware recovery to request SDIO card reset.
#### Bluetooth
* Fixed media playback time inaccuracy in some situations such as a
Bluetooth speaker.
* Fixed Bluetooth audio resumes after connecting during an ongoing video call.
* Initial in-band audio support for HFP.
* Improved latency when streaming A2DP to a speaker.
#### Matter
* Added transition time handling for commands related to color.
* Added support for matter update group.
* Updated subscribing to all device fabrics.
#### Netstack
* Enabled FastUDP on all platforms. Performance improvements are expected,
but no user visible changes.
#### Thread
* Added support for mDNS subtypes to advertising proxy.
* Added an update to stop responding to all subtypes.
* Adjusted the auto-restart mechanism.
* Check mDNS component channel and re-establish if necessary.
* Fixed an address race condition when updating meshcop DNS-SD.
* Force update of connectivity state after leave and improved logs.
* Updated `TREL` to be disabled unless enabled by feature flags or CLI.
### Developer
The following updates have been made for Developer workflows:
* Added `--reuse-with-check` flag to `ffx emu` to improve test velocity
* Added risc-v support to `ffx emu`.
* Fixed issues flashing using a Mac.
* Removed the `ffx sl4f` subcommand.
### Diagnostics
The following updates have been made for Diagnostics:
* Added atomic initialization of `BoundedListNode` entries.
* Fixed a bug with `ffx inspect list-accessors` that wasn't escaping selectors
correctly.
* Updated the encoding of Inspect histograms to be more efficient when serialized
for snapshots
* Updated the Rust logging library to offer an option for retrying log writes
when the socket buffer is full.
* Updated the Rust Inspect library to allow Inspect to initialize using
`InspectSink`.
* Removed experimental structured `printf` which simplified the C++ syslog
backend API.
* Rewrote `ffx log` to communicate directly with Archivist without proactive
logging which also resulted in 2.5x performance improvements.
### Driver Framework
The following updates have been made for Driver Framework:
* Made the `fuchsia_driver_framework` FIDL library with flexible methods.
### FIDL
The following updates have been made for FIDL:
* Added `available` as a top level FIDL IR object.
* Enforcing a new FIDL empty response syntax.
### Fleet Services (Managed OS and Forensics)
The following updates have been made for Fleet Services:
* Cobalt: Switch to HPKE for encryption, reducing network bandwidth usage.
### Graphics and Media
The following updates have been made for Graphics and Media:
* Updated contiguous memory reclaims to reduce out-of-memory rates.
### HCI (Input, A11y, i18n, and View System)
The following updates have been made for HCI:
* Resolved spurious overnight presence events.
### Kernel
The following updates have been made for the Kernel:
* RISC-V support:
* Added support for SMP.
* Updated to use SBI to detect secondary cores.
* Scheduler:
* Introduced scheduler API in `src/lib`.
* Applied scheduler role to `memfs` and `minfs`.
* Added scheduler roles for resource and device threads.
### Platform Drivers
The following updates have been made for Platform Drivers:
* Sdmmc: Added support FIDL calls.
* Added support for `DeviceTree`.
* Updated USB audio to support DFv2.
### Platform Health
The following updates have been made for Platform Health:
* Improved the stability and sustainability of E2E tests, making them more
reliable between releases.
### Software Delivery
The following updates have been made for Software Delivery:
* Added support offline-compression for blobs.
* Merged base-resolver in with `pkg-cache`.
### Storage
The following updates have been made for Storage:
* Added support for delivery blobs (pre-compressed blobs).