On 8/9/22 02:41, Fabio Valentini wrote:
You can use this bash script to check for impact when pushing
breaking versions:
https://github.com/decathorpe/miscripts/blob/master/cratedeps
Thanks. Is this script mentioned in the Fedora docs anywhere? Could be
useful.
Like this:
$ cratedeps miniz_oxide
And it will list all source and binary packages that depend on the
current version of miniz_oxide:
rust-backtrace-0:0.3.64-2.fc37.src
rust-backtrace-devel-0:0.3.64-2.fc37.noarch
rust-flate2-0:1.0.22-3.fc37.src
rust-flate2+miniz_oxide-devel-0:1.0.22-3.fc37.noarch
rust-miniz_oxide+default-devel-0:0.4.4-4.fc37.noarch
rust-miniz_oxide+no_extern_crate_alloc-devel-0:0.4.4-4.fc37.noarch
rust-png-0:0.17.2-2.fc37.src
rust-png-devel-0:0.17.2-2.fc37.noarch
rust-tiff-0:0.6.1-5.fc37.src
rust-tiff-devel-0:0.6.1-5.fc37.noarch
This means:
- rust-backtrace depends on miniz_oxide v0.4 at build- and at install-time
(though a pending update already requires miniz_oxide 0.5)
- rust-flate2 depends on miniz_oxide v0.4 at build- and at install-time
(though a pending update already requires miniz_oxide 0.5)
- rust-png depends on miniz_oxide v0.4 at build- and at install-time
(though a pending update already requires miniz_oxide 0.5)
- rust-tiff depends on miniz_oxide v0.4 at build- and at install-time
(the pending update to v0.7 drops the dependency on miniz_oxide, but
we still need v0.6)
The updates for the "backtrace" crate are always a bit tedious,
because it requires a coordinated update of backtrace, addr2line,
object, and other crates.
I will tackle that in the near future.
Looking at the changelog for miniz_oxide, it doesn't seem that there
were badly breaking API changes with 0.5:
https://github.com/Frommi/miniz_oxide/blob/master/CHANGELOG.md
So it might be possible to port current users of miniz_oxide to
version 0.5 without too much work, but I'd like to avoid pushing two
updates for backtrace, so I'd rather include it in the update, as
well. So, taking all this into account, this is what I will probably
do:
- update miniz_oxide to v0.5
- update backtrace to the latest version (including addr2line, object, etc.)
- update flate2 to latest version
- update png to latest version
- attempt to port tiff v0.6 to miniz_oxide 0.7
- add a compat package for miniz_oxide 0.4 if porting tiff to v0.5 fails
Thanks for the info. Other updates I'm looking at:
* clamav needs image 0.24 (currently at 0.23). Depending on it appears
to be:
rust-notify-rust
rust-palette
rust-plotters
rust-qrcode
rust-rav1e
rust-smithay-client
rust-winit
zola
Definitely a number of changes mentioned in
https://github.com/image-rs/image/blob/master/CHANGES.md
* image 0.24 needs:
rust-exr
rust-jpeg-decoder 0.2.1
rust-tiff 0.7.1
* exr needs:
deflate 1.0
some other new packages I've submitted for review plus resurrecting flume
* deflate dependents:
png
* tiff depependents:
image
* jpeg-decoder dependents:
image
tiff
Any suggestions for how to tackle this? At least most of the deps seem
related. But I'm guessing that adding a compat package for image would
require adding compat packages for crates it depends on?
--
Orion Poplawski
he/him/his - surely the least important thing about me
IT Systems Manager 720-772-5637
NWRA, Boulder/CoRA Office FAX: 303-415-9702
3380 Mitchell Lane orion(a)nwra.com
Boulder, CO 80301
https://www.nwra.com/