Skip to main content

ruff-odoo

PyPI CI Docs

ruff-odoo is Vauxoo's fork of Ruff, shipping every upstream linter and formatter rule plus the OD and OAPP rule groups, ported from pylint-odoo and odoo-pre-commit-hooks.

This file covers what differs from upstream Ruff for anyone installing or building the fork: why it exists at all, the command name, the packaging, and the version scheme.

Why this exists

Vauxoo's Odoo checks used to live in pylint-odoo (a Pylint plugin) and odoo-pre-commit-hooks, running next to the autofixing tools already present in the pre-commit stack. Three problems pushed us to port those checks into Ruff instead, and none of them was something a patch to those projects could have fixed.

Autofixes corrupted each other. Every tool rewrote the file on its own, with no idea of what the others had done to it. A fix applied by one hook routinely invalidated a fix another hook had just applied, or uncovered a violation that only became reachable after the first rewrite. So the run ended dirty, the command had to be run a second time, and that run pulled in yet another fix. Getting a repository to a fixed point — a run that proposes no changes — commonly took three or four passes of the same command. That is confusing on a developer machine and simply broken in CI, where there is one run and a dirty tree is a failure.

Ruff does that iteration internally: it lints, applies every non-overlapping fix, re-parses the result, and repeats until the file stops changing, discarding any fix that would have introduced a syntax error. One invocation, one stable file.

Pylint has no autofixes. Pylint only reports. Any check we also wanted fixed automatically had to be written twice — once as a Pylint checker that reports it and once as a separate fixer that rewrites it — with two sets of tests, two notions of what the pattern is, and no guarantee the two stayed in agreement as they were maintained. In Ruff a fix is attached to the diagnostic that produced it, so the rule that finds a problem is the same code that repairs it, and its fixture covers both.

Speed, which mattered more than anything else. A linter is only run as often as it is cheap to run. Pylint infers types through astroid, and a stack of separate hooks pays for a process start and a fresh parse of every file per tool. Ruff parses each file once, in Rust, in parallel across cores, and caches unchanged files between runs — fast enough to run on save and on every commit rather than only in CI, which is what makes the rules actually shape the code being written instead of being discovered at review time.

Why a fork, and not a separate repository

The obvious alternative was to keep the Odoo rules in their own project and just depend on Ruff. It does not work, for reasons that are structural rather than incidental:

  • Ruff has no plugin system. Rules are compiled into the binary; there is no dynamic loading, no stable ABI, and no "register a rule" entry point to call from the outside. That is a deliberate design choice upstream — it is part of why a single static binary can dispatch rules with no per-rule overhead — not a gap waiting to be filled.
  • A rule is not self-contained. Adding one touches files that upstream owns: the code-to-rule map in codes.rs, the linter enum in registry.rs, the dispatch inside the AST visitor in checkers/ast/analyze/, the settings struct behind lint.odoo, and the generated JSON schema and docs. There is no seam an external crate could attach to.
  • The internal crates are not a public API. ruff_linter describes itself as "an internal component crate of Ruff": it is versioned with the binary and refactored freely. A separate project built on it would break on close to every upstream release, which is a worse maintenance burden than a rebase.
  • A second tool would recreate the original problem. Even with all of the above solved, shipping the Odoo rules as a second binary means a second process, a second parse, a second fix pass over the same file, a second configuration file, and a second suppression syntax. The whole point is that the Odoo rules run in the same pass as everything else: one command, one AST, one --fix, one # noqa, one cache, one pyproject.toml.

The cost of this choice is having to rebase onto upstream Ruff, and that is accepted knowingly. The fork is arranged to keep that cost low: the Odoo rules live in their own directory, upstream files are touched as little as possible, and the ruff crate and its binary are left untouched behind a thin wrapper crate.

The ruff-odoo command

The published command is ruff-odoo, not ruff. It is the exact same CLI, only under a name that cannot collide with an upstream ruff installation, so both can live in the same environment:

$ ruff-odoo check   # Lint all files in the current directory.
$ ruff-odoo format  # Format all files in the current directory.

The Python module is ruff_odoo, so the CLI is also reachable without the console script:

$ python -m ruff_odoo check

Installation

The package is published to PyPI as ruff-odoo. It is not distributed through Homebrew, conda, Docker, or the standalone astral.sh installers — those channels ship upstream Ruff only.

$ # Run it without installing.
$ uvx ruff-odoo check

$ # Install it globally.
$ uv tool install ruff-odoo@latest

