LinuxCommandLibrary

pio-update

Update the PlatformIO core and packages

TLDR

Perform a full update of all packages, development platforms and global libraries

$ pio update
copy

Update core packages only (skips platforms and libraries)
$ pio update --core-packages
copy

Check for new versions of packages, platforms and libraries but do not actually update them
$ pio update --dry-run
copy

SYNOPSIS

pio update [OPTIONS]

PARAMETERS

--help
    Display a help message for the command.

--json-output
    Output the results in JSON format, useful for scripting.

--dry-run
    Perform a simulated update, showing what would be updated without making actual changes.

--core-packages-update
    Update only the PlatformIO Core internal packages.

--platform-packages-update
    Update only the installed development platforms.

--framework-packages-update
    Update only the installed frameworks (e.g., Arduino, ESP-IDF).

--tool-packages-update
    Update only the installed development tools (e.g., compilers, uploaders).

--library-packages-update
    Update only the installed project libraries.

DESCRIPTION

pio-update is a crucial command within the PlatformIO Core ecosystem. It is used to keep your PlatformIO development environment up-to-date by downloading and installing the latest versions of core packages, development platforms, frameworks, tools, and libraries. Regular use of this command ensures you have access to the newest features, bug fixes, performance improvements, and security patches for your embedded and IoT development projects. It streamlines the process of maintaining a robust and current development setup, preventing compatibility issues and leveraging the most recent advancements in supported hardware and software.

CAVEATS

Requires an active internet connection to download updates.
Updates can be time-consuming, especially if many components need to be refreshed.
While generally stable, major version updates of components might occasionally introduce breaking changes for existing projects, though this is rare with PlatformIO's dependency management.

DEFAULT BEHAVIOR

When executed without any options, pio update will attempt to update all installed PlatformIO Core packages, development platforms, frameworks, tools, and project libraries. This provides a comprehensive update for your entire PlatformIO ecosystem.

REGULAR MAINTENANCE

It is highly recommended to run pio update regularly to ensure you are working with the latest stable versions of PlatformIO components, which can resolve potential bugs, improve performance, and provide access to new features and hardware support.

HISTORY

PlatformIO Core, including the pio update command, was created by Ivan Kravets.
Since its inception, pio update has been a fundamental command, designed to simplify the complex task of managing toolchains, frameworks, and libraries for cross-platform embedded development.
It has evolved to support an ever-growing list of microcontrollers and development boards, continuously adapting to the needs of the IoT and embedded systems community by providing a unified and easy-to-maintain development environment.

SEE ALSO

pio(1), pio run(1), pio platform(1), pio lib(1), pip(1)

Copied to clipboard