Bug 2330269

Summary: Please branch and build ruff in epel10
Product: [Fedora] Fedora Reporter: Romain Geissler <romain.geissler>
Component: ruffAssignee: Ben Beasley <code>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: unspecified    
Version: 42CC: code, decathorpe, python-packagers-sig, rust-sig
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: ruff-0.11.0-1.el10_1 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-04-09 03:08:42 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2330253    
Bug Blocks:    

Description Romain Geissler 2024-12-04 00:48:10 UTC
Please branch and build ruff in epel10.

Reproducible: Always

Comment 1 Fabio Valentini 2024-12-04 15:30:05 UTC
Note that this should be possible, but I can't promise anything.
At the very least, it will require importing a lot of Rust dependencies into EPEL 10.

Additionally, the ruff development branch already requires Rust >1.80:
https://github.com/astral-sh/ruff/blob/main/Cargo.toml#L7
And they seem to move their minimum supported Rust version frequently.

This is not (yet) a problem for EPEL 10, but it might block future updates until the Rust compiler is updated in CentOS Stream 10.

Comment 2 Romain Geissler 2024-12-26 23:52:13 UTC
Indeed there are quite some dependencies.

At the moment, here is what's missing when trying to build the rawhide branch for EPEL 10 (with epel-testing rpm repository enabled):

Error:
 Problem 1: nothing provides requested (crate(append-only-vec/default) >= 0.1.5 with crate(append-only-vec/default) < 0.2.0~)
 Problem 2: nothing provides requested (crate(argfile/default) >= 0.2.0 with crate(argfile/default) < 0.3.0~)
 Problem 3: nothing provides requested (crate(assert_fs/default) >= 1.1.0 with crate(assert_fs/default) < 2.0.0~)
 Problem 4: nothing provides requested (crate(cachedir/default) >= 0.3.1 with crate(cachedir/default) < 0.4.0~)
 Problem 5: nothing provides requested (crate(clearscreen/default) >= 3.0.0 with crate(clearscreen/default) < 4.0.0~)
 Problem 6: nothing provides requested (crate(compact_str/default) >= 0.8.0 with crate(compact_str/default) < 0.9.0~)
 Problem 7: nothing provides requested (crate(compact_str/serde) >= 0.8.0 with crate(compact_str/serde) < 0.9.0~)
 Problem 8: nothing provides requested (crate(countme/default) >= 3.0.1 with crate(countme/default) < 4.0.0~)
 Problem 9: nothing provides requested (crate(countme/enable) >= 3.0.1 with crate(countme/enable) < 4.0.0~)
 Problem 10: nothing provides requested (crate(drop_bomb/default) >= 0.1.5 with crate(drop_bomb/default) < 0.2.0~)
 Problem 11: nothing provides requested (crate(globwalk/default) >= 0.9.1 with crate(globwalk/default) < 0.10.0~)
 Problem 12: nothing provides requested (crate(imperative/default) >= 1.0.4 with crate(imperative/default) < 2.0.0~)
 Problem 13: nothing provides requested (crate(indicatif/default) >= 0.17.8 with crate(indicatif/default) < 0.18.0~)
 Problem 14: nothing provides requested (crate(insta-cmd/default) >= 0.6.0 with crate(insta-cmd/default) < 0.7.0~)
 Problem 15: nothing provides requested (crate(is-macro/default) >= 0.3.5 with crate(is-macro/default) < 0.4.0~)
 Problem 16: nothing provides requested (crate(is-wsl/default) >= 0.4.0 with crate(is-wsl/default) < 0.5.0~)
 Problem 17: nothing provides requested (crate(jod-thread/default) >= 0.1.2 with crate(jod-thread/default) < 0.2.0~)
 Problem 18: nothing provides requested (crate(libcst) >= 1.1.0 with crate(libcst) < 2.0.0~)
 Problem 19: nothing provides requested (crate(lsp-server/default) >= 0.7.6 with crate(lsp-server/default) < 0.8.0~)
 Problem 20: nothing provides requested (crate(matchit/default) >= 0.8.1 with crate(matchit/default) < 0.9.0~)
 Problem 21: nothing provides requested (crate(natord/default) >= 1.0.9 with crate(natord/default) < 2.0.0~)
 Problem 22: nothing provides requested (crate(notify-debouncer-mini/default) >= 0.4.1 with crate(notify-debouncer-mini/default) < 0.5.0~)
 Problem 23: nothing provides requested (crate(notify/default) >= 6.1.1 with crate(notify/default) < 7.0.0~)
 Problem 24: nothing provides requested (crate(ordered-float/default) >= 4.2.1 with crate(ordered-float/default) < 5.0.0~)
 Problem 25: nothing provides requested (crate(ordermap/default) >= 0.5.0 with crate(ordermap/default) < 0.6.0~)
 Problem 26: nothing provides requested (crate(quick-junit/default) >= 0.5.0 with crate(quick-junit/default) < 0.6.0~)
 Problem 27: nothing provides requested (crate(test-case/default) >= 3.3.1 with crate(test-case/default) < 4.0.0~)
 Problem 28: nothing provides requested (crate(test-log/default) >= 0.2.11 with crate(test-log/default) < 0.3.0~)
 Problem 29: nothing provides requested (crate(test-log/trace) >= 0.2.11 with crate(test-log/trace) < 0.3.0~)
 Problem 30: nothing provides requested (crate(tracing-flame/default) >= 0.2.0 with crate(tracing-flame/default) < 0.3.0~)
 Problem 31: nothing provides requested (crate(tracing-indicatif/default) >= 0.3.6 with crate(tracing-indicatif/default) < 0.4.0~)
 Problem 32: nothing provides requested (crate(tracing-tree/default) >= 0.4.0 with crate(tracing-tree/default) < 0.5.0~)
 Problem 33: nothing provides requested (crate(unic-ucd-category/default) >= 0.9.0 with crate(unic-ucd-category/default) < 0.10.0~)
 Problem 34: nothing provides requested (crate(unicode_names2/default) >= 1.2.2 with crate(unicode_names2/default) < 2.0.0~)
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

Comment 3 Fabio Valentini 2024-12-28 17:44:45 UTC
> Indeed there are quite some dependencies.

Yes. :)

I won't have time to work on these for now.
Keeping ruff up-to-date in Fedora itself will have priority for now.

Comment 4 Ben Beasley 2025-01-29 12:10:21 UTC
The list is a little bit shorter – but still long – now that I have branched all the dependencies for uv. The following is from a scratch build in the side tag where I am currently building uv for EPEL10:

DEBUG util.py:459:   Problem 1: nothing provides requested (crate(append-only-vec/default) >= 0.1.5 with crate(append-only-vec/default) < 0.2.0~)
DEBUG util.py:459:   Problem 2: nothing provides requested (crate(argfile/default) >= 0.2.0 with crate(argfile/default) < 0.3.0~)
DEBUG util.py:459:   Problem 3: nothing provides requested (crate(clearscreen/default) >= 3.0.0 with crate(clearscreen/default) < 4.0.0~)
DEBUG util.py:459:   Problem 4: nothing provides requested (crate(compact_str/default) >= 0.8.0 with crate(compact_str/default) < 0.9.0~)
DEBUG util.py:459:   Problem 5: nothing provides requested (crate(compact_str/serde) >= 0.8.0 with crate(compact_str/serde) < 0.9.0~)
DEBUG util.py:459:   Problem 6: nothing provides requested (crate(countme/default) >= 3.0.1 with crate(countme/default) < 4.0.0~)
DEBUG util.py:459:   Problem 7: nothing provides requested (crate(countme/enable) >= 3.0.1 with crate(countme/enable) < 4.0.0~)
DEBUG util.py:459:   Problem 8: nothing provides requested (crate(dir-test/default) >= 0.4.0 with crate(dir-test/default) < 0.5.0~)
DEBUG util.py:459:   Problem 9: nothing provides requested (crate(drop_bomb/default) >= 0.1.5 with crate(drop_bomb/default) < 0.2.0~)
DEBUG util.py:459:   Problem 10: nothing provides requested (crate(imperative/default) >= 1.0.4 with crate(imperative/default) < 2.0.0~)
DEBUG util.py:459:   Problem 11: nothing provides requested (crate(insta-cmd/default) >= 0.6.0 with crate(insta-cmd/default) < 0.7.0~)
DEBUG util.py:459:   Problem 12: nothing provides requested (crate(is-macro/default) >= 0.3.5 with crate(is-macro/default) < 0.4.0~)
DEBUG util.py:459:   Problem 13: nothing provides requested (crate(is-wsl/default) >= 0.4.0 with crate(is-wsl/default) < 0.5.0~)
DEBUG util.py:459:   Problem 14: nothing provides requested (crate(jod-thread/default) >= 0.1.2 with crate(jod-thread/default) < 0.2.0~)
DEBUG util.py:459:   Problem 15: nothing provides requested (crate(libcst) >= 1.1.0 with crate(libcst) < 2.0.0~)
DEBUG util.py:459:   Problem 16: nothing provides requested (crate(lsp-server/default) >= 0.7.6 with crate(lsp-server/default) < 0.8.0~)
DEBUG util.py:459:   Problem 17: nothing provides requested (crate(matchit/default) >= 0.8.1 with crate(matchit/default) < 0.9.0~)
DEBUG util.py:459:   Problem 18: nothing provides requested (crate(natord/default) >= 1.0.9 with crate(natord/default) < 2.0.0~)
DEBUG util.py:459:   Problem 19: nothing provides requested (crate(notify-debouncer-mini/default) >= 0.4.1 with crate(notify-debouncer-mini/default) < 0.5.0~)
DEBUG util.py:459:   Problem 20: nothing provides requested (crate(notify/default) >= 8.0.0 with crate(notify/default) < 9.0.0~)
DEBUG util.py:459:   Problem 21: nothing provides requested (crate(ordered-float/default) >= 4.2.1 with crate(ordered-float/default) < 5.0.0~)
DEBUG util.py:459:   Problem 22: nothing provides requested (crate(ordermap/default) >= 0.5.0 with crate(ordermap/default) < 0.6.0~)
DEBUG util.py:459:   Problem 23: nothing provides requested (crate(quick-junit/default) >= 0.5.0 with crate(quick-junit/default) < 0.6.0~)
DEBUG util.py:459:   Problem 24: nothing provides requested (crate(tracing-flame/default) >= 0.2.0 with crate(tracing-flame/default) < 0.3.0~)
DEBUG util.py:459:   Problem 25: nothing provides requested (crate(tracing-indicatif/default) >= 0.3.6 with crate(tracing-indicatif/default) < 0.4.0~)
DEBUG util.py:459:   Problem 26: nothing provides requested (crate(unic-ucd-category/default) >= 0.9.0 with crate(unic-ucd-category/default) < 0.10.0~)
DEBUG util.py:459:   Problem 27: nothing provides requested (crate(unicode_names2/default) >= 1.2.2 with crate(unicode_names2/default) < 2.0.0~)

