private/

directory
v1.62.0 Latest Latest
Warning

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

Go to latest
Published: Dec 29, 2025 License: Apache-2.0

README

Package structure

  • private/pkg contains utility packages that are not Buf-company-specific. In theory, any of these packages could be split into a separate repository in the future, and not depend on Buf types or concepts.
  • private/bufpkg contains utility packages that are Buf-company-specific, but not specific to github.com/bufbuild/buf. These packages could be split into separate repositories in the future.
  • private/buf contains packages specific to github.com/bufbuild/buf. In other repositories, this should be named after that specific repository, for example github.com/bufbuild/foo would contain private/foo.

There's a strict dependency graph imposed at this level:

  • cmd/{binary} packages must be main packages, and any sub-packages must be internal. cmd/{binary} packages can import from any private package.
  • private/buf packages can import from private/bufpkg and private/pkg packages, but not cmd packages.
  • private/bufpkg packages can import from private/pkg packages, but not cmd or private/bufpkg packages.
  • private/pkg packages can only import from other private/pkg packages.

That is, the ordering is strictly cmd -> private/buf -> private/bufpkg -> private/pkg. This is enforced by linting tools.

Directories

Path Synopsis
buf
bufgen
Package bufgen does configuration-based generation.
Package bufgen does configuration-based generation.
buflsp
Package buflsp implements a language server for Protobuf.
Package buflsp implements a language server for Protobuf.
bufprotoc
Package bufprotoc builds ModuleSets for protoc include paths and file paths.
Package bufprotoc builds ModuleSets for protoc include paths and file paths.
bufprotopluginexec
Package bufprotopluginexec provides protoc plugin handling and execution.
Package bufprotopluginexec provides protoc plugin handling and execution.
bufpkg
bufconnect
Package bufconnect provides buf-specific Connect functionality.
Package bufconnect provides buf-specific Connect functionality.
bufprotoplugin
Package bufprotoplugin contains helper functionality for protoc plugins.
Package bufprotoplugin contains helper functionality for protoc plugins.
bufprotoplugin/bufprotopluginos
Package bufprotopluginos does OS-specific generation.
Package bufprotopluginos does OS-specific generation.
bufprotosource
Package bufprotosource defines minimal interfaces for Protobuf descriptor types.
Package bufprotosource defines minimal interfaces for Protobuf descriptor types.
bufremoteplugin/bufremotepluginconfig
Package bufremotepluginconfig defines the buf.plugin.yaml file.
Package bufremotepluginconfig defines the buf.plugin.yaml file.
bufremoteplugin/bufremoteplugindocker
Package bufremoteplugindocker contains utilities for building Buf plugins using the Docker API.
Package bufremoteplugindocker contains utilities for building Buf plugins using the Docker API.
gen
data/datawkt
Package datawkt stores the sources of the Well-Known Types, and provides helper functionality around them.
Package datawkt stores the sources of the Well-Known Types, and provides helper functionality around them.
pkg
dag
diff
Package diff implements diffing.
Package diff implements diffing.
encoding
Package encoding provides encoding utilities.
Package encoding provides encoding utilities.
git
git/cmd/git-ls-files-unstaged command
Package main implements a file lister for git that lists unstaged files.
Package main implements a file lister for git that lists unstaged files.
github/githubtesting
Package githubtesting provides testing functionality for GitHub.
Package githubtesting provides testing functionality for GitHub.
indent
Package indent handles printing with indentation, mostly for debug purposes.
Package indent handles printing with indentation, mostly for debug purposes.
licenseheader
Package licenseheader handles license headers.
Package licenseheader handles license headers.
netrc
Package netrc contains functionality to work with netrc.
Package netrc contains functionality to work with netrc.
normalpath
Package normalpath provides functions similar to filepath.
Package normalpath provides functions similar to filepath.
oauth2
Package oauth2 contains functionality to work with OAuth2.
Package oauth2 contains functionality to work with OAuth2.
osext
Package osext provides os utilities.
Package osext provides os utilities.
protogenutil
Package protogenutil provides support for protoc plugin development with the protoplugin and protogen packages.
Package protogenutil provides support for protoc plugin development with the protoplugin and protogen packages.
refcount
Package refcount provides utilities for working with reference-counted objects.
Package refcount provides utilities for working with reference-counted objects.
shake256
Package shake256 provides simple utilities around shake256 digests.
Package shake256 provides simple utilities around shake256 digests.
slogapp
Package slogapp builds slog.Loggers.
Package slogapp builds slog.Loggers.
slogtestext
Package slogtestext provides Loggers for testing.
Package slogtestext provides Loggers for testing.
storage
Package storage implements a simple storage abstraction.
Package storage implements a simple storage abstraction.
storage/cmd/ddiff command
Package main implements the ddiff command that diffs two directories.
Package main implements the ddiff command that diffs two directories.
storage/storagearchive
Package storagearchive implements archive utilities.
Package storagearchive implements archive utilities.
storage/storagemem
Package storagemem implements an in-memory storage Bucket.
Package storagemem implements an in-memory storage Bucket.
storage/storagemem/internal
Package internal splits out ImmutableObject into a separate package from storagemem to make it impossible to modify ImmutableObject via direct field access.
Package internal splits out ImmutableObject into a separate package from storagemem to make it impossible to modify ImmutableObject via direct field access.
storage/storageos
Package storageos implements an os-backed storage Bucket.
Package storageos implements an os-backed storage Bucket.
storage/storagetesting
Package storagetesting implements testing utilities and integration tests for storage.
Package storagetesting implements testing utilities and integration tests for storage.
storage/storageutil
Package storageutil provides helpers for storage implementations.
Package storageutil provides helpers for storage implementations.
syserror
Package syserror handles "system errors".
Package syserror handles "system errors".
tmp
Package tmp provides temporary files and directories.
Package tmp provides temporary files and directories.
wasm
Package wasm provides a Wasm runtime for plugins.
Package wasm provides a Wasm runtime for plugins.

Jump to

Keyboard shortcuts

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