// Copyright 2018 The Bazel Authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

syntax = "proto3";

package build.bazel.semver;

option csharp_namespace = "Build.Bazel.Semver";
option go_package = "github.com/bazelbuild/remote-apis/build/bazel/semver";
option java_multiple_files = true;
option java_outer_classname = "SemverProto";
option java_package = "build.bazel.semver";
option objc_class_prefix = "SMV";

// The full version of a given tool.
message SemVer {
  // The major version, e.g 10 for 10.2.3.
  int32 major = 1;

  // The minor version, e.g. 2 for 10.2.3.
  int32 minor = 2;

  // The patch version, e.g 3 for 10.2.3.
  int32 patch = 3;

  // The pre-release version. Either this field or major/minor/patch fields
  // must be filled. They are mutually exclusive. Pre-release versions are
  // assumed to be earlier than any released versions.
  string prerelease = 4;
}
