ESP8266 platformio development version, does it point to Arduino master branch?

as title.

Suppose that I use this in my platformio.ini
platform = GitHub - platformio/platform-espressif8266: Espressif 8266: development platform for PlatformIO

it points to the development branch of the platformio esp8266 platform.

But how can I know what version of the main platform does it use?
How can I know if the fixes that are in this master branch

are included in the platformio development version?

does the platformio dev version points to a specific commit of the arduino main brach in this repo?

Through the platform.json.

Mind that the version is a semantic version (semver). So the ~3.30002.0 will get the latest package version if the form 3.30002.<dont't care>.

The package versions are available in PlatformIO Registry. Currently, 3.30002.0 is the latest, which encodes 3.0.2, which is the latest stable.

Frameworks in official platforms are pretty much always sourced from the PlatformIO package repository, they are not pointers to external repos with some commit hash or tag. Though you can easily from the version name scheme which underlying version the package provides.

As shown in platform_packages, you can arbitrarily re-point the source for framework-arduinoespressif8266, e.g., to the current master branch.

I don’t get the difference between

[env:stable]
platform = espressif8266

and this

platform = https://github.com/platformio/platform-espressif8266.git

if both points to the latest stable.

thank you!!!

The platform is not only about the used framework version, but all the logic regarding building and uploading (builder/main.py), platform options (platform.py), board definition (boards/). As a theoretical example, it may e.g. be that the main.py has a bug that prevents proper uploading, which may be fixed in the bleeding edge https://github.com/platformio/platform-espressif8266.git version, but in the latest stable espressif8266 version. And those two platform versions may well be pointing to the exact same (stable) framework version.

In general, I have not yet ever seen that a bleeding-edge platform version (as released by the PlatformIO developers) gets a bleeding-edge framework package version. It’s just about fixes to the build logic, board files, or previews to the next stable framework etc in the platform. For changing package versions to arbitrary ones, platform_packages is the way to go.

1 Like