5 releases

0.1.4 Feb 19, 2024
0.1.3 Feb 17, 2024
0.1.2 Feb 17, 2024
0.1.1 Feb 17, 2024
0.1.0 Feb 17, 2024

#1096 in Command line utilities

Download history 22/week @ 2024-09-24

152 downloads per month

MIT license

12KB
143 lines

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

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

Dependencies

~1.5MB
~21K SLoC