* Add initial support for detailed memory usage report
* Tidy up sizedata target
* Add toolchain to environment paths
* Make sizedata target a bit more readable
* Fixed an issue when configuration file options partly ignored when using custom ``--project-conf`` // Resolve#3034
* Py2 compatible makedirs
* Fix circle dependency
* Fix broken import in test examples
* Fix history
* Remove YAPF markers
* PyLint fix
* Fix invalid project conf path
* Move PIO Core to the root on Windows, issue with long CPPPATHs
* Respect global PLATFORMIO_BUILD_CACHE_DIR env var
* Fix Appveyor paths
* Minor changes
Some boards, like ESP32 based boards, give some unintelligible data when connecting to them via Serial. This is sometimes data that is send with the wrong baud rate (hard baked into the boot loader), or something else. It's hard to prevent this from happening. When a build is uploaded to the ESP board for unit testing, the decoding of the incoming stream should not fail the test due to some garbled content. Since the read data is validated on line 95, any garbage is automatically ignored and only outputted to the console.
* Better environement integration :
- Environement can be selected in the build target menu of CLion
- Platformio target runs on the selected environment
- Changing environment changes defined preprocessor variables and includes accordingly
- Added 'All' build profile that runs targets on all environment if there are multiple of them (Original behaviour)
* Calling get_project_dir() only once.
* Fixed include path not being converted to unix style.
Removed duplicate and not normalized definition