Skip to main content

A fast, async link checker

Project description

lychee

Homepage GitHub Marketplace Rust docs.rs Check Links Docker Pulls

⚡ A fast, async, stream-based link checker written in Rust ⚡
Finds broken hyperlinks and mail addresses in websites and Markdown, HTML, and other file formats!
Available as command-line utility, library and GitHub Action.

Lychee demo

Table of Contents

Development

After installing Rust use Cargo for building and testing. For Nix we provide a flake so you can use nix develop and nix build.

Installation

View installation instructions

Arch Linux

pacman -S lychee

OpenSUSE Tumbleweed

zypper in lychee

Ubuntu

snap install lychee

Alpine Linux

 # available for Alpine Edge in testing repositories
apk add lychee

macOS

Via Homebrew:

brew install lychee

Via MacPorts:

sudo port install lychee

Docker

docker pull lycheeverse/lychee

Nix

nix-shell -p lychee

Or let Nix even check a packaged site with testers.lycheeLinkCheck { site = …; }

FreeBSD

pkg install lychee

Termux

pkg install lychee

Conda

conda install lychee -c conda-forge

Windows

Via scoop:

scoop install lychee

Via WinGet:

winget install --id lycheeverse.lychee

Via Chocolatey:

choco install lychee

Pre-built binaries

We provide binaries for Linux, macOS, and Windows for every release.
You can download them from the releases page.

Cargo

Build dependencies

On APT/dpkg-based Linux distros (e.g. Debian, Ubuntu, Linux Mint and Kali Linux) the following commands will install all required build dependencies, including the Rust toolchain and cargo:

curl -sSf 'https://sh.rustup.rs' | sh
apt install gcc pkg-config libc6-dev libssl-dev

Compile and install lychee

cargo install lychee

Feature flags

Lychee supports the following feature flags:

  • email-check enables checking email addresses using the mailify-lib crate.
  • check_example_domains allows checking example domains such as example.com. This feature is useful for testing.

By default, email-check is enabled. Note that in the past lychee could be configured to use either OpenSSL or Rustls. It was decided to fully switch to Rustls and drop OpenSSL support. Please tell us if this negatively affects you in any way.

Features

This comparison is made on a best-effort basis. Please create a PR to fix outdated information.

lychee awesome_bot muffet broken-link-checker linkinator linkchecker markdown-link-check fink
Language Rust Ruby Go JS TypeScript Python JS PHP
Async/Parallel yes yes yes yes yes yes yes yes
JSON output yes no yes yes yes maybe1 yes yes
Static binary yes no yes no no no no no
Markdown files yes yes no no no yes yes no
HTML files yes no no yes yes no yes no
Text files yes no no no no no no no
Website support yes no yes yes yes yes no yes
Chunked encodings yes maybe maybe maybe maybe no yes yes
GZIP compression yes maybe maybe yes maybe yes maybe no
Basic Auth yes no no yes no yes no no
Custom user agent yes no no yes no yes no no
Relative URLs yes yes no yes yes yes yes yes
Anchors/Fragments yes no no no no yes yes no
Include patterns yes yes no yes no no no no
Exclude patterns yes no yes yes yes yes yes yes
Handle redirects yes yes yes yes yes yes yes yes
Ignore insecure SSL yes yes yes no no yes no yes
File globbing yes yes no no yes no yes no
Limit scheme yes no no yes no yes no no
Custom headers yes no yes no no no yes yes
Summary yes yes yes maybe yes yes no yes
HEAD requests yes yes no yes yes yes no no
Colored output yes maybe yes maybe yes yes no yes
Filter status code yes yes no no no no yes no
Custom timeout yes yes yes no yes yes no yes
E-mail links yes no no no no yes no no
Progress bar yes yes no no no yes yes yes
Retry and backoff yes no no no yes no yes no
Per-host throttling yes no yes yes no yes no no
Respect rate limits yes no no no no no no no
Skip private domains yes no no no no no no no
Use as library yes yes no yes yes no yes no
Quiet mode yes no no no yes yes yes yes
Config file yes no no no yes yes yes no
Cookies yes no yes no no yes no yes
Recursion no no yes yes yes yes yes no
Amazing lychee logo yes no no no no no no no

1 Other machine-readable formats like CSV are supported.

Commandline usage

