[Spice-devel] [PATCH spice-streaming-agent v2 1/2] Don't tag the plugin interface as 1.0 just yet
Frediano Ziglio
fziglio at redhat.com
Thu Nov 16 10:43:09 UTC 2017
>
> From: Christophe de Dinechin <dinechin at redhat.com>
>
> This patch series introduces changes in the ABI and API, and I expect
> a few more to arrive shortly. So I tagged the ABI version as 0.01,
> and all 0.x versions are considered as incompatible with one another
> by default. When we reach ABI and API stability, we can bump to a
> non-zero version number and then we will need to preserve ABI and API
> compatibility within a major version moving forward.
>
> Signed-off-by: Christophe de Dinechin <dinechin at redhat.com>
Still nack, I already explained why.
> ---
> include/spice-streaming-agent/plugin.hpp | 2 +-
> src/concrete-agent.cpp | 3 +++
> 2 files changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/include/spice-streaming-agent/plugin.hpp
> b/include/spice-streaming-agent/plugin.hpp
> index 727cb3b..607fabf 100644
> --- a/include/spice-streaming-agent/plugin.hpp
> +++ b/include/spice-streaming-agent/plugin.hpp
> @@ -26,7 +26,7 @@ class FrameCapture;
> * where MM is major and mm is the minor, can be easily expanded
> * using more bits in the future
> */
> -enum Constants : unsigned { PluginVersion = 0x100u };
> +enum Constants : unsigned { PluginVersion = 0x001u };
>
> enum Ranks : unsigned {
> /// this plugin should not be used
> diff --git a/src/concrete-agent.cpp b/src/concrete-agent.cpp
> index 192054a..51b4504 100644
> --- a/src/concrete-agent.cpp
> +++ b/src/concrete-agent.cpp
> @@ -34,6 +34,9 @@ ConcreteAgent::ConcreteAgent()
> bool ConcreteAgent::PluginVersionIsCompatible(unsigned pluginVersion) const
> {
> unsigned version = Version();
> + // Accept API/ABI changes until we reached a stable version
> + if (MajorVersion(version) == 0)
> + return version == pluginVersion;
> return MajorVersion(version) == MajorVersion(pluginVersion) &&
> MinorVersion(version) >= MinorVersion(pluginVersion);
> }
More information about the Spice-devel
mailing list