Discussion:
Bug#1087400: rust-wasmtime: please update rust-wasmtime to version 21 and provide wasmtime
(too old to reply)
Ananthu C V
2024-11-12 20:50:01 UTC
Permalink
Source: rust-wasmtime
Version: 19.0.0+dfsg-4
Severity: wishlist

Dear Maintainer,

I am working on packaging zellij and wasmtime is one of the crates in its
dependency tree. Zellij currently requires version 21.0.2 of wasmtime and
there are also other dependencies in the tree that should match this, such
as wasmtime-wasi, wiggle etc. If this was needed for only one package, I'd
have tried to work around with the current version instead, but given several
packages require it and and my absolute unfamiliarity with wasm, I'd really
appreciate if this can be done. Naturally, I am willing to help with this if
you need it.

While I am filing this as wishlist, for me at least this is quite a critical
dependency to move forward with the zellij work which is already at 80+ packges
including packaged + new queue + un-uploaded. At this point the only real blocker
is wasmtime. I would like to get zellij done for trixie.

From zellij-server crate Cargo.toml:

[dependencies.wasmtime]
version = "21.0.2" # Keep in sync with wasmtime-wasi
default-features = false
features = [
'async',
'cache',
'parallel-compilation',
'cranelift',
'demangle',
'addr2line',
'debug-builtins',
'runtime',
'component-model',
'std',
'gc',
]


-- System Information:
Debian Release: trixie/sid
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 6.1.0-27-amd64 (SMP w/16 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: unable to detect

--
Best,
Ananthu
Jonas Smedegaard
2024-11-17 08:10:01 UTC
Permalink
Quoting Ananthu C V (2024-11-12 21:41:55)
Post by Ananthu C V
I am working on packaging zellij and wasmtime is one of the crates in its
dependency tree. Zellij currently requires version 21.0.2 of wasmtime and
there are also other dependencies in the tree that should match this, such
as wasmtime-wasi, wiggle etc. If this was needed for only one package, I'd
have tried to work around with the current version instead, but given several
packages require it and and my absolute unfamiliarity with wasm, I'd really
appreciate if this can be done. Naturally, I am willing to help with this if
you need it.
src:rust-wasmtime has now been upgraded to v21.0.2, which is nowadays
suitable also for other reverse dependencies in my pipeline - notably
swc (bug#991761, #1086863) and lapce (bug#1008881).

Providing binary package rust-wasmtime is not yet completed, however.
That requires some more involved work on composing the packaging, may
involve the introduction of new packages for required dependency crates,
and will certainly involve a visit to the NEW queue for
src:rust-wasmtime itself due to the introduction of new binary packages
(which I consider too different to provide as virtual packages).

I am not sure when I will find enough time to complete this work.

- Jonas
--
* Jonas Smedegaard - idealist & Internet-arkitekt
* Tlf.: +45 40843136 Website: http://dr.jones.dk/
* Sponsorship: https://ko-fi.com/drjones

[x] quote me freely [ ] ask before reusing [ ] keep private
Ananthu C V
2024-11-30 22:40:01 UTC
Permalink
Thanks for the quick bump of the package version. My issue, however
resolves only with librust-wasmtime-dev being available. As mentioned,
this is currently the only big blocker for zellij (another being isahc
that I am trying to fix). I understand that this work can be quite a
bit involved but I have no choice but to ask what can be done to speed
it up as I want to get zellij into trixie. The problems now are that,

1) wasmtime is a hard dependency that can't be patched out.
2) rust-wasmtime is already occupying the namespace and uses the same
source, so it does not make any sense to have a seperate package.
3) rust-wasmtime is individually maintained, and I am not familiar with
your workflow at all.

So, it is currently at a standstill, although I respect that you have
your priorities. What do you think can be done to resolve the current
state? Is there ways in which I can reduce your burden so that I can
make this process smoother for you or let you concentrate on this?
--
Best,
Ananthu
Jonas Smedegaard
2024-12-01 02:00:01 UTC
Permalink
Quoting Ananthu C V (2024-11-30 23:31:26)
Post by Ananthu C V
Thanks for the quick bump of the package version. My issue, however
resolves only with librust-wasmtime-dev being available. As mentioned,
this is currently the only big blocker for zellij (another being isahc
that I am trying to fix). I understand that this work can be quite a
bit involved but I have no choice but to ask what can be done to speed
it up as I want to get zellij into trixie. The problems now are that,
1) wasmtime is a hard dependency that can't be patched out.
2) rust-wasmtime is already occupying the namespace and uses the same
source, so it does not make any sense to have a seperate package.
3) rust-wasmtime is individually maintained, and I am not familiar with
your workflow at all.
So, it is currently at a standstill, although I respect that you have
your priorities. What do you think can be done to resolve the current
state? Is there ways in which I can reduce your burden so that I can
make this process smoother for you or let you concentrate on this?
I am slowly grinding my way through the setup of wasmtime. It is not
simple, and although you are welcome to help, the task of introducing
you to the way I work will slow me down until you are well versed in it
and can help speed up our then collective work, so not a good fit for
being in a hurry.