# recursively check all links in supported files inside the current directory
lychee .

# check links in specific local file(s):
lychee README.md test.html info.txt

# check links on a website:
lychee https://endler.dev

For more examples check out our usage guide.

Docker Usage

Here's how to mount a local directory into the container and check some input with lychee.

  • The --init parameter is passed so that lychee can be stopped from the terminal.
  • We also pass -it to start an interactive terminal, which is required to show the progress bar.
  • The --rm removes not used anymore container from the host after the run (self-cleanup).
  • The -w /input points to /input as the default workspace
  • The -v $(pwd):/input does local volume mounting to the container for lychee access.

By default a Debian-based Docker image is used. If you want to run an Alpine-based image, use the latest-alpine tag. For example, lycheeverse/lychee:latest-alpine

Linux/macOS shell command

docker run --init -it --rm -w /input -v $(pwd):/input lycheeverse/lychee README.md

Windows PowerShell command

docker run --init -it --rm -w /input -v ${PWD}:/input lycheeverse/lychee README.md

GitHub Token

To avoid getting rate-limited while checking GitHub links, you can optionally set an environment variable with your GitHub token like so GITHUB_TOKEN=xxxx, or use the --github-token CLI option. It can also be set in the config file. Here is an example config file.

The token can be generated on your GitHub account settings page. A personal access token with no extra permissions is enough to be able to check public repo links.

For more scalable organization-wide scenarios you can consider a GitHub App. It has a higher rate limit than personal access tokens but requires additional configuration steps on your GitHub workflow. Please follow the GitHub App Setup example.

Commandline Parameters

Use lychee --help or man lychee to see all available command line parameters.

View full help message
lychee is a fast, asynchronous link checker which detects broken URLs and mail addresses in local files and websites. It supports Markdown and HTML and works with other file formats.

lychee is powered by lychee-lib, the Rust library for link checking.

Usage: lychee [OPTIONS] [inputs]...

Arguments:
  [inputs]...
          Inputs for link checking (where to get links to check from).
          These can be: files (e.g. `README.md`), file globs (e.g. `'~/git/*/README.md'`),
          remote URLs (e.g. `https://example.com/README.md`), or standard input (`-`).
          Alternatively, use `--files-from` to read inputs from a file.

          NOTE: Use `--` to separate inputs from options that allow multiple arguments.

