A placeholder edition for specifying default behaviors before a feature
was first introduced. This is effectively an "infinite past".
Max
Placeholder for specifying unbounded edition support. This should only
ever be used by plugins that can expect to never require any changes to
support a new edition.
Proto2
Legacy syntax "editions". These pre-date editions, but behave much like
distinct editions. These can't be used to specify the edition of proto
files, but feature definitions must supply proto2/proto3 defaults for
backwards compatibility.
Proto3
Unknown
A placeholder for an unknown edition value.
_1TestOnly
Placeholder editions for testing feature resolution. These should not be
used or relyed on outside of tests.
_2023
Editions that have been released. The specific values are arbitrary and
should not be depended on, but they will always be time-ordered for easy
comparison.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eEdition\u003c/code\u003e enum in the \u003ccode\u003eGoogle.Protobuf.Reflection\u003c/code\u003e namespace represents a set of known protocol buffer editions, including legacy, current, and placeholder versions.\u003c/p\u003e\n"],["\u003cp\u003eSpecific editions like \u003ccode\u003eLegacy\u003c/code\u003e, \u003ccode\u003eProto2\u003c/code\u003e, and \u003ccode\u003eProto3\u003c/code\u003e are defined, each with unique behaviors related to feature introduction and backwards compatibility.\u003c/p\u003e\n"],["\u003cp\u003ePlaceholder editions such as \u003ccode\u003eMax\u003c/code\u003e and \u003ccode\u003eUnknown\u003c/code\u003e are used for unbounded support and representing unknown edition values, respectively.\u003c/p\u003e\n"],["\u003cp\u003eTest-only editions are available to be used for the purpose of feature resolution testing.\u003c/p\u003e\n"],["\u003cp\u003eReal editions, like \u003ccode\u003e_2023\u003c/code\u003e and \u003ccode\u003e_2024\u003c/code\u003e, are time-ordered and used to show released editions, although the values themselves are not significant.\u003c/p\u003e\n"]]],[],null,["# Enum Edition (3.27.1)\n\nVersion latestkeyboard_arrow_down\n\n- [3.27.1 (latest)](/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.Reflection.Edition)\n- [3.23.0](/dotnet/docs/reference/Google.Protobuf/3.23.0/Google.Protobuf.Reflection.Edition)\n- [3.15.8](/dotnet/docs/reference/Google.Protobuf/3.15.8/Google.Protobuf.Reflection.Edition) \n\n public enum Edition\n\nThe full set of known editions.\n\nNamespace\n---------\n\n[Google.Protobuf.Reflection](/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.Reflection)\n\nAssembly\n--------\n\nGoogle.Protobuf.dll"]]