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.26
    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.26

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.26+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.26",
  "commit_info": {
    "short_commit_hash": "b45cfcb38",
    "commit_hash": "b45cfcb38d111d9f446b195125290a19e4cf8a4e",
    "commit_date": "2026-08-15",
    "last_tag": "0.16.3.26",
    "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.26.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.26-py3-none-win_arm64.whl (11.7 MB view details)

Uploaded Python 3Windows ARM64

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

Uploaded Python 3Windows x86-64

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

Uploaded Python 3Windows x86

ruff_odoo-0.16.3.26-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.26-py3-none-musllinux_1_2_i686.whl (11.4 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

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

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

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

Uploaded Python 3musllinux: musl 1.2+ ARM64

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

Uploaded Python 3manylinux: glibc 2.31+ riscv64

ruff_odoo-0.16.3.26-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.26-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.26-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.26-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (11.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

ruff_odoo-0.16.3.26-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.26-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.9 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

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

Uploaded Python 3macOS 11.0+ ARM64

ruff_odoo-0.16.3.26-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.26-py3-none-linux_armv6l.whl (11.2 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26.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.26.tar.gz
Algorithm Hash digest
SHA256 890f7cc50269ccc520804d681435d1babc4458758b25d8f97f39a164fb873c29
MD5 d05dec7f305085a98a40431b5b55e143
BLAKE2b-256 235384b6c685ec3f42eae1ac1ab33feb90c7578be2bef004133046c93fc6fbd3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 ddb6a1588fca1d15575d7d5b32825eb86937de8e08ce83141c2d011f2643dadb
MD5 cb643b350a85519b5f0d553641f068d7
BLAKE2b-256 0b93c54d73aebb2a52b20689d6eab38799adb2b352e089b156aaf34da0e9575c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 b98f28410a5455ea0951e55e6be1969c1d0ccd6247edd66d21400918fcd0e333
MD5 9a6c5e20e526832961a2b65a7c6c9518
BLAKE2b-256 fb1e32abfd02b8730df0c303371734dcbc0ae4b66c08a046798782783007c4d0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-win32.whl
Algorithm Hash digest
SHA256 763506d41380e10f736dbbb898fdf613d0bebeb47ee26f8587f8c16c5ac92e46
MD5 4d2ded8fb038679073da81fe11ff4309
BLAKE2b-256 4e002104dbcccb165453290790eb2e0d471543dd90bed8bfbcb8276db14c0488

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8f28e8e7907f78bf78dc426f8ae130386dffa347821673229baf3f2c3cbd2f72
MD5 61da4354640ce17bc36025180a99ae0d
BLAKE2b-256 6908acb29b930037a7a20cb39f8f3172bb73946519bcc5991103843ac072c9c7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-py3-none-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 11.4 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.26-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 f497c2dc8e9f7647d05634a59f82e7519c8e066331c8c2101521b39f66146292
MD5 d07be108090d738f0e5fa9cb5bfed273
BLAKE2b-256 0a6263d4f3362fce452d861da00e6ccba5d19ff621772aa26522303cc89ab8d8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 1f6a69ad4922e740355a3005effbae03e7c838ed7683cdfe8fdb1abb1891943c
MD5 0e46ce570de7e25dc19169ccf96331ac
BLAKE2b-256 51040cc096bea5e9338568ac1674906a9c7e5725460bf13ab24cca88ab8b4a27

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7cc7b30a80b610b0911ceb8fb9bb7f3bece2a78c9bd28c0dfdf876e3aa03aa18
MD5 676e77b4b8a1a40229d7785047ab567d
BLAKE2b-256 3db81b870b54ed4c34b6175b792f254d6451e6da90a088b483762eeb8b09a09f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-manylinux_2_31_riscv64.whl
Algorithm Hash digest
SHA256 16f08ee4bf1bff183111bb565b037ed49eb79519c39b854183a3dccd8913b91b
MD5 55392246be436219c64acec2af8b4681
BLAKE2b-256 ed0a063c247c96279f54940118d09b4ffca7b8ea4dd70a60c7eb11e7a97c33bf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 02e6d62c26c53dc3e864945ae0c838e3e4b4102ecc2958e91ee0f2c8fd33cae0
MD5 9f7897eaa027360463f04edf0544e0b9
BLAKE2b-256 990a4c84e10649ba3af2f2c6a350e6a3ba1795d9467b7a6c9ca06e2db778b8b9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 bd4c32105f66167644e37e6781940eaefc92bc655f7aa46937584281a82547c7
MD5 89703197b645828e62102633cf5b0c10
BLAKE2b-256 77f6576b74d9de5e9f20d6697817729e8167b2204ea236ec5f58757aa64fc2c3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 4593229147b13be29698104f6d39ef9184957f38d85a76d61563b8fd20a534de
MD5 0d150998febd6309908003174ab78372
BLAKE2b-256 741fbda59a7f22bc241925191d98ae7d8487037badc3861c44410d0c6709e0af

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 11.7 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.26-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 82fa9828b2a6eb1981a30cf649c36da795a15feba3ae6d1381ef3bfb1a398d2c
MD5 14e65fcad7d3ac04431bf4a48a145dbd
BLAKE2b-256 ab6778f5cfdd3415cd8ad82da59650a1ea1e18edc0e254e651f0e365228d8b2d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 3392dc026491fad20a5c6c42669cf776a2d6dc7658318362cff5cfacae98e678
MD5 4d52dc9a50827729576ef841b67b3a4b
BLAKE2b-256 629574d4da0ab90bfd7bc095c72847ac1835f307a54f3801f596bd9da8a032c9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 10.9 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.26-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1ca6f85ec850db9d5d1be291c2b7291a8911436139f731cf483a528758158a57
MD5 3cbb44d228d6d960596d32e2660a8f0a
BLAKE2b-256 ee12987b82c6576629e9b53f28c359addd9b0e01e8c6178c231f1f3309f915fa

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b2fea38cd862c241f36a8c334629143b7415618d49d05fb7eda0d9a27fee9f78
MD5 0e55b8bea2a15dfe28bed7fc21b6b56e
BLAKE2b-256 d7abca80d1c8e24b7819e112865bb4d9e7da3290ac5c156d51d9233aefe00ec8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 5ddb52bbea69fbedb73808bc7b11e90427924afb50e96bafa92d224421ea0210
MD5 2248ba68859f37fd118812cfa8c24d70
BLAKE2b-256 b914c89814ea6ae548ac34a2617b6d3c27c816c58cd516cc8b8a3fde775e3b66

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.26-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.26-py3-none-linux_armv6l.whl
Algorithm Hash digest
SHA256 2bf4e2d2dfb2a53d8ba539f545daae21a8a9d2b4792d30ca78d2689dad0afdc8
MD5 7fd4a83786c77f2875dea948222fcbea
BLAKE2b-256 72fe0d2cecd5dbedb2064d1bbb7319966967f583557c9caf1cbf1d240018c8e7

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

0.16.3.32

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

This release

0.16.3.26 This release

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