helper

package
v15.7.1 Latest Latest
Warning

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

Go to latest
Published: Jan 5, 2023 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var MaxCommitOrTagMessageSize = 10 * 1024

MaxCommitOrTagMessageSize is the threshold for a commit/tag message, if exceeded then message is truncated and it's up to the client to request it in full separately.

Functions

func ByteSliceHasAnyPrefix

func ByteSliceHasAnyPrefix(s []byte, prefixes ...string) bool

ByteSliceHasAnyPrefix tests whether the byte slice s begins with any of the prefixes.

func CheckClockSync

func CheckClockSync(ntpHost string, driftThreshold time.Duration) (bool, error)

CheckClockSync checks if machine clock has allowed drift threshold compare to NTP service. ntpHost is a URL of the NTP service to query, if not set the default pool.ntp.org is used. driftThreshold is a time duration that is considered acceptable time offset.

func ErrInvalidArgumentf

func ErrInvalidArgumentf(format string, a ...interface{}) error

ErrInvalidArgumentf wraps a formatted error with codes.InvalidArgument, unless the formatted error is a wrapped gRPC error.

func ErrNotFoundf

func ErrNotFoundf(format string, a ...interface{}) error

ErrNotFoundf wraps a formatted error with codes.NotFound, unless the formatted error is a wrapped gRPC error.

func GrpcCode

func GrpcCode(err error) codes.Code

GrpcCode translates errors into codes.Code values. It unwraps the nested errors until it finds the most nested one that returns the codes.Code. If err is nil it returns codes.OK. If no codes.Code found it returns codes.Unknown.

func IsNumber

func IsNumber(s []byte) bool

IsNumber tests whether the byte slice s contains only digits or not

func RepoPathEqual

func RepoPathEqual(a, b repository.GitRepo) bool

RepoPathEqual compares if two repositories are in the same location

func SanitizeError

func SanitizeError(err error) error

SanitizeError does the same thing as SanitizeString but for error types

func SanitizeString

func SanitizeString(str string) string

SanitizeString will clean password and tokens from URLs, and replace them with [FILTERED].

func SuppressCancellation

func SuppressCancellation(ctx context.Context) context.Context

SuppressCancellation returns a context that suppresses cancellation or expiration of the parent context.

func UnquoteBytes

func UnquoteBytes(s []byte) []byte

UnquoteBytes removes surrounding double-quotes from a byte slice returning a new slice if they exist, otherwise it returns the same byte slice passed.

Types

type CountingWriter

type CountingWriter struct {
	W io.Writer
	N int64
}

CountingWriter wraps an io.Writer and counts all the writes. Accessing the count N is not thread-safe.

func (*CountingWriter) Write

func (cw *CountingWriter) Write(p []byte) (int, error)

type ManualTicker

type ManualTicker struct {
	StopFunc  func()
	ResetFunc func()
	// contains filtered or unexported fields
}

ManualTicker implements a ticker that ticks when Tick is called. Stop and Reset functions call the provided functions.

func NewCountTicker

func NewCountTicker(n int, callback func()) *ManualTicker

NewCountTicker returns a ManualTicker with a ResetFunc that calls the provided callback on Reset call after it has been called N times.

func NewManualTicker

func NewManualTicker() *ManualTicker

NewManualTicker returns a Ticker that can be manually controlled.

func (*ManualTicker) C

func (mt *ManualTicker) C() <-chan time.Time

func (*ManualTicker) Reset

func (mt *ManualTicker) Reset()

func (*ManualTicker) Stop

func (mt *ManualTicker) Stop()

func (*ManualTicker) Tick

func (mt *ManualTicker) Tick()

type Ticker

type Ticker interface {
	C() <-chan time.Time
	Stop()
	Reset()
}

Ticker ticks on the channel returned by C to signal something.

func NewTimerTicker

func NewTimerTicker(interval time.Duration) Ticker

NewTimerTicker returns a Ticker that ticks after the specified interval has passed since the previous Reset call.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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