Avoid the different installed IDE versions from interfering with each other by altering the shared files in the .arduino15 folder. Currently I can't use 1.6.2 with other versions due to interference so portable mode would solve that.
Allow Boards Manager/Library Manager installations to be tested with specific IDE versions, rather than the newest installed version only. This will be the most important for testing Boards Manager JSON files for 3rd party hardware packages.
Drawbacks:
Hardware packages can not be shared among IDE versions. This could significantly increase build time if packages with large tools need to be installed for multiple IDE versions.
I will need to add IDE version list/range arguments to install_package and install_library, which will be difficult as they already have optional parameters.
To do:
Check which is the first IDE version that supports portable mode. Some versions had different restrictions (https://github.com/arduino/Arduino/issues/4103) but that issue indicates that was not the case for Linux.
Allow the sketchbook folder to be set for individual IDE versions.
Benefits:
Drawbacks:
To do: