The uniseg package provides a tool to iterate over grapheme clusters. This may be used to determine the number of user-perceived characters, to split strings in their intended places, or to extract individual characters which form a unit.
Package gorilla/pat is a request router and dispatcher with a pat-like interface. It is an alternative to gorilla/mux that showcases how it can be used as a base for different API flavors. Package pat is documented at:
This package provides a library for embedding human-meaningful graphics in QR codes. However, instead of scribbling on redundant pieces and relying on error correction to preserve the meaning, qart
engineers the encoded values to create the picture in a code with no inherent errors.
Bolt is a pure Go key/value store inspired by Howard Chu's LMDB project. The goal of the project is to provide a simple, fast, and reliable database for projects that don't require a full database server such as Postgres or MySQL.
lz4
provides a streaming interface to LZ4 data streams as well as low level compress and uncompress functions for LZ4 data blocks. The implementation is based on the reference C one.
Pflag is library to replace Go's flag
package. It implements POSIX/GNU-style command-line options with double hyphens. It is is compatible with the GNU extensions to the POSIX recommendations for command-line options.
Tengo is a small, dynamic, fast, secure script language for Go. Features:
simple and highly readable syntax
dynamic typing with type coercion
higher-order functions and closures
immutable values
securely embeddable and extensible
compiler/runtime written in native Go (no external deps or cgo)
executable as a standalone language/REPL
use cases: rules engine, state machine, data pipeline, transpiler
goupnp
is a Universal Plug and Play client library for Go.
Core components:
goupnp
: core library - contains datastructures and utilities typically used by the implemented DCPshttpu
: HTTPU implementation, underlies SSDPssdp
: SSDP client implementation (simple service discovery protocol) - used to discover UPnP services on a networksoap
: SOAP client implementation (simple object access protocol) - used to communicate with discovered services
golib
is a collection of unrelated libraries. This package provides a following list of Golang models:
bufpipe
Implements a buffered pipe.
cron
Parses and runs cron schedules.
hashmerge
Merges hash checksums.
jsoncs
Implements JSON Canonicalization Scheme (JCS) as specified in RFC 8785.
jsonfmt
Implements a JSON formatter.
memfile
Implements an in-memory emulation of
os.File
.unitconv
Implements string conversion functionality for unit prefixes.
This package provides a wrapper around go-yaml designed to enable a better way of handling YAML when marshaling to and from structs.
It first converts YAML to JSON using go-yaml and then uses json.Marshal
and json.Unmarshal
to convert to or from the struct. This means that it effectively reuses the JSON struct tags as well as the custom JSON methods MarshalJSON
and UnmarshalJSON
unlike go-yaml.
ACMEz
is a lightweight, fully-compliant RFC 8555 (ACME) implementation, that provides an API for getting certificates. ACMEz
is suitable for large-scale enterprise deployments. It also supports common IETF-standardized ACME extensions.
This module has two primary packages:
acmez
is a high-level wrapper for getting certificates. It implements the ACME order flow described in RFC 8555 including challenge solving using pluggable solvers.acme
is a low-level RFC 8555 implementation that provides the fundamental ACME operations, mainly useful if you have advanced or niche requirements.
Main features:
Go API that thoroughly documented with spec citations.
Structured error values (problems as defined in RFC 7807.)
Smart retries (resilient against network and server hiccups.)
Challenge plasticity (randomized challenges, and will retry others if one fails.)
Context cancellation (suitable for high-frequency config changes or reloads.)
Highly flexible and customizable.
External Account Binding (EAB) support.
Tested with numerous ACME CAs (more than just Let's Encrypt.)
Implements niche aspects of RFC 8555 (such as alt cert chains and account key rollover.)
Efficient solving of large SAN lists (e.g. for slow DNS record propagation.)
Utility functions for solving challenges: device attestation challenges (draft-acme-device-attest-02), RFC 8737 (tls-alpn-01 challenge), RFC 8823 (email-reply-00 challenge; S/MIME.)
ACME Renewal Information (ARI) support (draft-ietf-acme-ari-03.)
go vet
tool for Gitea.
Package gitea implements a client for the Gitea API. The version corresponds to the highest supported version of the gitea API, but backwards-compatibility is mostly given.
Documentation at https://melpa.org/#/bug-reference-github
Documentation at https://melpa.org/#/speedbar-git-respect
Package rebecca is a readme generator.
NLP-related string utility functions for Golang.
This package implements recursive copy functionality for directory.
Documentation at https://melpa.org/#/git-auto-commit-mode