From 195e9bed63661b2243e284488d215bf30c0704fe Mon Sep 17 00:00:00 2001 From: bufdev Date: Fri, 27 Sep 2024 21:06:32 -0400 Subject: [PATCH] Split info messages into different files --- buf/plugin/info/v1/doc.proto | 34 ++++++++++++++++++++++++++++ buf/plugin/info/v1/info.proto | 32 ++------------------------- buf/plugin/info/v1/license.proto | 38 ++++++++++++++++++++++++++++++++ 3 files changed, 74 insertions(+), 30 deletions(-) create mode 100644 buf/plugin/info/v1/doc.proto create mode 100644 buf/plugin/info/v1/license.proto diff --git a/buf/plugin/info/v1/doc.proto b/buf/plugin/info/v1/doc.proto new file mode 100644 index 0000000..ede476d --- /dev/null +++ b/buf/plugin/info/v1/doc.proto @@ -0,0 +1,34 @@ +// Copyright 2024 Buf Technologies, Inc. +// +// 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 buf.plugin.info.v1; + +import "buf/validate/validate.proto"; + +option go_package = "buf.build/gen/go/bufbuild/bufplugin/protocolbuffers/go/buf/plugin/info/v1"; + +// Documentation for a plugin. +message Doc { + // A short string describing the plugin. + // + // This is required. + string short = 1 [(buf.validate.field).required = true]; + // A long string providing more details on using the plugin. + // + // When producing documentation for the plugin, this will be concatenated with + // the value from short with a newline separating short and long. + string long = 2; +} diff --git a/buf/plugin/info/v1/info.proto b/buf/plugin/info/v1/info.proto index a9a2309..e54908f 100644 --- a/buf/plugin/info/v1/info.proto +++ b/buf/plugin/info/v1/info.proto @@ -16,6 +16,8 @@ syntax = "proto3"; package buf.plugin.info.v1; +import "buf/plugin/info/v1/doc.proto"; +import "buf/plugin/info/v1/license.proto"; import "buf/validate/validate.proto"; option go_package = "buf.build/gen/go/bufbuild/bufplugin/protocolbuffers/go/buf/plugin/info/v1"; @@ -31,33 +33,3 @@ message Info { // Documentation for a plugin. Doc doc = 3; } - -// A plugin license. -message License { - // The SPDX license ID. - // - // See https://spdx.org/licenses. - string spdx_license_id = 1; - // The source of a license is either raw text, or a URL that contains the license. - oneof source { - option (buf.validate.oneof).required = true; - - // The raw text of the license. - string text = 2; - // The url that contains the license - string url = 3 [(buf.validate.field).string.uri = true]; - } -} - -// Documentation for a plugin. -message Doc { - // A short string describing the plugin. - // - // This is required. - string short = 1 [(buf.validate.field).required = true]; - // A long string providing more details on using the plugin. - // - // When producing documentation for the plugin, this will be concatenated with - // the value from short with a newline separating short and long. - string long = 2; -} diff --git a/buf/plugin/info/v1/license.proto b/buf/plugin/info/v1/license.proto new file mode 100644 index 0000000..3d954cf --- /dev/null +++ b/buf/plugin/info/v1/license.proto @@ -0,0 +1,38 @@ +// Copyright 2024 Buf Technologies, Inc. +// +// 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 buf.plugin.info.v1; + +import "buf/validate/validate.proto"; + +option go_package = "buf.build/gen/go/bufbuild/bufplugin/protocolbuffers/go/buf/plugin/info/v1"; + +// A plugin license. +message License { + // The SPDX license ID. + // + // See https://spdx.org/licenses. + string spdx_license_id = 1; + // The source of a license is either raw text, or a URL that contains the license. + oneof source { + option (buf.validate.oneof).required = true; + + // The raw text of the license. + string text = 2; + // The url that contains the license + string url = 3 [(buf.validate.field).string.uri = true]; + } +}