When I compare vboxweb.wsdl between VirtualBoxSDK-6.1.42-155177 and VirtualBoxSDK-7.0.6-155176, I noticed some enum values have changed which seem like there would be some backwards compatibility issues.
For example, the MachineState enum has a new value: AbortedSaved.
However, it was not added to the end of the enum list (or explicitly set to a higher value than the previous/existing values).
So for example, when generating C# client code:
VirtualBox 6.1.42:
- Code: Select all Expand viewCollapse view
public enum MachineState
{
Null, // 0
PoweredOff, // 1
Saved, // 2
Teleported, // 3
Aborted, // 4
Running, // 5
Paused, // 6
...
}
VirtualBox 7.0.6:
- Code: Select all Expand viewCollapse view
public enum MachineState
{
Null, // 0
PoweredOff, // 1
Saved, // 2
Teleported, // 3
Aborted, // 4
AbortedSaved, // 5 <-- the new value
Running, // 6 <-- this has changed
Paused, // 7 <-- this has changed
...
}
So the enum values of the old wsdl do not seem to be compatible with the enum values of the new wsdl.
This makes it harder to manage development environments with either VirtualBox 6.1.42 or 7.0.6 installed.
For example, if we have an older branch which uses the VirtualBox 6.1.42 SDK, and the new branch uses VirtualBox 7.0.6 SDK, it doesn't seem like we can work in both branches with VirtualBox 7 is installed.
Instead, it seems if we need to work with the older branch, we need to have VirtualBox 6 installed, and if we want to work with the newer branch, we need to have VirtualBox 7 installed.
Is that the expected behavior?
Any advice?
Thank you.