# Install mypy with Homebrew, apt, Nix, pacman, zypper

Experimental optional static type checker for Python. Version 2.1.0 via Homebrew; verified 2026-05-12.

## Install

```sh
sudo av install brew:mypy
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install mypy
```

  Evidence: local Homebrew formula metadata

### Linux

- Debian apt (92%):

```sh
sudo apt install mypy
```

  Evidence: Debian stable package indexes: mypy from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#mypy
```

  Evidence: nixpkgs package indexes: mypy from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix

- pacman (92%):

```sh
sudo pacman -S mypy
```

  Evidence: Arch Linux sync databases: mypy from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install python313-mypy
```

  Evidence: openSUSE Tumbleweed package metadata: python313-mypy from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

## Package facts

- **Package key:** brew:mypy
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/mypy>
- **Version:** 2.1.0
- **Source summary:** Experimental optional static type checker for Python
- **Homepage:** <https://www.mypy-lang.org/>
- **Repository:** <https://github.com/python/mypy>
- **Upstream docs:** <https://mypy-lang.org/>
- **License:** MIT
- **Source archive:** <https://files.pythonhosted.org/packages/82/15/cca9d88503549ed6fedeaa1d448cdddd542ee8a490232d732e278036fbf2/mypy-2.1.0.tar.gz>
- **Last updated:** 2026-05-12T23:20:41Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- dmypy (cli)
- mypy (cli)
- mypyc (cli)
- stubgen (cli)
- stubtest (cli)
- dmypy (alias)
- mypy (alias)
- mypyc (alias)
- stubgen (alias)
- stubtest (alias)

## Dependencies

- python@3.14

## Build dependencies

- rust

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 2.1.0
- Package-manager updated: 2026-05-12
- Local data: ok
- Upstream repository: https://www.mypy-lang.org/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

mypy is an optional static type checker for Python. Jukka Lehtosalo began work on it in 2012 while at the University of Cambridge Computer Laboratory as a PhD student, borrowing ideas from his earlier Alore language and from gradual typing research. The project grew from an experiment in adding an optional static type system to Python-like code into the best-known standalone checker for ordinary Python programs.

### Project history

The technical turning point was the standardization of Python type hints. PEP 484 defines the syntax and goals for type annotations in Python, explicitly naming offline type checkers such as mypy as a primary use case while keeping Python dynamically typed and type hints optional. The mypy blog described the first PEP 484 draft as heavily inspired by mypy, and later mypy versions implemented the PEP 484 annotation model used in Python codebases, editors, and CI systems.

### How it is used

Dropbox became a major adoption story and development home for mypy. A Dropbox engineering writeup describes its gradual migration to static checking across millions of lines of Python, calling mypy likely the most popular standalone Python type checker and noting that the core team was employed by Dropbox. In day-to-day use, developers add annotations in source files or stubs, run the `mypy` command to find type errors without executing the program, use `dmypy` for daemonized checks, and use helpers such as `stubgen`, `stubtest`, and `mypyc` for typing ecosystem work. Package managers ship it as a developer tool for Python projects that want static analysis without changing Python's runtime model.

### Sources

- <https://dropbox.tech/application/our-journey-to-type-checking-4-million-lines-of-python>
- <https://formulae.brew.sh/formula/mypy>
- <https://github.com/python/mypy>
- <https://mypy-lang.blogspot.com/2015/01/mypy-and-pep-484-type-hinting-draft.html>
- <https://mypy-lang.org/>
- <https://mypy-lang.org/about.html>
- <https://mypy.readthedocs.io/>
- <https://peps.python.org/pep-0484/>


## Security Notes

No matching local secret-handling manifest was found for mypy. Nucleus package metadata is still published here so future coverage has a stable package URL.



## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: mypy.ini, .mypy.ini, pyproject.toml, setup.cfg, $XDG_CONFIG_HOME/mypy/config, ~/.config/mypy/config, ~/.mypy.ini
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** mypy
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - mypy - 1.15.0-5: normalized package name match | Debian stable package indexes: mypy from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | optional static typing for Python | https://www.mypy-lang.org/
- Debian apt - mypy-doc - 1.15.0-5: normalized package name match | Debian stable package indexes: mypy-doc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | documentation for mypy | https://www.mypy-lang.org/
- Debian apt - python3-mypy - 1.15.0-5: normalized package name match | Debian stable package indexes: python3-mypy from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | public modules for mypy (Python 3) | https://www.mypy-lang.org/
- Nix - mypy: normalized package name match | nixpkgs package indexes: mypy from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- Ubuntu apt - mypy - 1.9.0-4ubuntu1: normalized package name match | Ubuntu 24.04 LTS package indexes: mypy from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | optional static typing for Python | https://www.mypy-lang.org/
- Ubuntu apt - mypy-doc - 1.9.0-4ubuntu1: normalized package name match | Ubuntu 24.04 LTS package indexes: mypy-doc from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | documentation for mypy | https://www.mypy-lang.org/
- Ubuntu apt - python3-mypy - 1.9.0-4ubuntu1: normalized package name match | Ubuntu 24.04 LTS package indexes: python3-mypy from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | public modules for mypy (Python 3) | https://www.mypy-lang.org/
- pacman - mypy - 1.20.2-1: normalized package name match | Arch Linux sync databases: mypy from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Optional static typing for Python (PEP484) | http://www.mypy-lang.org/
- zypper - python313-mypy - 2.1.0-1.1: normalized package name match | openSUSE Tumbleweed package metadata: python313-mypy from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Optional static typing for Python | https://www.mypy-lang.org/


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [python@3.14](https://www.automicvault.com/pkg/brew/python-3-14/) - Runtime dependency declared by Homebrew.
- [rust](https://www.automicvault.com/pkg/brew/rust/) - Build dependency declared by Homebrew.
- [pyrefly](https://www.automicvault.com/pkg/brew/pyrefly/) - Shares av.db curated category or tags: cli, developer-tools, python, static-analysis, type-checker.
- [pyright](https://www.automicvault.com/pkg/brew/pyright/) - Shares av.db curated category or tags: cli, developer-tools, python, static-analysis, type-checker.
- [datadog-static-analyzer](https://www.automicvault.com/pkg/brew/datadog-static-analyzer/) - Shares av.db curated category or tags: cli, developer-tool, developer-tools, static-analysis.
- [pylint](https://www.automicvault.com/pkg/brew/pylint/) - Shares av.db curated category or tags: cli, developer-tools, python, static-analysis.
- [pylyzer](https://www.automicvault.com/pkg/brew/pylyzer/) - Shares av.db curated category or tags: cli, developer-tools, python, static-analysis.
- [pyscn](https://www.automicvault.com/pkg/brew/pyscn/) - Shares av.db curated category or tags: cli, developer-tools, python, static-analysis.
- [ty](https://www.automicvault.com/pkg/brew/ty/) - Shares av.db curated category or tags: cli, developer-tools, python, static-analysis, type-checker.
- [vermin](https://www.automicvault.com/pkg/brew/vermin/) - Shares av.db curated category or tags: cli, developer-tools, python, static-analysis.

## Combined YAML source

View the package source record on GitHub. [combined/mypy.yml](https://github.com/automic-vault/db/blob/main/combined/mypy.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
