JSON API changes to solve sevearl remote backup issues. We have been investigating reports of various JSON API issues: quotas not being applies, files not uploaded to remote storage, backup restarting after it's over, backup restarting in the middle of the process using the default backup profile. These are all linked to the unique backup ID generated when the backup starts and which is communicated to and from the JSON API clients (Akeeba Remote CLI and various services). Due to changes in newer MySQL versions this identifier was no longer unique and could cause the wrong backup information to be loaded. This would also result in profile #1 being loaded instead of the correct profile of the ongoing backup which would cause the other observed problems on sites using more than one backup profiles. We changed the identifier format and the way it's generated to be truly unique and added more checks to guard against the backup memory file going away during the backup. Furthermore, we changed the way stepping the backup works internally to ensure the correct backup profile is always loaded even before loading the backup engine state from the memory file to prevent the default backup profile being used on accident in some cases. We'd like to thank the third party service Watchful for providing the information which helped us determine the conditions under which one of these issues took place, leading to the discovery of the common root cause for all these issues.
Bug fixes and minor improvements. Please take a look at the CHANGELOG below.
Please consult our Compatibility page. It explains our version support policy and lists which versions of our software are compatible with which versions of the supported CMS and PHP.