You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/util
James Tucker d0f3fa7d7e util/fastuuid: add a more efficient uuid generator
This still generates github.com/google/uuid UUID objects, but does so
using a ChaCha8 CSPRNG from the stdlib rand/v2 package. The public API
is backed by a sync.Pool to provide good performance in highly
concurrent operation.

Under high load the read API produces a lot of extra garbage and
overhead by way of temporaries and syscalls. This implementation reduces
both to minimal levels, and avoids any long held global lock by
utilizing sync.Pool.

Updates tailscale/corp#18266
Updates tailscale/corp#19054

Signed-off-by: James Tucker <james@tailscale.com>
1 month ago
..
cache util/cache: fix missing interface methods (#11275) 3 months ago
cibuild all: update copyright and license headers 1 year ago
clientmetric util/clientmetric: allow client metric values to be provided by a function 1 year ago
cloudenv util/cloudenv: add support for DigitalOcean 3 months ago
cmpver util/cmpver: add Less/LessEq helper funcs 2 months ago
codegen util/codegen: support embedded fields 1 year ago
cstruct all: update copyright and license headers 1 year ago
ctxkey all: use reflect.TypeFor now available in Go 1.22 (#11078) 3 months ago
deephash all: use reflect.TypeFor now available in Go 1.22 (#11078) 3 months ago
dirwalk all: use tstest.Replace more 1 year ago
dnsname cmd/tailscale: extend hostname validation (#7678) 1 year ago
execqueue control/controlclient,util/execqueue: extract execqueue into a package 4 months ago
expvarx util/expvarx: add a time and concurrency limiting expvar.Func wrapper 4 months ago
fastuuid util/fastuuid: add a more efficient uuid generator 1 month ago
goroutines util/goroutines: let ScrubbedGoroutineDump get only current stack 11 months ago
groupmember util/groupmember: fail earlier if group doesn't exist, use slices.Contains 7 months ago
hashx all: update copyright and license headers 1 year ago
httphdr util/httphdr: add new package for parsing HTTP headers (#9797) 7 months ago
httpm util/httpm: don't run test if .git doesn't exist 6 months ago
jsonutil all: update copyright and license headers 1 year ago
limiter util/lru, util/limiter: add debug helper to dump state as HTML 8 months ago
lineread all: update copyright and license headers 1 year ago
linuxfw cmd/tailscaled: move cleanup to an implicit action during startup 1 month ago
lru util/lru: update c.head when deleting the most recently used entry 8 months ago
mak various: add golangci-lint, fix issues (#7905) 1 year ago
multierr all: use Go 1.21 slices, maps instead of x/exp/{slices,maps} 9 months ago
must all: update copyright and license headers 1 year ago
nocasemaps util/nocasemaps: add AppendSliceElem method to nocasemaps (#10871) 4 months ago
osdiag util/osdiag, util/winutil: expose Windows policy key 6 months ago
osshare all: update copyright and license headers 1 year ago
osuser ssh/tailssh,util: extract new osuser package from ssh code (#10170) 6 months ago
pidowner all: update copyright and license headers 1 year ago
precompress all: update copyright and license headers 1 year ago
progresstracking ipn/localapi: add support for multipart POST to file-put 2 months ago
quarantine all: update copyright and license headers 1 year ago
race util/race: add test to confirm we don't leak goroutines 8 months ago
racebuild all: update copyright and license headers 1 year ago
rands util/rands: add Shuffle and Perm functions with on-stack RNG state 3 months ago
reload util/reload: add new package to handle periodic value loading 2 months ago
ringbuffer wgengine/magicsock: don't use endpoint debug ringbuffer on mobile. 2 months ago
set util/set: implement json.Marshaler/Unmarshaler (#10308) 6 months ago
singleflight all: update copyright and license headers 1 year ago
slicesx util/slicesx: add Filter function 4 months ago
syspolicy util/syspolicy: add 'ResetToDefaults' (#11194) 3 months ago
sysresources util/sysresources, magicsock: scale DERP buffer based on system memory 1 year ago
systemd all: update copyright and license headers 1 year ago
testenv util/testenv: add new package to hold InTest 9 months ago
topk util/topk: add package containing a probabilistic top-K tracker 3 months ago
truncate util/truncate: support []byte as well (#11614) 1 month ago
uniq all: update copyright and license headers 1 year ago
vizerror util/vizerror: add As function to get wrapped Error 1 year ago
winutil util/winutil/winenv: add package for current Windows environment details 1 month ago
zstdframe util/zstdframe: support specifying a MaxWindowSize (#11595) 1 month ago