Options:
  -a, --accept <ACCEPT>
          A List of accepted status codes for valid links

          The following accept range syntax is supported: [start]..[[=]end]|code.
          Some valid examples are:

          - 200 (accepts the 200 status code only)
          - ..204 (accepts any status code < 204)
          - ..=204 (accepts any status code <= 204)
          - 200..=204 (accepts any status code from 200 to 204 inclusive)
          - 200..205 (accepts any status code from 200 to 205 excluding 205, same as 200..=204)

          Use "lychee --accept '200..=204, 429, 500' <inputs>..." to provide a comma-
          separated list of accepted status codes. This example will accept 200, 201,
          202, 203, 204, 429, and 500 as valid status codes.

          [default: 100..=103,200..=299]

      --accept-timeouts[=<false|true>]
          Accept timed out requests and return exit code 0 when encountering timeouts but not any other errors

      --archive <ARCHIVE>
          Web archive to use to provide suggestions for `--suggest`.

          [default: wayback]

          [possible values: wayback]

  -b, --base-url <BASE_URL>
          Base URL to use when resolving relative URLs in local files. If specified,
          relative links in local files are interpreted as being relative to the given
          base URL.

          For example, given a base URL of `https://example.com/dir/page`, the link `a`
          would resolve to `https://example.com/dir/a` and the link `/b` would resolve
          to `https://example.com/b`. This behavior is not affected by the filesystem
          path of the file containing these links.

          Note that relative URLs without a leading slash become siblings of the base
          URL. If, instead, the base URL ended in a slash, the link would become a child
          of the base URL. For example, a base URL of `https://example.com/dir/page/` and
          a link of `a` would resolve to `https://example.com/dir/page/a`.

          Basically, the base URL option resolves links as if the local files were hosted
          at the given base URL address.

          The provided base URL value must either be a URL (with scheme) or an absolute path.
          Note that certain URL schemes cannot be used as a base, e.g., `data` and `mailto`.

      --base <BASE>
          Deprecated; use `--base-url` instead

      --basic-auth <BASIC_AUTH>
          Basic authentication support. E.g. `http://example.com username:password`

  -c, --config <FILE_PATH>
          Configuration file to use. Can be specified multiple times.

          If given multiple times, the configs are merged and later
          occurrences take precedence over previous occurrences.

          [default: lychee.toml]

      --cache[=<false|true>]
          Use request cache stored on disk at `.lycheecache`

      --cache-exclude-status <CACHE_EXCLUDE_STATUS>
          A list of status codes that will be ignored from the cache

          The following exclude range syntax is supported: [start]..[[=]end]|code. Some valid
          examples are:

          - 429 (excludes the 429 status code only)
          - 500.. (excludes any status code >= 500)
          - ..100 (excludes any status code < 100)
          - 500..=599 (excludes any status code from 500 to 599 inclusive)
          - 500..600 (excludes any status code from 500 to 600 excluding 600, same as 500..=599)

          Use "lychee --cache-exclude-status '429, 500..502' <inputs>..." to provide a
          comma-separated list of excluded status codes. This example will not cache results
          with a status code of 429, 500 and 501.

      --cookie-jar <COOKIE_JAR>
          Read and write cookies using the given file. Cookies will be stored in the
          cookie jar and sent with requests. New cookies will be stored in the cookie jar
          and existing cookies will be updated.

      --default-extension <EXTENSION>
          This is the default file extension that is applied to files without an extension.

          This is useful for files without extensions or with unknown extensions.
          The extension will be used to determine the file type for processing.

          Examples:
            --default-extension md
            --default-extension html

      --dump[=<false|true>]
          Don't perform any link checking. Instead, dump all the links extracted from inputs that would be checked

      --dump-inputs[=<false|true>]
          Don't perform any link extraction and checking. Instead, dump all input sources from which links would be collected

  -E, --exclude-all-private[=<false|true>]
          Exclude all private IPs from checking.
          Equivalent to `--exclude-private --exclude-link-local --exclude-loopback`

      --exclude <EXCLUDE>
          Exclude URLs and mail addresses from checking. The values are treated as regular expressions

      --exclude-file <EXCLUDE_FILE>
          Deprecated; use `--exclude-path` instead

      --exclude-link-local[=<false|true>]
          Exclude link-local IP address range from checking

      --exclude-loopback[=<false|true>]
          Exclude loopback IP address range and localhost from checking

      --exclude-path <EXCLUDE_PATH>
          Exclude paths from getting checked. The values are treated as regular expressions

      --exclude-private[=<false|true>]
          Exclude private IP address ranges from checking

      --extensions <EXTENSIONS>
          A list of file extensions. Files not matching the specified extensions are skipped.

          Multiple extensions can be separated by commas. Note that if you want to check filetypes,
          which have multiple extensions, e.g. HTML files with both .html and .htm extensions, you need to
          specify both extensions explicitly.
          An example is: `--extensions html,htm,php,asp,aspx,jsp,cgi`.

          This is useful when the default extensions are not enough and you don't
          want to provide a long list of inputs (e.g. file1.html, file2.md, etc.)

          [default: md,mkd,mdx,mdown,mdwn,mkdn,mkdown,markdown,html,htm,css,txt,xml]

  -f, --format <FORMAT>
          Output format of final status report

          [default: compact]

          [possible values: compact, detailed, json, junit, markdown]

      --fallback-extensions <FALLBACK_EXTENSIONS>
          When checking locally, attempts to locate missing files by trying the given
          fallback extensions. Multiple extensions can be separated by commas. Extensions
          will be checked in order of appearance.

          Example: --fallback-extensions html,htm,php,asp,aspx,jsp,cgi

          Note: This option takes effect on `file://` URIs which do not exist and on
                `file://` URIs pointing to directories which resolve to themself (by the
                --index-files logic).

      --files-from <PATH>
          Read input filenames from the given file or stdin (if path is '-').

          This is useful when you have a large number of inputs that would be
          cumbersome to specify on the command line directly.

          Examples:

              lychee --files-from list.txt
              find . -name '*.md' | lychee --files-from -
              echo 'README.md' | lychee --files-from -

          File Format:
          - Each line should contain one input (file path, URL, or glob pattern).
          - Lines starting with '#' are treated as comments and ignored.
          - Empty lines are also ignored.

      --generate <GENERATE>
          Generate special output (e.g. the man page) instead of performing link checking

          [possible values: man, complete-bash, complete-elvish, complete-fish, complete-powershell, complete-zsh]

      --github-token <GITHUB_TOKEN>
          GitHub API token to use when checking github.com links, to avoid rate limiting

          [env: GITHUB_TOKEN]

      --glob-ignore-case[=<false|true>]
          Ignore case when expanding filesystem path glob inputs

  -h, --help
          Print help (see a summary with '-h')

  -H, --header <HEADER:VALUE>
          Set custom header for requests.

          Some websites require custom headers to be passed in order to return valid responses.
          You can specify custom headers in the format 'Name: Value'. For example, 'Accept: text/html'.
          This is the same format that other tools like curl or wget use.
          Multiple headers can be specified by using the flag multiple times.
          The specified headers are used for ALL requests.
          Use the `hosts` option to configure headers on a per-host basis.

      --hidden[=<false|true>]
          Do not skip hidden directories and files

      --host-concurrency <HOST_CONCURRENCY>
          Default maximum concurrent requests per host (default: 10)

          This limits the maximum amount of requests that are sent simultaneously
          to the same host. This helps to prevent overwhelming servers and
          running into rate-limits. Use the `hosts` option to configure this
          on a per-host basis.

          Examples:
            --host-concurrency 2   # Conservative for slow APIs
            --host-concurrency 20  # Aggressive for fast APIs

      --host-request-interval <HOST_REQUEST_INTERVAL>
          Minimum interval between requests to the same host (default: 50ms)

          Sets a baseline delay between consecutive requests to prevent
          overloading servers. The adaptive algorithm may increase this based
          on server responses (rate limits, errors). Use the `hosts` option
          to configure this on a per-host basis.

          Examples:
            --host-request-interval 50ms   # Fast for robust APIs
            --host-request-interval 1s     # Conservative for rate-limited APIs

      --host-stats[=<false|true>]
          Show per-host statistics at the end of the run

  -i, --insecure[=<false|true>]
          Proceed for server connections considered insecure (invalid TLS)

      --include <INCLUDE>
          URLs to check (supports regex). Has preference over all excludes

      --include-fragments[=<none|anchor-only|text-only|full>]
          Enable the checking of fragments in links.

          Use `none` to disable fragment checks, `anchor-only` for anchor fragments
          like `#section`, `text-only` for text fragments like `#:~:text=example`,
          or `full` to check both.

          If provided without a value, defaults to `anchor-only`.

      --include-mail[=<false|true>]
          Also check email addresses

      --include-verbatim[=<false|true>]
          Find links in verbatim sections like `pre`- and `code` blocks

      --include-wikilinks[=<false|true>]
          Check WikiLinks in Markdown files, this requires specifying --base-url

      --index-files <INDEX_FILES>
          When checking locally, resolves directory links to a separate index file.
          The argument is a comma-separated list of index file names to search for. Index
          names are relative to the link's directory and attempted in the order given.

          If `--index-files` is specified, then at least one index file must exist in
          order for a directory link to be considered valid. Additionally, the special
          name `.` can be used in the list to refer to the directory itself.

          If unspecified (the default behavior), index files are disabled and directory
          links are considered valid as long as the directory exists on disk.

          Example 1: `--index-files index.html,readme.md` looks for index.html or readme.md
                     and requires that at least one exists.

          Example 2: `--index-files index.html,.` will use index.html if it exists, but
                     still accept the directory link regardless.

          Example 3: `--index-files ''` will reject all directory links because there are
                     no valid index files. This will require every link to explicitly name
                     a file.

          Note: This option only takes effect on `file://` URIs which exist and point to a directory.

  -m, --max-redirects <MAX_REDIRECTS>
          Maximum number of allowed redirects

          [default: 10]

      --max-cache-age <MAX_CACHE_AGE>
          Discard all cached requests older than this duration

          [default: 1d]

      --max-concurrency <MAX_CONCURRENCY>
          Maximum number of concurrent network requests

          [default: 128]

      --max-retries <MAX_RETRIES>
          Maximum number of retries per request

          [default: 3]

      --min-tls <MIN_TLS>
          Minimum accepted TLS Version

          [possible values: TLSv1_0, TLSv1_1, TLSv1_2, TLSv1_3]

      --mode <MODE>
          Set the output display mode. Determines how results are presented in the terminal

          [default: color]

          [possible values: plain, color, emoji, task]

  -n, --no-progress[=<false|true>]
          Do not show progress bar.
          This is recommended for non-interactive shells (e.g. for continuous integration)

      --no-ignore[=<false|true>]
          Do not skip files that would otherwise be ignored by '.gitignore', '.ignore', or the global ignore file

  -o, --output <OUTPUT>
          Output file of status report

      --offline[=<false|true>]
          Only check local files and block network requests

  -p, --preprocess <COMMAND>
          Preprocess input files with the given command.

          For each file input, this flag causes lychee to execute `COMMAND PATH` and process
          its standard output instead of the original contents of PATH. This allows you to
          convert files that would otherwise not be understood by lychee. The preprocessor
          COMMAND is only run on input files, not on standard input or URLs.

          To invoke programs with custom arguments or to use multiple preprocessors, use a
          wrapper program such as a shell script. An example script looks like this:

          ```
          #!/usr/bin/env bash
          case "$1" in
          *.pdf)
              exec pdftohtml -i -s -stdout "$1"
              ;;
          *.odt|*.docx|*.epub|*.ipynb)
              exec pandoc "$1" --to=html --wrap=none
              ;;
          *)
              # identity function, output input without changes
              exec cat
              ;;
          esac
          ```

  -q, --quiet...
          Less output per occurrence (e.g. `-q` or `-qq`)

  -r, --retry-wait-time <RETRY_WAIT_TIME>
          Minimum wait time in seconds between retries of failed requests

          [default: 1]

      --remap <REMAP>
          Remap URI matching pattern to different URI

      --require-https[=<false|true>]
          When HTTPS is available, treat HTTP links as errors

      --root-dir <ROOT_DIR>
          Root directory to use when checking absolute links in local files. This option is
          required if absolute links appear in local files, otherwise those links will be
          flagged as errors. This must be an absolute path (i.e., one beginning with `/`).

          If specified, absolute links in local files are resolved by prefixing the given
          root directory to the requested absolute link. For example, with a root-dir of
          `/root/dir`, a link to `/page.html` would be resolved to `/root/dir/page.html`.

          This option can be specified alongside `--base-url`. If both are given, an
          absolute link is resolved by constructing a URL from three parts: the domain
          name specified in `--base-url`, followed by the `--root-dir` directory path,
          followed by the absolute link's own path.

  -s, --scheme <SCHEME>
          Only test links with the given schemes (e.g. https).
          Omit to check links with any other scheme.
          At the moment, we support http, https, file, and mailto.

      --skip-missing[=<false|true>]
          Skip missing input files (default is to error if they don't exist)

      --suggest[=<false|true>]
          Suggest link replacements for broken links, using a web archive. The web archive can be specified with `--archive`

  -t, --timeout <TIMEOUT>
          Website timeout in seconds from connect to response finished

          [default: 20]

  -T, --threads <THREADS>
          Number of threads to utilize. Defaults to number of cores available to the system

  -u, --user-agent <USER_AGENT>
          User agent

          [default: lychee/x.y.z]

  -v, --verbose...
          Set verbosity level; more output per occurrence (e.g. `-v` or `-vv`)

  -V, --version
          Print version

  -X, --method <METHOD>
          Request method

          [default: get]

Exit codes

0 Success. The operation was completed successfully as instructed.

1 Missing inputs or any unexpected runtime failures or configuration errors

2 Link check failures. At least one non-excluded link failed the check.

3 Encountered errors in the config file.

Ignoring and excluding links

You can exclude links from getting checked by specifying regex patterns with --exclude (e.g. --exclude example\.(com|org)) or by putting them into a file called .lycheeignore. To exclude files and directories from being scanned use --exclude-path. For more detailed explanations, check out our comprehensive guide on excluding links.

Caching

If the --cache flag is set, lychee will cache responses in a file called .lycheecache in the current directory. If the file exists and the flag is set, then the cache will be loaded on startup. This can greatly speed up future runs. Note that by default lychee will not store any data on disk. This is explained in more detail in our documentation.

Supported file formats

lychee supports HTML and Markdown file formats. For any other file format, lychee falls back to a "plain text" mode. This means that linkify attempts to extract URLs on a best-effort basis.

For non-plaintext files (pdf, epub, docx, etc.) or for files which don't work well with the fallback extraction method (csv, ipynb, etc.) you can make use of the --preprocess option.

Take a look at lychee-all for more information.

Library usage

You can use lychee as a library for your own projects! Take a look at the library documentation. Also check out the examples directory for small practical examples. These examples can be run with cargo run --example <example>.

GitHub Action Usage

A GitHub Action that uses lychee is available as a separate repository: lycheeverse/lychee-action which includes usage instructions.

Pre-commit Usage

Lychee can also be used as a pre-commit hook.

# .pre-commit-config.yaml
repos:
  - repo: https://github.com/lycheeverse/lychee.git
    rev: v0.15.1
    hooks:
      - id: lychee
        # Optionally include additional CLI arguments
        args: ["--no-progress", "--exclude", "file://"]

Rather than running on staged-files only, Lychee can be run against an entire repository.

- id: lychee
  args: ["--no-progress", "."]
  pass_filenames: false

Contributing to lychee

We'd be thankful for any contribution.
We try to keep the issue tracker up-to-date so you can quickly find a task to work on.

Try one of these links to get started:

For more detailed instructions, head over to CONTRIBUTING.md.

Troubleshooting and Workarounds

We collect a list of common workarounds for various websites in our troubleshooting guide.

Users

Here is a list of some notable projects who are using lychee.

If you are using lychee for your project, please add it here.

Credits

The first prototype of lychee was built in episode 10 of Hello Rust. Thanks to all GitHub and Patreon sponsors for supporting the development since the beginning. Also, thanks to all the great contributors who have since made this project more mature.

License

lychee is licensed under either of

at your option.



🔼 Back to top

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lychee_bin-0.24.2.tar.gz (335.2 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

lychee_bin-0.24.2-py3-none-win_amd64.whl (7.4 MB view details)

Uploaded Python 3Windows x86-64

lychee_bin-0.24.2-py3-none-win32.whl (6.6 MB view details)

Uploaded Python 3Windows x86

lychee_bin-0.24.2-py3-none-musllinux_1_2_x86_64.whl (74.1 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

lychee_bin-0.24.2-py3-none-musllinux_1_2_i686.whl (73.2 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

lychee_bin-0.24.2-py3-none-musllinux_1_2_armv7l.whl (68.2 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

lychee_bin-0.24.2-py3-none-musllinux_1_2_aarch64.whl (72.2 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

lychee_bin-0.24.2-py3-none-manylinux_2_28_aarch64.whl (71.9 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

lychee_bin-0.24.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (78.1 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

lychee_bin-0.24.2-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl (76.9 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ s390x

lychee_bin-0.24.2-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (74.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ppc64le

lychee_bin-0.24.2-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (74.3 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

lychee_bin-0.24.2-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (67.4 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

lychee_bin-0.24.2-py3-none-macosx_11_0_arm64.whl (8.6 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

lychee_bin-0.24.2-py3-none-macosx_10_12_x86_64.whl (8.8 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file lychee_bin-0.24.2.tar.gz.

File metadata

  • Download URL: lychee_bin-0.24.2.tar.gz
  • Upload date:
  • Size: 335.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for lychee_bin-0.24.2.tar.gz
Algorithm Hash digest
SHA256 6c0a7f93f3da675f806d12d70cc794035c6d72aedb8105d5d0e20687051d2188
MD5 8fbf0982da177edbe7b95dfa6da34853
BLAKE2b-256 1c17afdbe91346330bfac5347165b4aca4c48b5e4a480d3078693655603228e4

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 6ac1307ca588c0bfd57feaaec849b3af215b28921ec068ae7cf0b257caedae46
MD5 faa98a50e124dc9f136c6c4f17964d83
BLAKE2b-256 de9bd0e3a896cfa1ae023d0a42ba61234284309d14897b050f63a94f61d0b8ed

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-win32.whl.

File metadata

  • Download URL: lychee_bin-0.24.2-py3-none-win32.whl
  • Upload date:
  • Size: 6.6 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for lychee_bin-0.24.2-py3-none-win32.whl
Algorithm Hash digest
SHA256 766a2a097f8f2eb497909fe4325a3184d88785f030dc0794fa3a3bb01808d07f
MD5 f99f68703a1bd25a9a83483ff7869b01
BLAKE2b-256 8086354279c0f3fd9f5522e0aa6528dd465b4876570aee8d14ff361694ccf587

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 16c67925e7d10d38c2ff79338b6ab406399eb557cf9248fddbdec9a0c30f5384
MD5 bbfaa913775d22f632f1c94fcf1ad7ea
BLAKE2b-256 18703a5a17ad4688409c13794efbf874caa2af63c9287868ce2439af7cad2c83

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 28d89190a91f5b172e09796128fbb6c672753c68ab3ac1684f2a414c3b5fab1d
MD5 d27648ee20297e3c93b71974fc0adcd3
BLAKE2b-256 3c29c4b023a53b4fe59ab0e1e5d8459c63c5faf8a79c4d1dc739bfc528ab7786

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 aa2fe2e9fa48eacebe011870785ff2af8707ef4de2bfcdb2cba21e6391c14b41
MD5 33655a8d932718e332214fe276426668
BLAKE2b-256 e34f8f321caef03158c137121ca458e703902bd2236db27b9a1dd2aa5753c571

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5837f0dc12314ecd5a9b9e2f036c549f05f353330d68bf5949510ccb8ed24179
MD5 0e7fc08b5eeaa602606479b3c7d39a24
BLAKE2b-256 b251329a7be61b4491c4ea374d98f9363ebd6c162084f5ebc2c9132c3bbf14fc

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2310631ed71762504c3a9e3df7bc9590af6a792dd37614b2bafe7c24abc63193
MD5 4260e16551d904e328cc72d3040b79d5
BLAKE2b-256 e7a0457ae5d9ac956efae078af6db5a44f4d3d26884e7b6bb2c2d841d35a7f3b

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5a7f41c25e25135a24c5ebfb49b8293c6513a0475d42ba860898754888c996f4
MD5 b203d889fa6fb5376a9ea8d9812ff117
BLAKE2b-256 c368d5dc9c0029c2ebf72012d19a2698534e70032d2fe9cb76db84bd35e533a3

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 078c1961d3cb660d4963ecaac8cdf1b344fe0026740770e63756ecf1d01b695d
MD5 2706f56796bc7179ead9a0682218b1d4
BLAKE2b-256 e43e870682d41261a16371e2a99d725744b8f8c61fbfc852dd8b0b6a608bf5ef

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 8f1bf83a6c9aed06b43e2f0d4ca1205be4db29772f3853397982eec815b14bea
MD5 6fa4f65aa10fc9cb4947bd7cf1165a05
BLAKE2b-256 9dc4873e20986851918a3016289a0a7f8c24f302a9b395db17effea9189579d3

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ac9be8fb5b503323615fa9e955754bab9f557adda731048eef912c729368a22a
MD5 12fb77ef7a95a8d2218c476da515c03e
BLAKE2b-256 0c931e5651b9a2a0d2121643e3f2b2f7c45674b9e9e8e3cbf0d9968ef3639d94

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 bb8e17ea7e412a076ed237020906ae00ca9f14019bdbfd9f4390363cb8a1d3f9
MD5 206974eed1c79393a626e7924e3410a4
BLAKE2b-256 93533fbf4f261ff638d4e6727c9ae5e8ad90cdcfaa918fc8cf6ad72419ffe59d

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f471d5d9b27e800720bfe66b43dbee35d55a1f259ff7041ba0254f6bfe443868
MD5 40ebc5f5462f2855a566368e3804da25
BLAKE2b-256 c6c2157198f21c8f0dcb7e1ba1b87201e5ca51548c56d5f0c2cd9473b6dbb1d1

See more details on using hashes here.

File details

Details for the file lychee_bin-0.24.2-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for lychee_bin-0.24.2-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d97b0f082fcfa01330663697c0f857af7f070a1d4a4d8d24a39804cdb281797b
MD5 d931f0c2725bb7c78d37b9692d0da2fc
BLAKE2b-256 cbf2501c01c6375d7bee83b76df3d4f6a5ded556ede778992a35ce97c6b861bc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page