blob: 1b832deada1006a47d628c5e2fcca7d3fdfa87c8 [file] [log] [blame]
// Copyright 2020 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.developer.ffx;
const MAX_GIT_COMMIT_LENGTH uint16 = 40;
const MAX_BUILD_VERSION_LENGTH uint16 = 100;
const MAX_EXEC_PATH_LENGTH uint16 = 4096;
type VersionInfo = table {
/// Git commit hash of HEAD at build time.
1: commit_hash string:MAX_GIT_COMMIT_LENGTH;
/// UTC timestamp of the HEAD commit in seconds.
2: commit_timestamp uint64;
/// The build version, pulled from //build/info.
3: build_version string:MAX_BUILD_VERSION_LENGTH;
/// The ABI revision denotes the semantics of the Fuchsia System Interface
/// that an application expects the platform to provide. The number
/// has no ordering relationship (higher is not newer or older).
/// Can be mapped to an api_level using //sdk/version_history.json.
4: abi_revision uint64;
/// The API level denotes a set of APIs available when building an
/// application for a given release of the FUCHSIA IDK. Higher number
/// means newer.
/// Can be mapped to an abi_revision using //sdk/version_history.json.
5: api_level uint64;
/// Path of the actual FFX executable. This allows us to make absolutely
/// sure commands match the daemon they're communicating with.
6: exec_path string:MAX_EXEC_PATH_LENGTH;
/// Build ID of the FFX executable.
7: build_id string:64;
};