This package provides a UEFI library written to interact with Linux efivars. The goal is to provide a Go library to enable application authors to better utilize secure boot and UEFI. This also includes unit-testing to ensure the library is compatible with existing tools, and integration tests to ensure the library is able of deal with future UEFI revisions.
go-datastructures
is a collection of useful, performant, and thread-safe Go data structures.
It includes:
Augmented Tree - Interval tree for collision in n-dimensional ranges. Implemented via a red-black augmented tree.
Bitarray - Bitarray used to detect existence without having to resort to hashing with hashmaps. Requires entities have a uint64 unique identifier. Two implementations exist, regular and sparse.
Futures - A helpful tool to send a broadcast message to listeners.
Queue - Package contains both a normal and priority queue. Both implementations never block on send and grow as much as necessary.
Fibonacci Heap - A standard Fibonacci heap providing the usual operations. Can be useful in executing Dijkstra or Prim's algorithms in the theoretically minimal time.
Range Tree - Useful to determine if n-dimensional points fall within an n-dimensional range.
Set - Set implementation which accepts items of type
interface
and includes only a few methods.Threadsafe - A package that is meant to contain some commonly used items but in a threadsafe way.
AVL Tree - This is an example of a branch copy immutable Adelson-Velsky and Landis Balanced Binary Search Trees.
X-Fast Trie - An interesting design that treats integers as words and uses a trie structure to reduce time complexities by matching prefixes.
Y-Fast Trie - An extension of the X-Fast trie in which an X-Fast trie is combined with some other ordered data structure to reduce space consumption and improve CRUD types of operations.
Fast Integer Hashmap - A datastructure used for checking existence but without knowing the bounds of your data. If you have a limited small bounds, the bitarray package might be a better choice.
Skiplist - An ordered structure that provides amortized logarithmic operations but without the complication of rotations that are required by BSTs.
Sort - The sort package implements a multithreaded bucket sort that can be up to 3x faster than the native Golang sort package.
Numerics - Early work on some nonlinear optimization problems. The initial implementation allows a simple use case with either linear or nonlinear constraints.
B+ Tree - Initial implementation of a B+ tree. Delete method still needs added as well as some performance optimization.
Immutable B Tree - A btree based on two principles, immutability and concurrency.
Ctrie - A concurrent, lock-free hash array mapped trie with efficient non-blocking snapshots.
Dtrie - A persistent hash trie that dynamically expands or shrinks to provide efficient memory allocation.
Persistent List - A persistent, immutable linked list.
Simple Graph - A mutable, non-persistent undirected graph where parallel edges and self-loops are not permitted.
Package ed25519 implements the Ed25519 signature algorithm.
Package multicodec exposes the multicodec table as Go constants.
OpenTracing-Go is a Go implementation of the OpenTracing API.
This package provides Prometheus bindings used in IPFS development.
This package adds support for Unix domain sockets in Go HTTP clients.
This package provides an Action runner for the Gitea forge.
Pfilter is a Go package for filtering packets into multiple virtual connections from a single physical connection.
Package temperrcatcher
provides a TempErrCatcher
object, which implements simple error-retrying functionality.
Jibber Jabber is a GoLang Library that can be used to detect an operating system's current language.
Web Push API Encryption with VAPID support.
package highlighting is a extension for the goldmark(http://github.com/yuin/goldmark).
This is an implementation of the IPLD @urlhttps://ipld.io/specs/codecs/dag-jose/spec/,dag-jose codec.
This package provides a ordered map library that maintains amortized O(1) for Set
, Get
, Delete
and Len
.
This package provides a mirror of the assembler from the Go compiler, with import paths re-written for the assembler to be functional as a standalone library.
Package apiclient provides methods for interacting with the Circonus API. See the full Circonus API Documentation at https://login.circonus.com/resources/api for more information.
assetfs allows packages to serve static content embedded with the go-bindata tool with the standard net/http
package.
Automatically set GOMEMLIMIT to match Linux cgroups(7) memory limit.
Golden files (.golden
) contain the raw expected output of tests,which can contain control codes and escape sequences. golden
package provides an API for comparing Golden files.
Package retryablehttp provides a familiar HTTP client interface with automatic retries and exponential backoff. It is a thin wrapper over the standard net/http
client library and exposes nearly the same public API.
This is a small golang library for decoding and encoding the snappy format, specified here: https://github.com/google/snappy/blob/master/framing_format.txt
The StatsD exporter is a drop-in replacement for StatsD. The exporter translates StatsD metrics to Prometheus metrics via configured mapping rules. This package provides a Golang module and statsd_exporter
executable command.