-
Device Manager
- Automatically reconnect device monitor if a connection fails
- Added new pio device monitor --no-reconnect option to disable automatic reconnection
- Handle device monitor disconnects more gracefully (issue #3939)
- Improved a serial port finder for Black Magic Probe (issue #4023)
- Improved a serial port finder for a board with predefined HWIDs
- Replaced
monitor_flags
with independent project configuration options: monitor_parity, monitor_eol, monitor_raw, monitor_echo - Fixed an issue when the monitor filters were not applied in their order (issue #4320)
-
Unit Testing
- Updated "Getting Started" documentation for GoogleTest testing and mocking framework
- Export Unit Testing flags only to the project build environment (
projenv
, files in "src" folder) - Merged the "building" stage with "uploading" for the embedded target (issue #4307)
- Do not resolve dependencies from the project "src" folder when the test_build_src option is not enabled
- Do not immediately terminate a testing program when results are received
- Fixed an issue when a custom pio test --project-config was not handled properly (issue #4299)
- Fixed an issue when testing results were wrong in the verbose mode (issue #4336)
-
Build System
- Significantly improved support for Pre & Post Actions
- Allowed to declare actions in the PRE-type scripts even if the target is not ready yet
- Allowed library maintainers to use Pre & Post Actions in the library extraScript
- Documented Stringification – converting a macro argument into a string constant (issue #4310)
- Added new pio run --monitor-port option to specify custom device monitor port to the
monitor
target (issue #4337) - Added
env.StringifyMacro(value)
helper function for the Advanced Scripting - Allowed to
Import("projenv")
in a library extra script (issue #4305) - Fixed an issue when the build_unflags operation ignores a flag value (issue #4309)
- Fixed an issue when the build_unflags option was not applied to the
ASPPFLAGS
scope - Fixed an issue on Windows OS when flags were wrapped to the temporary file while generating the Compilation database "compile_commands.json"
- Fixed an issue with the LDF when recursively scanning dependencies in the
chain
mode - Fixed a "PermissionError" on Windows when running "clean" or "cleanall" targets (issue #4331)
- Significantly improved support for Pre & Post Actions
-
Package Management
- Fixed an issue when library dependencies were installed for the incompatible project environment (issue #4338)
-
Miscellaneous
- Warn about incompatible Bash version for the Shell Completion (issue #4326)