Skip to main content

Fatou

Build and Test Documentation Open VSX VS Code PyPI version npm version

A language server, formatter, and linter for Julia that doesn't require running Julia itself. Fatou is written in Rust and is designed to be fast, safe, and easy to integrate into editors and tooling. It is named after the French mathematician Pierre Fatou, whose Fatou set is the complement of the Julia set.

Fatou follows the rust-analyzer design (a lossless rowan CST, salsa for incremental computation, and lsp-server for the language-server transport).

Installation

Fatou is available from several sources:

  • crates.io: cargo install fatou
  • npm: npm install -g fatou-cli (bundles a prebuilt binary)
  • PyPI: uv tool install fatou/pipx install fatou
  • Prebuilt binaries: from the releases page
  • VS Code/Open VSX: the Fatou extension (also works in Positron)

Runs on Linux, macOS, and Windows (x86_64 and arm64).

Usage

fatou parse <file.jl>          # print the CST (stdin if no file)
fatou format <file.jl>         # format to stdout (stdin if omitted)
fatou format --check <dir>     # check formatting; non-zero exit if any differ
fatou lint --check <dir>       # lint
fatou lsp                      # run the language server on stdio

Configuration lives in fatou.toml ([format] line-width/indent-width, [lint] select/ignore).

Editor integration

The language server (fatou lsp) provides formatting and parse diagnostics over stdio. The Fatou extension for VS Code/Open VSX (and Positron) bundles the binary and starts the server automatically; see editors/code. For Neovim and other editors, see the editor setup guide.

CI integration

Run format and lint checks in GitHub Actions with fatou-action, which installs a prebuilt, checksum- and provenance-verified binary:

- uses: jolars/fatou-action@v1

Or as pre-commit hooks with fatou-pre-commit:

repos:
  - repo: https://github.com/jolars/fatou-pre-commit
    # fatou version
    rev: v0.7.0
    hooks:
      - id: fatou-lint
      - id: fatou-format

Development

cargo build
cargo test
cargo clippy --all-targets --all-features -- -D warnings
cargo fmt -- --check

Or via task: task test, task lint, task format. See CONTRIBUTING.md for details.

License

MIT—see LICENSE.

Download files

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

Source Distribution

fatou-0.8.0.tar.gz (533.5 kB view details)

Uploaded Source

Built Distributions

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

fatou-0.8.0-py3-none-win_arm64.whl (3.0 MB view details)

Uploaded Python 3Windows ARM64

fatou-0.8.0-py3-none-win_amd64.whl (3.2 MB view details)

Uploaded Python 3Windows x86-64