Comment 5 Aoife Moloney 2025-02-26 13:19:17 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 42 development cycle.
Changing version to 42.

Comment 6 Romain Geissler 2025-04-05 00:24:23 UTC
There is a bit less dependencies missing now:

Error:
 Problem 1: nothing provides requested (crate(argfile/default) >= 0.2.0 with crate(argfile/default) < 0.3.0~)
 Problem 2: nothing provides requested (crate(clearscreen/default) >= 4.0.0 with crate(clearscreen/default) < 5.0.0~)
 Problem 3: nothing provides requested (crate(compact_str/default) >= 0.8.0 with crate(compact_str/default) < 0.9.0~)
 Problem 4: nothing provides requested (crate(compact_str/serde) >= 0.8.0 with crate(compact_str/serde) < 0.9.0~)
 Problem 5: nothing provides requested (crate(countme/default) >= 3.0.1 with crate(countme/default) < 4.0.0~)
 Problem 6: nothing provides requested (crate(countme/enable) >= 3.0.1 with crate(countme/enable) < 4.0.0~)
 Problem 7: nothing provides requested (crate(dir-test/default) >= 0.4.0 with crate(dir-test/default) < 0.5.0~)
 Problem 8: nothing provides requested (crate(drop_bomb/default) >= 0.1.5 with crate(drop_bomb/default) < 0.2.0~)
 Problem 9: nothing provides requested (crate(imperative/default) >= 1.0.4 with crate(imperative/default) < 2.0.0~)
 Problem 10: nothing provides requested (crate(insta-cmd/default) >= 0.6.0 with crate(insta-cmd/default) < 0.7.0~)
 Problem 11: nothing provides requested (crate(is-macro/default) >= 0.3.5 with crate(is-macro/default) < 0.4.0~)
 Problem 12: nothing provides requested (crate(jod-thread/default) >= 0.1.2 with crate(jod-thread/default) < 0.2.0~)
 Problem 13: nothing provides requested (crate(libcst) >= 1.1.0 with crate(libcst) < 2.0.0~)
 Problem 14: nothing provides requested (crate(lsp-server/default) >= 0.7.6 with crate(lsp-server/default) < 0.8.0~)
 Problem 15: nothing provides requested (crate(natord/default) >= 1.0.9 with crate(natord/default) < 2.0.0~)
 Problem 16: nothing provides requested (crate(ordermap/default) >= 0.5.0 with crate(ordermap/default) < 0.6.0~)
 Problem 17: nothing provides requested (crate(quick-junit/default) >= 0.5.0 with crate(quick-junit/default) < 0.6.0~)
 Problem 18: nothing provides requested (crate(tracing-flame/default) >= 0.2.0 with crate(tracing-flame/default) < 0.3.0~)
 Problem 19: nothing provides requested (crate(tracing-indicatif/default) >= 0.3.6 with crate(tracing-indicatif/default) < 0.4.0~)
 Problem 20: nothing provides requested (crate(tryfn/default) >= 0.2.1 with crate(tryfn/default) < 0.3.0~)
 Problem 21: nothing provides requested (crate(unic-ucd-category/default) >= 0.9.0 with crate(unic-ucd-category/default) < 0.10.0~)
 Problem 22: nothing provides requested (crate(unicode_names2/default) >= 1.2.2 with crate(unicode_names2/default) < 2.0.0~)

Comment 7 Fedora Update System 2025-04-06 14:29:38 UTC
FEDORA-EPEL-2025-e07da08831 (ruff-0.11.0-1.el10_1, rust-argfile-0.2.0-3.el10_1, and 28 more) has been submitted as an update to Fedora EPEL 10.1.
https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2025-e07da08831

Comment 8 Fedora Update System 2025-04-07 01:37:50 UTC
FEDORA-EPEL-2025-e07da08831 has been pushed to the Fedora EPEL 10.1 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2025-e07da08831

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 9 Fedora Update System 2025-04-09 03:08:42 UTC
FEDORA-EPEL-2025-e07da08831 (ruff-0.11.0-1.el10_1, rust-argfile-0.2.0-3.el10_1, and 28 more) has been pushed to the Fedora EPEL 10.1 stable repository.
If problem still persists, please make note of it in this bug report.