1 // Copyright 2021 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef COMPONENTS_ZUCCHINI_VERSION_INFO_H_ 6 #define COMPONENTS_ZUCCHINI_VERSION_INFO_H_ 7 8 // This file serves as a stable location for main Zucchini version constants, 9 // whose names and types should also be stable. These allow external tools to 10 // determine Zucchini version at compile time by inclusion or parsing. 11 12 namespace zucchini { 13 14 // A change in major version indicates breaking changes such that a patch 15 // definitely cannot be applied by a zucchini binary whose major version doesn't 16 // match. 17 enum : uint16_t { kMajorVersion = 1 }; 18 19 // A change in minor version indicates possibly breaking changes at the element 20 // level, such that it may not be possible to apply a patch whose minor version 21 // doesn't match this version. To determine if a given patch may be applied with 22 // this version, VerifyPatch() should be called. 23 enum : uint16_t { kMinorVersion = 0 }; 24 25 // A empty or error value for major or minor version numbers. 26 enum : uint16_t { kInvalidVersion = 0xffff }; 27 28 } // namespace zucchini 29 30 #endif // COMPONENTS_ZUCCHINI_VERSION_INFO_H_ 31