public SemverCompatibilityFlags GetSemverCompatibility(Version value)
        {
            Contract.Requires(null != value);
            Contract.Ensures(null != Contract.Result <SemverCompatibilityFlags>());

            var serverVersion = new DiagnosticsEndpointCommunication().GetBaseUriVersion(_Endpoints);

            var result = SemverCompatibilityFlags.Compatible;

            if (value < serverVersion)
            {
                result |= SemverCompatibilityFlags.ServerIsNewer;
            }

            if (value.Major < serverVersion.Major)
            {
                result |= SemverCompatibilityFlags.BreakingChanges;
            }

            if (value.Major < serverVersion.Major || value.Minor < serverVersion.Minor)
            {
                result |= SemverCompatibilityFlags.AdditionalFeatures;
            }

            if (value.Major < serverVersion.Major || value.Minor < serverVersion.Minor || value.Build < serverVersion.Build)
            {
                result |= SemverCompatibilityFlags.Patched;
            }

            return(result);
        }
        public SemverCompatibilityFlags GetSemverCompatibility(Version value)
        {
            Contract.Requires(null != value);
            Contract.Ensures(null != Contract.Result<SemverCompatibilityFlags>());

            var serverVersion = new DiagnosticsEndpointCommunication().GetBaseUriVersion(_Endpoints);
            
            var result = SemverCompatibilityFlags.Compatible;

            if(value < serverVersion)
            {
                result |= SemverCompatibilityFlags.ServerIsNewer;
            }

            if(value.Major < serverVersion.Major)
            {
                result |= SemverCompatibilityFlags.BreakingChanges;
            }

            if(value.Major < serverVersion.Major || value.Minor < serverVersion.Minor)
            {
                result |= SemverCompatibilityFlags.AdditionalFeatures;
            }

            if(value.Major < serverVersion.Major || value.Minor < serverVersion.Minor || value.Build < serverVersion.Build)
            {
                result |= SemverCompatibilityFlags.Patched;
            }

            return result;
        }