Docker Distribution is a Docker toolset to pack, ship, store, and deliver content. It contains Docker Registry 2.0 and libraries to interact with distribution components.
This package provides go-restful
, which helps developers to use http
methods explicitly and in a way that's consistent with the HTTP protocol definition.
This package provides the mocking framework for the Golang. It integrates well with Golang's built-in testing
package, but can be used in other contexts too.
Package segment is a library for performing Unicode Text Segmentation as described in Unicode Standard Annex #29 http://www.unicode.org/reports/tr29/
This is a fork of Go 1.4's text/template package with one addition: a backslash immediately after a closing delimiter will delete all subsequent newlines until a non-newline.
This package provides a functionality to work with recurrence rules for calendar dates. It offers a complete implementation of the RFC 2445 specification.
go-ipld-format
is a set of interfaces that a type needs to implement in order to be a part of the IPLD merkle-forest.
This package implements a Perl5 like temporary
variable, for applications requiring reloading of configuration from environment variables or during the tests temporarily change the value of an environment variable in Golang.
The jwz package provides an implementation of the email threading algorithm originally designed for use in Netscape Mail 2.0 and 3.0 for Golang.
Package mmap allows mapping files into memory. It tries to provide a simple, reasonably portable interface, but doesn't go out of its way to abstract away every little platform detail. This specifically means:
zerossl
implements the ZeroSSL REST API.
The REST API is distinct from the ACME endpoint, which is a standardized way of obtaining certificates.
This repo is the home for all of the public go code produced by SDF. In addition to various tools and services, this repository is the SDK from which you may develop your own applications that integrate with the stellar network.
Package testza is a full-featured testing framework for Go. It integrates with the default test runner, so you can use it with the standard go test
tool. Testza contains easy to use methods, like assertions, output capturing, mocking, and much more.
The netlink package provides a simple netlink library for Go. Netlink is the interface a user-space program in Linux uses to communicate with the kernel. It can be used to add and remove interfaces, set IP addresses and routes, and configure IPsec.
This is a tiny Go package which wraps HTTP handlers to transparently gzip the response body, for clients which support it. Although it's usually simpler to leave that to a reverse proxy (like nginx or Varnish), this package is useful when that's undesirable.
Package httpcache
provides a http.RoundTripper
implementation that works as a mostly RFC 7234 compliant cache for HTTP responses. It is only suitable for use as a "private" cache (i.e. for a web-browser or an API-client and not for a shared proxy).
Package gocui allows creating console user interfaces.
Highlighted features:
Minimalist API.
Views (the windows in the GUI) implement the interface io.ReadWriter.
Support for overlapping views.
The GUI can be modified at runtime (concurrent-safe).
Global and view-level keybindings.
Mouse support.
Colored text.
Customizable edition mode.
Easy to build reusable widgets, complex layouts.
Package gocui allows creating console user interfaces.
Highlighted features:
Minimalist API.
Views (the windows in the GUI) implement the interface io.ReadWriter.
Support for overlapping views.
The GUI can be modified at runtime (concurrent-safe).
Global and view-level keybindings.
Mouse support.
Colored text.
Customizable edition mode.
Easy to build reusable widgets, complex layouts.
JSON Patch implementation for Go as specified in RFC 6902 from the IETF.
JSON Patch allows you to generate JSON that describes changes you want to make to a document, so you don't have to send the whole doc. JSON Patch format is supported by HTTP PATCH method, allowing for standards based partial updates via REST APIs.
go-reuseport
enables listening and dialing from the same TCP or UDP port. This means that SO_REUSEADDR
and SO_REUSEPORT
socket options may be set. This is particularly important when attempting to do TCP NAT hole-punching, which requires a process to both Listen
and Dial
on the same TCP port. go-reuseport
provides some utilities around enabling this behaviour on various operating systems.
Package proxyproto implements Proxy Protocol (v1 and v2) parser and writer, as per specification: @urlhttps://www.haproxy.org/download/2.3/doc/proxy-protocol.txt. It is to be used in one of or both proxy clients and proxy servers that need to support said protocol. Both protocol versions, 1 (text-based) and 2 (binary-based) are supported. TLV parsers extensions comming with this library support AWS, Azure and GCP.
Fast IP to CIDR block(s) lookup using trie in Golang, inspired by IPv4 route lookup Linux. Possible use cases include detecting if a IP address is from published cloud provider CIDR blocks (e.g. 52.95.110.1 is contained in published AWS Route53 CIDR 52.95.110.0/24), IP routing rules, etc.
Package netlink provides a simple library for netlink. Netlink is the interface a user-space program in linux uses to communicate with the kernel. It can be used to add and remove interfaces, set up ip addresses and routes, and confiugre ipsec. Netlink communication requires elevated privileges, so in most cases this code needs to be run as root. The low level primitives for netlink are contained in the nl subpackage. This package attempts to provide a high-level interface that is loosly modeled on the iproute2 cli.
Package netlink provides a simple library for netlink. Netlink is the interface a user-space program in linux uses to communicate with the kernel. It can be used to add and remove interfaces, set up ip addresses and routes, and confiugre ipsec. Netlink communication requires elevated privileges, so in most cases this code needs to be run as root. The low level primitives for netlink are contained in the nl subpackage. This package attempts to provide a high-level interface that is loosely modeled on the iproute2 cli.