This package provides a HTTP Transport that implements the RoundTripper interface and can be used as a built in replacement for the standard library.
Package config provides utilities for loading configuration from multiple sources that can be used to configure the SDK's API clients, and utilities.
This package implements a restriction for the current processes' ability to use files, using Linux 5.13's Landlock feature.
@codehpkecompact is a small implementation of the @urlhttps://cfrg.github.io/draft-irtf-cfrg-hpke/draft-irtf-cfrg-hpke.html,Hybrid Public Key Encryption (HPKE) draft.
This is a package to change the color of the text and background in the console, working both under Windows and other systems. Under Windows, the console APIs are used. Otherwise, ANSI texts are output.
Package dht implements a distributed hash table that satisfies the IPFS routing interface as specified in kab-dht. This DHT is modeled after Kademlia with S/Kademlia modifications.
Package doh implements client operations for DoH (DNS over HTTPS) lookups. It implements looking up the following records:
A
AAAA
CNAME
MX
NS
TXT
SRV
SOA
PTR
Package mapstructure exposes functionality to convert one arbitrary Go type into another, typically to convert a map[string]interface into a native Go structure. It's an alternative fork of not maintained https://github.com/mitchellh/mapstructure project.
This package is an implementation of Roaring bitmaps as described at https://roaringbitmap.org/about/ in Go. Roaring bitmaps are fast compressed bitmap data structures (also called bitset). They are ideally suited to represent sets of integers over relatively small ranges.
For a given struct, recli builds a set of urfave/cli commands which allows you to modify it from the command line. It is useful for generating command line clients for your application configuration that is stored in a Go struct.
This package provides a parser library for Golang which constructs parsers from definitions in struct tags and parses directly into those structs. The approach is similar to how other marshallers work in Golang, "unmarshalling" an instance of a grammar into a struct.
Containerd is a container runtime with an emphasis on simplicity, robustness, and portability. It is available as a daemon, which can manage the complete container lifecycle of its host system: image transfer and storage, container execution and supervision, low-level storage and network attachments, etc.
Package digest provides a generalized type to opaquely represent message digests and their operations within the registry. The Digest type is designed to serve as a flexible identifier in a content-addressable system. More importantly, it provides tools and wrappers to work with hash.Hash-based digests with little effort.
AmneziaWG is a contemporary version of the WireGuard protocol. It's a fork of WireGuard-Go and offers protection against detection by DPI systems. At the same time, it retains the simplified architecture and high performance of the original. For more information, see https://docs.amnezia.org/documentation/amnezia-wg/.
Tessera is a Go library for building tile-based transparency logs (tlogs). It is the logical successor to the approach Trillian v1 takes in building and operating logs. The implementation and its APIs bake-in current best-practices based on the lessons learned over the past decade of building and operating transparency logs in production environments and at scale.
Obfs4 is a look-like nothing obfuscation protocol that incorporates ideas and concepts from Philipp Winter's ScrambleSuit protocol.
The notable differences between ScrambleSuit and obfs4 are:
The handshake always does a full key exchange (no such thing as a Session Ticket Handshake).
The handshake uses the Tor Project's ntor handshake with public keys obfuscated via the Elligator 2 mapping.
The link layer encryption uses NaCl secret boxes (Poly1305/XSalsa20).
This package provides Go stemmers generated by the Snowball project.
All these stemmers export a single Stem() method which operates on a snowball Env structure. The Env structure maintains all state for the stemmer. A new Env is created to point at an initial string. After stemming, the results of the Stem() operation can be retrieved using the Current() method. The Env structure can be reused for subsequent calls by using the SetCurrent() method.
This package provides fixtures used by go-git.
This package provides fixtures used by go-git.
This package provides fixtures used by go-git.
This package provides a small parser for git todo files.
Multihash implementation in Go.
Metrics interface for IPFS (Kubo).
Only for Windows, but some Go library need this