Suggest to install packages with git instead of sources not under version contorol

I’d suggest to install packages with git directly.

For example,
~/.platformio/packages/framework-arduinoespressif8266
This is a relatively big code source tree.

Often in a big custom project, we need to patch some code in the framework source.
Each time we do, it is a pain, because the package source directory is not under version control.

If the package comes with git along with installing or upgrading, everything will be great since I can see what changes I’ve made to the original framework source, and what’s new in it.

That will do help for us to build future projects using PlatformIO.

Thanks.

Plese sorry, and where is the question? You can fork existing development platform and modify its platform.json with our needs. See

or better

@ivankravets thanks for the reply.
In fact there is no problem for me, just a suggest. :slight_smile:

In above I described a little pain if we’d like to apply patch on the framework code:

Often in a big custom project, we need to patch some code in the framework source.
Each time we do, it is a pain, because the package source directory is not under version control.


e.g.

To put it more detailedly, first I install necessary platform:

$ platformio platform install espressif8266

Then I’ll get the framework source code in:

~/.platformio/packages/framework-arduinoespressif8266

If I modified several lines of code in this directory, like:

 cores/esp8266/Updater.cpp                             | 49 +++++++--------
 libraries/ESP8266WiFi/src/ESP8266WiFiMulti.cpp        | 44 +++++--------
 libraries/ESP8266httpUpdate/src/ESP8266httpUpdate.cpp | 50 +++++++---------
 libraries/ESP8266httpUpdate/src/ESP8266httpUpdate.h   |  5 ++
 4 files changed, 67 insertions(+), 81 deletions(-)

I’ll not be able to find the diff without version control in this directory!
It’s a pain when I have to apply a set of patches to the original code in a relatively big project.

So I created this post to suggest to use git in the installed platform code.

Take a look at extra scripting:

You can write a script which checks existing installation for Arduino Core for 8266 and applies requires patches.