protopb

package
v0.3.0-20260807201250-... Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 7, 2026 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_change_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type Change

type Change struct {

	// URIs identifying the change(s) (RFC 3986 compliant): scheme://<host[:port]>/<path>.
	// The scheme identifies the change provider, the authority is the provider instance
	// the change lives on, and the path contains provider-specific resource identifiers.
	//
	// Supported by default (other providers can be added):
	//
	//	GitHub PR:          "github://<host[:port]>/<org>/<repo>/pull/<pr>/<head_commit_sha>"
	//	Phabricator Diff:   "phab://<host[:port]>/D<revision>/<diff>"
	//	git commit:         "git://<host[:port]>/<repo>/<ref>/<commit_sha>"
	//	                    (<ref> is a fully-qualified, percent-encoded git ref)
	//
	// The commit SHA must be the full 40-character lowercase hex SHA; abbreviated
	// SHAs are rejected because downstream staleness checks compare by strict equality.
	//
	// One URI is one unit of change -- a single pull request, revision, or
	// commit -- and it is the granularity everything downstream operates at. A
	// list is therefore an ordered set of distinct changes (a stack), not one
	// change described several ways: they are applied in the order given, each
	// on top of the last, and each yields its own result. An integration
	// strategy chosen for a change applies to every URI in the list, the same
	// way to each.
	Uris []string `protobuf:"bytes,1,rep,name=uris,proto3" json:"uris,omitempty"`
	// contains filtered or unexported fields
}

Change represents a code change identified by URIs from a code change provider (e.g. a GitHub Pull Request, a Phabricator Diff, or a git commit). The provider is extracted from the URI scheme.

This is the shared wire contract for change identity, reused across SubmitQueue, Stovepipe, and other repo-local domains — the proto-level analog of the platform/base/change Go entity. Domains import it rather than redefining their own.

func (*Change) Descriptor deprecated

func (*Change) Descriptor() ([]byte, []int)

Deprecated: Use Change.ProtoReflect.Descriptor instead.

func (*Change) GetUris

func (x *Change) GetUris() []string

func (*Change) ProtoMessage

func (*Change) ProtoMessage()

func (*Change) ProtoReflect

func (x *Change) ProtoReflect() protoreflect.Message

func (*Change) Reset

func (x *Change) Reset()

func (*Change) String

func (x *Change) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL