Yesterday and today PlatformIO was updated on three computers. On one, everything is fine, everything works as before.
But on two - compilation became terribly, terribly slow, for the same project.
The process first gets stuck on “Reading CMake configuration…”, hangs for several minutes, then displays a dependency tree, hangs even longer, and only after a long pause does the normal build begin.
I tried to remove and reinstall everything - platforms, libraries and pio itself. What’s most interesting is that on the last computer at work there is no such slowdown.
[SUCCESS] Took 729.51 seconds, Karl!
Usually this project is assembled in a minute or two maximum
@valeros, do we have a compilation degradation between PlatormIO Core 6.1.13 and 6.1.14?
Probably. I can only associate this with this transition. Now even PIO: Loading tasks takes much longer to complete.
Can I somehow rollback Core to check?
Sorry, I realized that the question was not addressed to me
Yes, you can revert to the 6.1.13. Please open the PlatformIO Core CLI and type
python -m pip install "platformio==6.1.13"
Did it improve the situation?
PS C:\Projects\PlatformIO\village_greenhouse> python -m pip install “platformio==6.1.13”
C:\Users\kotyara12.platformio\python3\python.exe: No module named pip
Hi @kotyara12, is your project publicly available? I’ll need it to reproduce the issue.
I think I understand the source of the problem. The problem is on projects that use esp_modbus. I still can’t understand why, but I’m figuring it out. On those projects where rs485 was not used, everything is fine.
This doesn’t seem to be related to platformio.
I apologize for the false alarm and concern. I needed to check out another project before writing.
1 Like
Good afternoon I’m sorry, I’m bringing up the same topic.
I noticed here that if there are less than ~30 libraries in a project (32???), then the project is assembled quite quickly.
If there are more of them (and in some I have 40 or more), then it gets stuck in the process of checking dependencies, as I described above.
Could this be due to some kind of buffering during compilation?
Hi @kotyara12, sorry for the late reply. I was able to reproduce the issue and it seems that PlatformIO LDF in the "+"
mode is not able to process all your libraries in reasonable time. The issue is not ESP-IDF specific, the same behavior is reproducible with other frameworks. In a nutshell, the latest PlatformIO release brought a new version of the underlying build system which in turn contained some changes related to the C/C++ preprocessing we use for finding dependencies. As a workaround, I can recommend two options: You can restructure your project so that it works with default LDF in chain
mode or you can explicitly declare your dependencies in lib_deps
option (In this case the internal dependecies for each library should also be declared in manifest.json
files.)
1 Like
Thank you! The proposed solution (replacing chain+ with chain) really helped. In addition, the fact that you have reproduced the problem inspires optimism that it will be fixed. Thank you again