# Packages
Package atexit provides handling for functions you want called when the program exits unexpectedly due to a signal.
Package bucket is contains utilities for managing bucket-based backends.
Package buildinfo provides build information.
Package cache implements a simple cache where the entries are expired after a given time (5 minutes of disuse by default).
Package daemonize provides daemonization interface for Unix platforms.
Package debug contains functions for dealing with runtime/debug functions across go versions.
Package dircache provides a simple cache for caching directory ID to path lookups and the inverse.
Package encoder provides functionality to translate file names for usage on restrictive storage systems.
Package env contains functions for dealing with environment variables.
Package errors provides error handling utilities.
Package exitcode exports rclone's exit status numbers.
Package file provides a version of os.OpenFile, the handles of which can be renamed and deleted under Windows.
Package http provides a registration interface for http services.
Package israce reports if the Go race detector is enabled.
Package jwtutil provides JWT utilities.
Package kv provides key/value database.
Package mmap provides memory mapped related utilities.
Package oauthutil provides OAuth utilities.
Package pacer makes pacing and retrying API calls easy.
Package plugin implements loading out-of-tree storage backends using https://golang.org/pkg/plugin/ on Linux and macOS.
Package pool implements a memory pool similar in concept to sync.Pool but with more determinism.
Package random holds a few functions for working with random numbers.
Package ranges provides the Ranges type for keeping track of byte ranges which may or may not be present in an object.
Package readers provides io.Reader related utilities.
Package rest implements a simple REST wrapper
All methods are safe for concurrent calling.
Package structs is for manipulating structures with reflection.
Package terminal provides VT100 terminal codes and a windows implementation of that.
Package version provides machinery for versioning file names with a timestamp-based version string.