$ # Or add it to your project.
$ uv add --dev ruff-odoo

$ # With pip.
$ pip install ruff-odoo

Installing ruff-odoo alongside the upstream ruff package is supported, even in the same environment: ruff-odoo owns the ruff-odoo entry point and never touches ruff.

pre-commit

Use the mirror repository, which installs the prebuilt wheels:

repos:
  - repo: https://github.com/vauxoo/ruff-pre-commit
    # Use the latest release tag; see the version scheme below.
    rev: 0.16.3.32
    hooks:
      - id: ruff-check
      - id: ruff-format

The hook ids match astral-sh/ruff-pre-commit, so switching between upstream and this fork means changing only repo and rev.

This repository also defines the hooks directly (see .pre-commit-hooks.yaml), but pointing repo at it builds Ruff from source with maturin on every environment creation, which is slow and requires a Rust toolchain. Prefer the mirror.

Version scheme

Fork releases use four components, x.y.z.w:

  • x.y.z is the upstream Ruff release this fork is based on (for example 0.16.2).
  • w counts the fork's own releases, independently of that upstream base.

So 0.16.2.4 is the fourth Vauxoo release, built on upstream Ruff 0.16.2. When the fork is synced onto a newer upstream, x.y.z follows it and w carries over untouched: syncing 0.16.2.4 onto upstream 0.16.3 gives 0.16.3.4, and the next release is 0.16.3.5. The counter never restarts, so a fork version is never reused and never goes backwards.

The version lives in [project] version of the root pyproject.toml and is bumped by bump2version (see .bumpversion.cfg), which also creates the release tag. Tags are the bare version with no prefix (0.16.2.4, not v0.16.2.4); pushing one triggers the PyPI release workflow. Because every fork tag has four components, it can never be confused with one of upstream's three-component tags.

Cargo cannot express a four-component version, so crates/ruff_odoo/Cargo.toml keeps the three-component x.y.z and crates/ruff/build.rs reads the real version out of pyproject.toml at build time, exposing it as RUFF_ODOO_VERSION. A build made outside a checkout of this repository falls back to the Cargo version.

Reporting the version

--version prints the bare version and nothing else:

$ ruff-odoo --version
ruff-odoo 0.16.3.32

It stays bare on purpose: tools that shell out to the binary (ruff-lsp, for one) parse that output as a PEP 440 version and fail on anything appended to it.

The version subcommand is the verbose one. It adds the number of commits since the release tag and the commit the binary was built from:

$ ruff-odoo version
ruff-odoo 0.16.3.32+3 (b45cfcb38 2026-08-15)

The leading name is the binary that was actually invoked, so a locally built ruff dev binary introduces itself as ruff. A release build sitting exactly on its tag has no +N suffix.

For machine-readable output, ask for JSON:

$ ruff-odoo version --output-format json
{
  "version": "0.16.3.32",
  "commit_info": {
    "short_commit_hash": "b45cfcb38",
    "commit_hash": "b45cfcb38d111d9f446b195125290a19e4cf8a4e",
    "commit_date": "2026-08-15",
    "last_tag": "0.16.3.32",
    "commits_since_last_tag": 3
  }
}

Building from source

The ruff-odoo binary is a thin wrapper crate (crates/ruff_odoo) around the untouched upstream ruff crate; the only differences are the displayed command name and the error prefix. Keeping the ruff crate and its binary unmodified is what keeps rebases onto upstream cheap.

Both binaries build from this checkout, and either one is fine for development:

cargo run --bin ruff-odoo -- check path/to/file.py
cargo run --bin ruff -- check path/to/file.py

See AGENTS.md for the full development workflow, and CONTRIBUTING.md for upstream's.

Download files

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

Source Distribution

ruff_odoo-0.16.3.32.tar.gz (5.0 MB view details)

Uploaded Source

Built Distributions

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

ruff_odoo-0.16.3.32-py3-none-win_arm64.whl (11.7 MB view details)

Uploaded Python 3Windows ARM64

ruff_odoo-0.16.3.32-py3-none-win_amd64.whl (11.6 MB view details)

Uploaded Python 3Windows x86-64

ruff_odoo-0.16.3.32-py3-none-win32.whl (11.2 MB view details)