One package I have just now identified is needed for wasmtime and not
in Debian is wasmprinter v0.207.0. You can help concretely by packaging
that.

If I identify other missing packages, I will let you know.

- Jonas
--
* Jonas Smedegaard - idealist & Internet-arkitekt
* Tlf.: +45 40843136 Website: http://dr.jones.dk/
* Sponsorship: https://ko-fi.com/drjones

[x] quote me freely [ ] ask before reusing [ ] keep private
Jonas Smedegaard
2024-12-01 02:40:01 UTC
Permalink
Quoting Jonas Smedegaard (2024-12-01 02:46:39)
Post by Jonas Smedegaard
One package I have just now identified is needed for wasmtime and not
in Debian is wasmprinter v0.207.0. You can help concretely by
packaging that.
Ah, the version might cause headaches: wasmtime fails to build
currently, seemingly due to too new branches of other wasm-tools:
wasmtime v21 needs v207/v1.207/v0.207 of wasm-tools crates, but
Debian currently has v217/v1.217/v0.217 of these crates from the
wasm-tools workspace: wasmparser wat wast wasm-encoder.

Possibly wasmprinter needs to match the version of other wasm-tools
crates (just a wild guess).

If the patch to chase the newer wasm-tools crates in Debian grows too
large, I may instead move to a newer release of wasmtime, and leave ot
to you to then try patch zellij to keep up with that.

- Jonas
--
* Jonas Smedegaard - idealist & Internet-arkitekt
* Tlf.: +45 40843136 Website: http://dr.jones.dk/
* Sponsorship: https://ko-fi.com/drjones

[x] quote me freely [ ] ask before reusing [ ] keep private
Ananthu C V
2024-12-14 15:30:02 UTC
Permalink
Post by Jonas Smedegaard
Ah, the version might cause headaches: wasmtime fails to build
wasmtime v21 needs v207/v1.207/v0.207 of wasm-tools crates, but
Debian currently has v217/v1.217/v0.217 of these crates from the
wasm-tools workspace: wasmparser wat wast wasm-encoder.
Possibly wasmprinter needs to match the version of other wasm-tools
crates (just a wild guess).
If the patch to chase the newer wasm-tools crates in Debian grows too
large, I may instead move to a newer release of wasmtime, and leave ot
to you to then try patch zellij to keep up with that.
Thank you for working on it. Please go ahead with the version bumps and
uploads if you find those necessary. I can't even start to do any work
because librust-wasmtime-dev is missing, so a version mismatch is currently
the least of my worries. It might cause issues, but it can probably be
worked upon. My current priority is certainly librust-wasmtime-dev being
available.
--
Best,
Ananthu
Ananthu C V
2025-01-05 13:40:01 UTC
Permalink
Hi Jonas,

Sorry for yet another ping, but is there any progress/updates?

You mentioned previously that you might need to bump the version
of rust-wasmtime again, and recently zellij upstream mentioned to
me that they'd be willing to bump the dependency on wasmtime to v24
if that'd help my packaging efforts[0]. How about it? Would that help
you to proceed here? If yes, I can ask the zellij upstream to go
ahead with the bump to make work less for both of us. In any case,
the prerequisite is that librust-wasmtime-dev has to be available.
--
Best,
Ananthu
Jonas Smedegaard
2025-01-05 16:00:01 UTC
Permalink
Quoting Ananthu C V (2025-01-05 14:26:25)
Post by Ananthu C V
Sorry for yet another ping, but is there any progress/updates?
You mentioned previously that you might need to bump the version
of rust-wasmtime again, and recently zellij upstream mentioned to
me that they'd be willing to bump the dependency on wasmtime to v24
if that'd help my packaging efforts[0]. How about it? Would that help
you to proceed here? If yes, I can ask the zellij upstream to go
ahead with the bump to make work less for both of us. In any case,
the prerequisite is that librust-wasmtime-dev has to be available.
The packaging is complex, so I cannot say for sure that bumping to newer
release is the only obstacle, only (as earlier stated) that it seems
likely to be easier to reach a packagable state, due to sets of
depending crates being major releases ahead of wasmtime by now.

I attend a bachelor study and have a delivery on the 9th of January -
my plan is to look into bumping to newer major release of wasmtime
after that delivery is behind me.

NB! If you (despite the tiny odds of that succeeding) want to try get
zellij included with nex stable release of Debian, then I suggest that
you try make a crude packaging at first, ignoring failures linking with
wasmtime, targeted experimental, so that you earlier get the package
introduced to the ftpmaster team for their NEW qeueu processing.

- Jonas
--
* Jonas Smedegaard - idealist & Internet-arkitekt
* Tlf.: +45 40843136 Website: http://dr.jones.dk/
* Sponsorship: https://ko-fi.com/drjones

[x] quote me freely [ ] ask before reusing [ ] keep private
Loading...