[ 
https://issues.apache.org/jira/browse/AVRO-4232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18102488#comment-18102488
 ] 

ASF subversion and git services commented on AVRO-4232:
-------------------------------------------------------

Commit ed2ee6aa58bc6e63da33ab3383cce70f618c2867 in avro's branch 
refs/heads/branch-1.12 from Ismaël Mejía
[ https://gitbox.apache.org/repos/asf?p=avro.git;h=ed2ee6aa58 ]

AVRO-4232: [Python] Backport uv/ruff tooling to branch-1.12 (#3922)

* AVRO-4232: [Python] Backport uv/ruff tooling to branch-1.12

Backports the Python tooling modernization (AVRO-4232, #3658) so that the
Java interop workflow's 'uv sync --frozen' step works on branch-1.12.

The workflow change was previously backported without the accompanying
lang/py migration, leaving no uv.lock or [project] table, which caused
'uv sync --frozen' to fail.

- Migrate lang/py from tox/setuptools to uv + ruff
- Add uv.lock and [project]/[dependency-groups] to pyproject.toml
- Remove tox.ini and setup.cfg
- Update build.sh (ruff/coverage/mypy targets)
- Convert test-lang-py.yml to uv (drops py3.9 CI, adds 3.14)
- Exclude lang/py/uv.lock from RAT license check

Version pinned to 1.12.2 and packages.find restricted to avro* to fix
flat-layout package discovery.

* AVRO-4232: [Python] Use pinned ruff (uv run) instead of uvx in build.sh

uvx fetches the latest ruff, whose stricter default lint rules flag 252
pre-existing issues in the (not-yet-modernized) branch-1.12 source. Use
'uv run ruff' to run the version pinned in uv.lock (0.15.1), matching
main and keeping lint reproducible.

> [Python] Modernize the Python tooling
> -------------------------------------
>
>                 Key: AVRO-4232
>                 URL: https://issues.apache.org/jira/browse/AVRO-4232
>             Project: Apache Avro
>          Issue Type: Task
>          Components: python
>            Reporter: Martin Tzvetanov Grigorov
>            Assignee: Martin Tzvetanov Grigorov
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.12.2
>
>          Time Spent: 4h 20m
>  Remaining Estimate: 0h
>
> The Python build often fails without any changes in avro/lang/py/ folder!
> If a new version of Python itself or some tool 
> (linter/formatter/typechecker/...) is released then the Python build usually 
> needs some work to pass again.
> It would be nice to use something more stable/modern to make the build stable 
> and reliable. Maybe uv, ruff, ... ?! Anything that won't break unless we 
> change something in our code.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to