Uploaded Python 3Windows x86

ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_x86_64.whl (11.9 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_i686.whl (11.5 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_armv7l.whl (11.0 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_aarch64.whl (11.2 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

ruff_odoo-0.16.3.32-py3-none-manylinux_2_31_riscv64.whl (11.9 MB view details)

Uploaded Python 3manylinux: glibc 2.31+ riscv64

ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl (12.0 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ s390x

ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (12.6 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ppc64le

ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (11.8 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (11.0 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.8 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

ruff_odoo-0.16.3.32-py3-none-macosx_11_0_arm64.whl (10.7 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

ruff_odoo-0.16.3.32-py3-none-macosx_10_12_x86_64.whl (11.4 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

ruff_odoo-0.16.3.32-py3-none-linux_armv6l.whl (11.2 MB view details)

Uploaded Python 3

File details

Details for the file ruff_odoo-0.16.3.32.tar.gz.

File metadata

  • Download URL: ruff_odoo-0.16.3.32.tar.gz
  • Upload date:
  • Size: 5.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32.tar.gz
Algorithm Hash digest
SHA256 ece172031c10dfe1df888c423a11d76e40cccc56da9d33fba596eef60b540250
MD5 c0d2640db2b31060518906b7442c47b3
BLAKE2b-256 21a09ac75f6ca8e7a838ac2bf67179e0947c65aebc9c5610944df63b13a556dc

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-win_arm64.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-win_arm64.whl
  • Upload date:
  • Size: 11.7 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 b8ea2720245fc4de650499eb8623471eec73d4d255eb57aabe756e42fbad9393
MD5 542648515db49fff8b8816e210b67390
BLAKE2b-256 6a6954ece7fcf053b0d62b6382f0e8fd92029346bab052bb1e0200e6b8400b74

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-win_amd64.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-win_amd64.whl
  • Upload date:
  • Size: 11.6 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 f2606fbc743ef65605fb879aad59b011060681fd40baf97c6dd48efa3d11dc10
MD5 c859bf4c9bb86c4dfe741995fbdb958b
BLAKE2b-256 cb01e8f84fe6c0d5a52e5990c3bb3fa9c154761e33c3c58cbb8ae22c7048b368

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-win32.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-win32.whl
  • Upload date:
  • Size: 11.2 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-win32.whl
Algorithm Hash digest
SHA256 5b74cfd9a30e45758b75aab2ae5ab2cf21af2e5a470c01fb12cec4c2eeaf03d7
MD5 fdb9911f139f5c853dac8c3de2a867d7
BLAKE2b-256 f28bce6a899e45f2fd5c81f4451c3b0fc9a5932f5b9810894da3e545108a9777

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 11.9 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b79f1febf1f813fa75de446e546e490ad9a97db863a19a9832a01f2cbfd41b05
MD5 f583567507a395f956b14f6d254bca73
BLAKE2b-256 f7748e7df463716c55018f705ff338c6946c78c79ba11e86ab24ffeb8a28aead

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_i686.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 11.5 MB
  • Tags: Python 3, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 0d96c6e7e2f70e08f1d63a5ea498d23b5b12f16d59b7b6496ed7803e4f80a727
MD5 8c9c7b348adeb885a4cc6f69d7972893
BLAKE2b-256 465529da319619bab96c68ad3e8c77ffe0d0a1da8513db36da8c19ed8007c833

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 11.0 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 a28f32e64aaceb635b6ae49b45c1d2fe2be47390625c360990621dc7e55abdb2
MD5 bdccddd4c45892355160cdfd63bd8b84
BLAKE2b-256 a9e241297116f988907c1e97b249b4a87503d034c3b56a28a2361cc190548c38

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 11.2 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6386b42eb7fe0e3086e8e1378718b6b91abea381efc549f7bbfc1abdc3a4d9e3
MD5 3a65544b66bcdc643bfc07c80ee503ac
BLAKE2b-256 3475da110a2b43e86c44ac9d37db4547f4492de58f10e2a7912650327a4c4218

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-manylinux_2_31_riscv64.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-manylinux_2_31_riscv64.whl
  • Upload date:
  • Size: 11.9 MB
  • Tags: Python 3, manylinux: glibc 2.31+ riscv64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-manylinux_2_31_riscv64.whl
Algorithm Hash digest
SHA256 90a83ba283b85b831a1673bc76cd8ee955915daa27ae1f1c308f9a5575952506
MD5 bc50fe9e22512a78b6c23288aba19f51
BLAKE2b-256 763dc093e9feb2155e87322e17eef75e69ae4cc23e36575f1a3ba72669b02067

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 11.3 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 14139cc88986addadc379c478585ba40f7a66a66da0b9315a50bc2c7582d3601
MD5 4e414aa8d9b29a1b66711140c1e3f6dd
BLAKE2b-256 6cb6a0e2dcbc76efba5d4e6aac6155e5e2029156f1207de10d3daf519145cebd

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
  • Upload date:
  • Size: 12.0 MB
  • Tags: Python 3, manylinux: glibc 2.17+ s390x
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 4dbf34ce8b58cc2790d835498ba56ecca944367f5e0e08c62635ea3982b1ffa1
MD5 53d189af4e1aba83d121be0cab7e0e50
BLAKE2b-256 4a334a7b8cc7d0fe8c1b086f76ae36c4a04153663d0efe8e81c72147e638e63a

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
  • Upload date:
  • Size: 12.6 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ppc64le
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 36623a54e612b1d77c13c5f84813fd793f126865f7048aedbf30f44cbca89941
MD5 1e9cef6eaa4cb31bf36d1048c087bd8d
BLAKE2b-256 42b208d1b5a7e9dbd220f8d7e0b7b7ae03e8d04b47dade51106badef0f2393df

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 11.8 MB
  • Tags: Python 3, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 561cd1b6de459d0c83268eb82cf856981b072fce8d8b9a15c734710dc53a0309
MD5 0e57246e58a7cb81bd1305cc70c7c336
BLAKE2b-256 8aafc63a2f1865605cc705b74fb210dc9b2054a1f1eb5b97371c38e3f0c20320

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 11.0 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 9e7e90921c3d266a0346723964d32d0f2c776f271e9aefcc2c5f009ccd034781
MD5 0caaa01af105ceda7a4979a85db6371d
BLAKE2b-256 1bf665a5b2abbca05269d4b6a11be9fd2f70003903f2e19a5c032664f6289a5a

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 10.8 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0d1f9ee0197c7de43d3857d25abd8685f88ff0c6a6ed161a781ebe7d1b5efa05
MD5 fe80bfbfe34adc78a5df37e06f63ece7
BLAKE2b-256 81edcaad64802eb9ce24ce2bc90a5be1d78cba67a90c1b7190b998cff83119fc

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 10.7 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fcdc2ccbebf5bcc28ac814d8d8d01cef5309147db49ddacbfe6325c7045eaa39
MD5 8f3eca94546af5b4e3793e024fb500c1
BLAKE2b-256 3021774b1d685c8d2f01cfd41dae7ac891b3a05607a7f3a01bf79e40d6356515

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 11.4 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 33c5ee00810547f654b2c7aa9d1c44c8005ccb2cb90717de7f43b561d9fdd3db
MD5 0bdec4f00bdfa44e0b8023d3be5afaab
BLAKE2b-256 17228987d9409a09b6f34eb7e3ad1f4e039d29d1743958145d140f3a96408bcb

See more details on using hashes here.

File details

Details for the file ruff_odoo-0.16.3.32-py3-none-linux_armv6l.whl.

File metadata

  • Download URL: ruff_odoo-0.16.3.32-py3-none-linux_armv6l.whl
  • Upload date:
  • Size: 11.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ruff_odoo-0.16.3.32-py3-none-linux_armv6l.whl
Algorithm Hash digest
SHA256 f5d72412b2acd7e3e5606737542c57efd7eb1bbd281a83fbedd201fbe7fe3d3b
MD5 7af1f4716f4e1b1d6e25327488d05b60
BLAKE2b-256 17d7f0ffa4af0e69c1a8f3bbac0a652d67177726218db3af41596c78a7cbbb35

See more details on using hashes here.

Release history Release notifications | RSS feed

0.16.3.34

18 files

0.16.3.33

18 files

This release

0.16.3.32 This release

18 files

0.16.3.31

18 files

0.16.3.30

18 files

0.16.3.29

18 files

0.16.3.28

18 files

0.16.3.27

18 files

0.16.3.26

18 files

0.16.3.25

18 files

0.16.3.24

18 files

0.16.3.23

18 files

0.16.3.22

18 files

0.16.3.21

18 files

0.16.3.20

18 files

0.16.2.17

18 files

0.16.2.16

18 files

0.16.2.15

18 files

0.16.2.14

18 files

0.16.2.13

18 files

0.16.2.12

18 files

0.16.2.11

18 files

0.16.2.10

18 files

0.16.2.9

18 files

0.16.2.8

18 files

0.16.2.7

18 files

0.16.2.6

18 files

0.16.2.5

18 files

0.16.2.4

18 files

0.16.2.3

18 files

0.16.2.2

18 files

0.16.2.1

3 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page