fatou-0.8.0-py3-none-musllinux_1_2_x86_64.whl (3.3 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

fatou-0.8.0-py3-none-musllinux_1_2_aarch64.whl (3.0 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

fatou-0.8.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

fatou-0.8.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.0 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

fatou-0.8.0-py3-none-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

fatou-0.8.0-py3-none-macosx_10_12_x86_64.whl (3.1 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file fatou-0.8.0.tar.gz.

File metadata

  • Download URL: fatou-0.8.0.tar.gz
  • Upload date:
  • Size: 533.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for fatou-0.8.0.tar.gz
Algorithm Hash digest
SHA256 9e3baf0993ff9b6d812afc295d345aa07cae81717ed73b5e37471e69c9a41745
MD5 4cb306afbf570de2262a419db318596b
BLAKE2b-256 f4f375d52f2083cf6d3c1c01e3d779fb155bb8e823efd8871f984181712aa556

See more details on using hashes here.

Provenance

The following attestation bundles were made for fatou-0.8.0.tar.gz:

Publisher: publish-pypi.yml on jolars/fatou

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fatou-0.8.0-py3-none-win_arm64.whl.

File metadata

  • Download URL: fatou-0.8.0-py3-none-win_arm64.whl
  • Upload date:
  • Size: 3.0 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for fatou-0.8.0-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 deb1031f22e0f3a779a820cc3c76921b5202578769c1f85165721ad804e2d559
MD5 e0429d2f4705a47b0d71fdcfe1d9462f
BLAKE2b-256 e6a40b2fca1cca02ebd49ef5c3e86fca89c02be59ee596688f45ed984bc03266

See more details on using hashes here.

Provenance

The following attestation bundles were made for fatou-0.8.0-py3-none-win_arm64.whl:

Publisher: publish-pypi.yml on jolars/fatou

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fatou-0.8.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: fatou-0.8.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for fatou-0.8.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 692c903d31695f092ed9bceab51b8c49675e991c3c2fbbcc7668ed95c4ec6222
MD5 dc7295a37e66d6529406a991ad92eb31
BLAKE2b-256 261bd732f5b56f7d36a26946b78af0ceeeb3c39b79decb1f399c6f9a56d4b0cd

See more details on using hashes here.

Provenance

The following attestation bundles were made for fatou-0.8.0-py3-none-win_amd64.whl:

Publisher: publish-pypi.yml on jolars/fatou

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fatou-0.8.0-py3-none-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: fatou-0.8.0-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 3.3 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for fatou-0.8.0-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ddf5e8621b1cedd35992488e7e84a03268625c58ce93cd23796c64a560704952
MD5 4d25a533dd02bd4f3344d45f8a94b949
BLAKE2b-256 71cc8348abd05af652002ab13325636cec7112a81db8fa25a3363d1edff62ff4

See more details on using hashes here.

Provenance

The following attestation bundles were made for fatou-0.8.0-py3-none-musllinux_1_2_x86_64.whl:

Publisher: publish-pypi.yml on jolars/fatou

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fatou-0.8.0-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for fatou-0.8.0-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8565b362467ca2fb37637881864e8f1cf3ba87c1ece9acdc6dfa0e932bcaa18a
MD5 c7a0144ec07e2c5b5b014ff8685f4e86
BLAKE2b-256 02cea5e1667eef0c0665a9a6716958fc61e8060e6ccd763be252f3f47a2827f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for fatou-0.8.0-py3-none-musllinux_1_2_aarch64.whl:

Publisher: publish-pypi.yml on jolars/fatou

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fatou-0.8.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for fatou-0.8.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b96a7bffe3dda37ee12cc923776d6dcfc094d75012b5b129d9effd8ee94ffa9c
MD5 d8d14f7e3856e5ad7fd50f710f946451
BLAKE2b-256 64a714b9f6a8ec0bc6ef87827f7487d83c84d460c03000b40df02c63786559eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for fatou-0.8.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish-pypi.yml on jolars/fatou

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fatou-0.8.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for fatou-0.8.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3060c61e80b5cb243e4a32073c7e1fe5593df574446055b806c1ad318c246be5
MD5 b4b6315c8cf87134e589d70fd2904ca1
BLAKE2b-256 8b313035dea71cce5e125f0771bef9525365b9da4246ba2e747d0ac6f3230bc8

See more details on using hashes here.

Provenance

The following attestation bundles were made for fatou-0.8.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-pypi.yml on jolars/fatou

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fatou-0.8.0-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: fatou-0.8.0-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 3.0 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for fatou-0.8.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4453af6958f772289357337126c97aeabc751535052aeaab1e0cea773c6f9827
MD5 709519c4ca12a2647dbe67d14cf11585
BLAKE2b-256 e14f659e97bf9fa78a7338c0538f2f5a9886258568ae31dfc55bd987310613cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for fatou-0.8.0-py3-none-macosx_11_0_arm64.whl:

Publisher: publish-pypi.yml on jolars/fatou

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fatou-0.8.0-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for fatou-0.8.0-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 db7bba93eb09b3eae63ea9441da591f2b9f9fc76b2ed6b0e604e82c068abc47d
MD5 74ce6e6c3749585a8561ccc44a4932b1
BLAKE2b-256 1ac5a501c8a137ddfee7991d258663b2af09d959e27b4fd4ab93bff391551001

See more details on using hashes here.

Provenance

The following attestation bundles were made for fatou-0.8.0-py3-none-macosx_10_12_x86_64.whl:

Publisher: publish-pypi.yml on jolars/fatou

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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