This library defines functions to perform string interning in Go, storing only one copy of each unique string in memory. All functions may be called concurrently with themselves and each other.
This package provides a cron expression parser in the Go language. Given a cron expression and a time stamp, you can get the next time stamp which satisfies the cron expression.
This package provides a networking stack and library modularized out of The IPFS Project as specified in libp2p.
This package implements consistent hashing that can be used when the number of server nodes increase or decrease (like in memcached). The hashing ring is built using the same algorithm as libketama.
This package includes a full parser and expander for terminfo capability strings to avoid hard-coding escape strings for formatting. It also favors portability, and includes support for all POSIX systems.
This package implements a "diff" algorithm that compares two JSON objects and generates deltas that describe the differences between them. The deltas can be applied to a JSON object to "patch" them.
This package provides an alternative JSON parser for Go. It does not require to know the structure of the payload (eg. create structs), and allows accessing fields by providing the path to them.
This package implements a composable event distribution library, originally created to implement the notifications in Docker Registry 2.
This package implements FollowSymlinkInScope which is an extension of path/filepath.EvalSymlinks, as well as a Windows long-path aware version of path/filepath.EvalSymlinks from the Go standard library.
This package contains the main implementation of the HCL. HCL is designed to be a language for expressing configuration which is easy for both humans and machines to read.
This package provide many tools for testifying that your code will behave as you intend.
Features include:
Easy assertions
Mocking
HTTP response trapping
Testing suite interfaces and functions.
This package provide many tools for testifying that your code will behave as you intend.
Features include:
Easy assertions
Mocking
HTTP response trapping
Testing suite interfaces and functions.
This package provides a library for building powerful interactive prompts inspired by python-prompt-toolkit, making it easier to build cross-platform command line tools using Go.
This is a spelling corrector implementing the Damerau-Levenshtein distance. Takes a string value input from the user. Looks for an identical word on a list of words, if none is found, look for a similar word.
This package provides bindings for the https://github.com/cowsql/cowsql C library and a pure Golang client for the https://github.com/cowsql/cowsql/blob/main/doc/protocol.md.
go-github-com-olebedev-emitter implements a channel-based pubsub pattern. The design goals are to use Golang concurrency model instead of flat callbacks and to design a very simple API that is easy to consume.
Package ttrpc defines and implements a low level simple transfer protocol optimized for low latency and reliable connections between processes on the same host. The protocol uses simple framing for sending requests, responses, and data using multiple streams.
BadgerDB implements an embeddable, key-value (KV) database, written in pure Go. It is designed to be highly performant for both reads and writes simultaneously. It uses Multi-Version Concurrency Control, supports concurrent serializable transactions.
Package errors provides errors that have stack-traces. It provides the type *Error which implements the standard golang error interface, so you can use this library interchangeably with code that is expecting a normal error return.
This package provides a hook for Logrus to write directly to a file on the file system. The log levels are dynamic at instantiation of the hook, so it is capable of logging at some or all levels.
This package provides a library for encoding and decoding ZIP archive format's "Extra Fields". The intention is to eventually support and provide a low-level API for the majority of PKWARE's and Info-ZIP's extra fields.
CIRCL (Cloudflare Interoperable, Reusable Cryptographic Library) is a collection of cryptographic primitives written in Go. The goal of this library is to be used as a tool for experimental deployment of cryptographic algorithms targeting Post-Quantum (PQ) and Elliptic Curve Cryptography (ECC).
Package fiber is an https://github.com/expressjs/express, Express inspired web framework built on top of Fasthttp, the fastest HTTP engine for Go. Designed to ease things up for fast development with zero memory allocation and performance in mind.
The ethtool package aims to provide a library that implements easy access to the Linux SIOCETHTOOL ioctl operations. It can be used to retrieve information from a network device such as statistics, driver related information or even the peer of a VETH interface.