heman

Crates.ioheman
lib.rsheman
version0.1.4
sourcesrc
created_at2024-02-17 04:52:49.897693
updated_at2024-02-19 17:53:13.857924
descriptionHTTP error manual
homepage
repositoryhttps://github.com/fleetingbytes/heman/
max_upload_size
id1143013
size18,917
(fleetingbytes)

documentation

https://docs.rs/heman/

README

heman

Heman is the CLI for the http-status-codes2, a library containing the HTTP error code registry.

The library also contains an unofficial code registry of a handful of arbitrarily selected error codes which have been proposed or used with some degree of popularity. This unofficial registry can be optionally included in the query.

Name

The name heman comes from HTTP Error Manual.

Installation

cargo install heman

Command Line Interface (CLI)

Use heman help for instructions how to use the CLI.

Examples

Find what code 401 means:

$ heman code 401
401 Unauthorized

Find the error codes for redirects:

$ heman search redirect
307 Temporary Redirect
308 Permanent Redirect

Unofficial Code Registry

To include the unofficial error code registry in the search queries, pass the --unofficial flag:

$ heman --unofficial search pot
418 I'm a teapot

Reference, Link

To see the reference to the HTTP error, use the --reference flag. For a link to that reference, use --link:

$ heman --reference code 403
403 Forbidden, [RFC9110, Section 15.5.4]

$ heman --link search timeout
408 Request Timeout, https://www.rfc-editor.org/rfc/rfc9110.html#section-15.5.9
504 Gateway Timeout, https://www.rfc-editor.org/rfc/rfc9110.html#section-15.6.5

$ heman -rl code 300
300 Multiple Choices, [RFC9110, Section 15.4.1], https://www.rfc-editor.org/rfc/rfc9110.html#section-15.4.1

Environment Variables

Instead of the CLI flags you can set environment variables:

flag variable
reference HEMAN_OUTPUT_REFERENCE
link HEMAN_OUTPUT_LINK
unofficial HEMAN_INCLUDE_UNOFFICIAL_REGISTRY
$ HEMAN_INCLUDE_UNOFFICIAL_REGISTRY=1
$ HEMAN_OUTPUT_REFERENCE=1
$ heman search pot
418 I'm a teapot, [RFC2324, Section 2.3.2]

Note

The heman CLI only checks if one of these environment variables is set. The value does not matter.

Acknowledgements

Commit count: 0

cargo fmt