Hi folks,
I'm still working on updating Taskwarrior to version 3, which is a
complete rewrite in Rust. A WIP PR is here:
https://src.fedoraproject.org/rpms/task/pull-request/3
Unfortunately with the newer releases, the number of deps has increased
quite a bit, primarily for the main "storage" library, taskchampion.
This is the list I've got (so far):
https://hackmd.io/@sanjayankur31/SJZWmHb9Jl
I'm going to work through them one by one. A few of these were already
packaged but retired, so I'll un-retire them and take them on too.
I just thought I'd let everyone know so these new packages don't come as
a surprise. (If you find any of the deps useful too, please feel free to
package them and/or review my package review tickets---I won't stop you ;))
I do see that in some cases crates depend on specific versions of other
crates, but these are often different from the version we have in
Fedora. Is the right thing to do patch the version to match what we have
in Fedora (when using rust2rpm)? Or should one package the exact version
as a compat package and so on? (I'm afraid my rust skills aren't good
enough to update crates and send patches upstream, and I wouldn't be
able to do this for a large number of packages.)
--
Thanks,
Regards,
Ankur Sinha "FranciscoD" (He / Him / His) | https://fedoraproject.org/wiki/User:Ankursinha
Time zone: Europe/London
Hi all,
In an effort to keep the stack of Rust crate packages in good shape in
Fedora, I'm regularly checking for library-only packages that have
been unused for extended periods of time (usually 365+ days, i.e. two
full release cycles).
Dropping packages like this reduces the maintenance effort overall due
to less dense dependency graphs - making updates for remaining Rust
packages easier.
Additionally, many of these crates were either packaged for reasons
that are no longer valid (i.e. they were a dependency of something in
the past, but are no longer being depended on now), they are obsolete
and replaced by other crates "upstream", or they were packaged as part
of an effort to ship a specific application, but that effort has since
been abandoned.
These library-only (source-only) packages for Rust crates have been
unused for 365+ days (by main maintainer):
albertlarsan68: rust-fend-core
atim: rust-nparse
blinxen: rust-symlink
dcavalca: rust-rusttype
decathorpe: rust-ghost, rust-smallvec, rust-unidecode
leo: rust-colorgrad, rust-enum-display-derive, rust-euclid
salimma: rust-nom-supreme, rust-vec1, rust-xcb
thunderbirdtr: rust-safetensors
Some packages are omitted from this list because there are still valid
reasons to keep them (for example, packages that are still pending
review depend on them, or they will be needed for other pending crate
updates).
I looked at package review tickets in an attempt to figure out why
these packages were originally packaged, but that wasn't always
possible (because it wasn't mentioned in the ticket and / or the
review bug didn't block any other bugs):
colorgrad: ?
enum-display-derive: ?
euclid: ?
fend-core: ?
ghost: used to be dependency of something, no longer is
nom-supreme: ?
nparse: used to be dependency of something, no longer is
rusttype: ? (blocked "Fedora Asahi Remix: touchbar support")
safetensors: ?
smallvec: used to be dependency of something, no longer is
suggest: ? (potentially as a dependency of "zellij")
symlink: used to be dev-dependency of gix-worktree (now removed)
unidecode: used to be dependency of fake (replaced with deunicode)
vec1: ?
xcb: used to be dependency of x11-clipboard
(replaced with x11rb)
If there is a package in this list that is still needed for something
that you're working on, please let me know soon, and I will add it to
the list here:
https://pagure.io/ironthree/fedora-rust-sig-leaf-check/blob/main/f/reasons.…
Otherwise I plan to retire any Rust packages that are
- library-only / source-only and
- have been unused leaf packages for 365+ days and
- have no documented reason for why they are still needed
before the F42 Beta Freeze takes effect.
Fabio