I intend to update zerocopy to 0.8 (staged in experimental).
Please update ahash to use that version. See this upstream commit as
patch:
https://github.com/tkaitchuck/aHash/pull/265/files
Quoting Matthias Geiger (2025-07-31 22:49:10)
I intend to update zerocopy to 0.8 (staged in experimental).
Please update ahash to use that version. See this upstream commit as
patch:
https://github.com/tkaitchuck/aHash/pull/265/files
This is blocked by bug#1110258.
On Sat, 02 Aug 2025 12:49, Jonas Smedegaard <[email protected]> wrote:
Quoting Matthias Geiger (2025-07-31 22:49:10)
I intend to update zerocopy to 0.8 (staged in experimental).
Please update ahash to use that version. See this upstream commit as
patch:
https://github.com/tkaitchuck/aHash/pull/265/files
This is blocked by bug#1110258.
Uploaded uuid just now.
Quoting Matthias Geiger (2025-08-02 18:06:16)
On Sat, 02 Aug 2025 12:49, Jonas Smedegaard <[email protected]> wrote: >Quoting Matthias Geiger (2025-07-31 22:49:10)
I intend to update zerocopy to 0.8 (staged in experimental).
Please update ahash to use that version. See this upstream commit as
patch:
https://github.com/tkaitchuck/aHash/pull/265/files
This is blocked by bug#1110258.
Uploaded uuid just now.
It is still blocked, now by a circular build-dependency:
ahash → hashbrown → indexmap → serde_json → value-bag-serde1 → value-bag → log → rand → uuid → ahash
block -1 by 1110273
thanks
Quoting Jonas Smedegaard (2025-08-02 18:43:50)
Quoting Matthias Geiger (2025-08-02 18:06:16)
On Sat, 02 Aug 2025 12:49, Jonas Smedegaard <[email protected]> wrote:
Quoting Matthias Geiger (2025-07-31 22:49:10)Uploaded uuid just now.
I intend to update zerocopy to 0.8 (staged in experimental).
Please update ahash to use that version. See this upstream commit as
patch:
https://github.com/tkaitchuck/aHash/pull/265/files
This is blocked by bug#1110258.
It is still blocked, now by a circular build-dependency:
ahash → hashbrown → indexmap → serde_json → value-bag-serde1 → value-bag → log → rand → uuid → ahash
No, that was incorrect - I was missing zerocopy in the list:
ahash → hashbrown → indexmap → serde_json → value-bag-serde1 → value-bag → log → rand → uuid → zerocopy → ahash
Also, the list might be bogus - possibly I mixed build-dependencyies
and dependencies.
I now identified a more narrow problem that is hopefully the real one
(not another one): librust-uuid-dev is impossible to install. Filed as >bug#1110273.
- Jonas
On Sat, 02 Aug 2025 19:07, Jonas Smedegaard <[email protected]> wrote:
I now identified a more narrow problem that is hopefully the real one
(not another one): librust-uuid-dev is impossible to install. Filed as >bug#1110273.
- Jonas
Since rand etc. only gets pulled in as -dev-dependency, and since you
B-D on -dev-dependencies not needed for cargo build, but only for cargo test, IMO the "easiest" way is to disable tests for now since that
caused this loop.
Quoting Matthias Geiger (2025-08-02 19:17:46)
On Sat, 02 Aug 2025 19:07, Jonas Smedegaard <[email protected]> wrote:
I now identified a more narrow problem that is hopefully the real one >(not another one): librust-uuid-dev is impossible to install. Filed as >bug#1110273.
- Jonas
Since rand etc. only gets pulled in as -dev-dependency, and since you
B-D on -dev-dependencies not needed for cargo build, but only for cargo test, IMO the "easiest" way is to disable tests for now since that
caused this loop.
With dh-rust, also the install routine requires dev-dependencies
satisfied.
dh-cargo has python code copying Rust code files.
dh-rust rely on upstream cargo to copy Rust code files, which requires dev-dependencies available. So no, I cannot do that trick (or I won't, because I won't bypass cargo in relolving upstream dependency tree).
On Sat, 02 Aug 2025 19:30:59 +0200 Jonas Smedegaard <[email protected]> wrote:
Quoting Matthias Geiger (2025-08-02 19:17:46)
On Sat, 02 Aug 2025 19:07, Jonas Smedegaard <[email protected]> wrote:
I now identified a more narrow problem that is hopefully the real one >(not another one): librust-uuid-dev is impossible to install. Filed as >bug#1110273.
- Jonas
Since rand etc. only gets pulled in as -dev-dependency, and since you B-D on -dev-dependencies not needed for cargo build, but only for cargo test, IMO the "easiest" way is to disable tests for now since that caused this loop.
With dh-rust, also the install routine requires dev-dependencies
satisfied.
dh-cargo has python code copying Rust code files.
dh-rust rely on upstream cargo to copy Rust code files, which requires dev-dependencies available. So no, I cannot do that trick (or I won't, because I won't bypass cargo in relolving upstream dependency tree).
The easiest way to unbreak this loop (and we have to do this) is IMO to temporarily disable the log feature of rand. This avoids rand pulling in
log, breaking the cycle. Then at least ahash should built. I will do a
quick testrun of both and report back here.
An alternative soloution is to at least reduce the problem is toThe easiest way to unbreak this loop (and we have to do this) is IMO to temporarily disable the log feature of rand. This avoids rand pulling in log, breaking the cycle. Then at least ahash should built. I will do a quick testrun of both and report back here.
I don't like the "temporary" part of that plan.
The easiest way to unbreak this loop (and we have to do this) is IMO to temporarily disable the log feature of rand. This avoids rand pulling in log, breaking the cycle. Then at least ahash should built. I will do a quick testrun of both and report back here.
I don't like the "temporary" part of that plan.An alternative soloution is to at least reduce the problem is to
upgrade hashbrown to 0.15, hashbrown 0.15 changes the
default hasher to foldhash and no longer has a dependency
on ahash (you can still use it with ahash through the
"hasher" trait if you want).
foldhash has no cargo dependencies, build-dependencies or
dev-dependencies.
I've uploaded hashbrown 0.15 and it's most important reverse
dependency indexmap to experimental and with that and some
other dependency tweaks, I was able to get rust-uuid installed
in my experimental chroot without needing rust-ahash.
unfortunately, rust-ahash also build-depends on criterion,
which depends on ciborium, which depends on ciborium-ll,
which depends on half, which depends on rkyv which depends
on ahash
Perhaps disabling the ahash feature in rkyv would make sense,
I don't think anything in Debian uses it.
Anyway, I need to get some sleep, will have a further look at
this sometime.
I have tried to avoid benchmarking tests to get rid of the dependency
on criterion, but then another no-panic test mysteriously (to me) fails.
I have pushed my changes to https://salsa.debian.org/debian/rust-ahash
and would appreciate if someone more clueful than me could try make
sense of why no-panic test fails.
| Sysop: | Keyop |
|---|---|
| Location: | Huddersfield, West Yorkshire, UK |
| Users: | 716 |
| Nodes: | 16 (2 / 14) |
| Uptime: | 56:37:21 |
| Calls: | 12,117 |
| Files: | 15,010 |
| Messages: | 6,518,666 |