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

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

Uploaded Python 3Windows ARM64

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

Uploaded Python 3Windows x86-64

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

Uploaded Python 3Windows x86

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

Uploaded Python 3musllinux: musl 1.2+ i686

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

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

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

Uploaded Python 3musllinux: musl 1.2+ ARM64

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

Uploaded Python 3manylinux: glibc 2.31+ riscv64

ruff_odoo-0.16.3.29-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.29-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.29-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.29-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.29-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.29-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.29-py3-none-macosx_11_0_arm64.whl (10.7 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29.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.29.tar.gz
Algorithm Hash digest
SHA256 ce3f2d7101bd0971ffd76f27039def3e267f3425d1310643bae8bc5973849c2c
MD5 fd06fc29e17fe105d415ef40e79a326c
BLAKE2b-256 0f4f3c088f6f19e3665cbd7115d8039dc2902737513c6aaecfdfd68f1f955a46

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 f19cd49204f0cc512ee9c013163b7fa7f868886c4013bec8bf4e4e2f4590ee7c
MD5 5805ace156221603f8051b3db2b30848
BLAKE2b-256 5890259330fa507f490acdb121916f7b65cdb33e5fb4a4604c10d9eefbb26c92

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 a83cfc242a8ca7e078f49f0705aee7edf72a4ed13ae8cfa309f806d86d9b1032
MD5 c896268cfcb1ba91d886fb29937bd27d
BLAKE2b-256 d2826daa0162785023195c5a83c8a9ce86f18e09936c8fb2fc6a513c7f988bf0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-win32.whl
Algorithm Hash digest
SHA256 8a5b3e55a25f4adc0ec0ead7246b54972841e703eed7384d1b2426453c8ac15d
MD5 a9e761664082feea74d952c2d9d6ee1c
BLAKE2b-256 18b64e7948d4147a84ea10abdef2ef2c139f986809e809f65b495aa07b3f9fb9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 26902efc62d0bdb34cc44a2d715dc770689f364bd63c1dcc7838c1d04e749fdb
MD5 4c51638584fa94c971b54cf09a296e64
BLAKE2b-256 1e3f76aab892dc2520b6edaf5b32cd4754ce1fae2919456e0660b5b790ff71b7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 ec99e1d83d92cb9587d647e2330d9a42f8204fc65f022489c49e6aecf21ddaff
MD5 ee22c6e80fda1a6cd9fb88dbe645f29d
BLAKE2b-256 3fc213691a95c38aa12193e17b91344cdba1d5e864ea761cb0ec9c2e2528adda

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 9c8e24685b7d144a64527c94df2f768a094b5eb4d1bde4d688cdace3d72ea006
MD5 4bc412587ec20acd57e387421333ccae
BLAKE2b-256 6a83bf855ba46ace98b6d48bd14523f37ac50fb18ea2bb0629cbf1bc99b5b1b3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 72928399ee26d81391f0f889df4299b98db282ca2f1288f23c2f1cf229c69ccc
MD5 bb5c322deb4c5d2131f2cafa7b01f1ca
BLAKE2b-256 7b45116b2dbc31fe816abce55f5005e760b67bc0724292638d2b4de757cb91b0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-manylinux_2_31_riscv64.whl
Algorithm Hash digest
SHA256 46a8e2cfdc672e33faa262280d4e0e2ad05d0985a855c5a94fa61c68b6e0c735
MD5 331b46f1e87378c6145494d9410f9043
BLAKE2b-256 6f4652e068f2b2802c391ceb5f1a78820b6ee011768a5c282779416c34c568da

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 78f92af0be75be6bc2ed8f59a6642efd1657b829463a1954068ea0bc9c795a4f
MD5 636618fbc03883cf003ea28088a48a45
BLAKE2b-256 9df2a390aa1f2f194eafeb196888728ad3f5553283c775aa69d57b3e78c326c8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 b7137faac86c2ff22d68fccc3ea032b447d74b625f7855036c4944134d16736a
MD5 c6b0c93699e43e9c8c60b8fee176daf2
BLAKE2b-256 786e70ea5883fe665b8357305c2b30ea2090cf15a0def0e3efdb303417698381

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 7d458503fb3706f4d322bf9549c9a4ef2987c7b2207def7a710f9b957432fd29
MD5 00bbd1383955f46282f4a9a8a3771f10
BLAKE2b-256 25007b6a40b4f22125fed804d6aa6c25ef7954c60088e89de39ee8459a641843

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d7780dc5c03cb7536ddbcec764c715d5d03876a5804be095d4eb050898ec0d7a
MD5 c71cde1088e4800870251e21dfdb57f5
BLAKE2b-256 8f196ec5669e31872bf308bc985365dec06a1a730c14dee6ad59cb8df47bc2db

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 43fa64ec429dbdf5d9675148df869f08cbe4eba22793c1165f6524ef38e72d1f
MD5 c76b97415ec26fa8b1031f9c3e7cace3
BLAKE2b-256 6e7c2e0288b7af67bd6cc48b4e4170e370570630ec6ad0f6d9e1662305a32a3b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a9b32449034755df4ed1402d9b677467544ad7e669fd8b5fae8cd1f7b492dd60
MD5 5881f7f3e79fbf5f81b7794b41d6d8b3
BLAKE2b-256 be095dc7eec0669362f8d64cdbb128f3a29349634c17be09d11de1804cb62982

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c84d6bafef7b21609ef84130b0da033e8eb66a6f50640507fd7f1f9c1c899729
MD5 4e474c544bd36b14c6c6224aad8af708
BLAKE2b-256 b4b9e27f552a93648ab34f2197e7202b4105f369596340a37aed92752de6035e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 507163053a937d2a7a9e0c3c3fe8775cbcd11aeeaf3be55001212402a3d3a025
MD5 1279a665f4521731ef6ad984f4befffe
BLAKE2b-256 d4d3b2cf68fe57b82ca0c05f1815b1112710dec034d8dc52de7d3716460e8e04

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ruff_odoo-0.16.3.29-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.29-py3-none-linux_armv6l.whl
Algorithm Hash digest
SHA256 b4f01260a381561b020b4e0067f828be3e18f847364fb7ebe0c290964f166dd4
MD5 cdbec4c3a1fcb4a871f987d3196a90d1
BLAKE2b-256 581d9808e0f9a5278be61e46531aad4ca54583938c67c80d39d2b9c896db4b65

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

This release

0.16.3.29 This release

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