qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: qemu-devel@nongnu.org, manos.pitsidianakis@linaro.org,
	zhao1.liu@intel.com, junjie.mao@intel.com,
	pierrick.bouvier@linaro.org, alex.bennee@linaro.org
Subject: Re: [PULL 00/12] Rust initial PoC + meson changes for 2024-10-07
Date: Mon, 7 Oct 2024 12:47:08 +0100	[thread overview]
Message-ID: <ZwPKPGkpklnY9i5z@redhat.com> (raw)
In-Reply-To: <CABgObfYZgR9xNnP9mHWU92XZZ_VeFLHimkd-t-63KX_KWeDZ=A@mail.gmail.com>

On Mon, Oct 07, 2024 at 01:26:52PM +0200, Paolo Bonzini wrote:
> On Mon, Oct 7, 2024 at 1:11 PM Daniel P. Berrangé <berrange@redhat.com> wrote:
> > The current dockerfiles don't include rust, and I see nothing
> > here updating them to add rust, so how is any of this getting
> > test coverage ?
> >
> > Even though this has Rust disabled by default, I would still
> > consider CI enablement to be a pre-requsite for merging even
> > basic Rust support.
> 
> I agree in general, but there's already a lot of work that can be
> parallelized and the idea of someone managing Rust-related patches
> out-of-tree was discarded. So this seemed to be the only way to
> proceed.
> 
> Right now only Fedora 39 and 40 (with updates) are able to compile
> QEMU with Rust enabled. Full CI enablement requires further work to
> reduce the minimum supported version of the compiler, after which
> rustc can be added to the libvirt-ci inputs and to the Dockerfiles.

Full CI enablement isn't a requirement until we want to turn on
Rust by default. It would be sufficient to have a single job in
CI using Fedora 40 that passes '--enable-rust' to demonstrate that
this at least working on one platform we expect.

> Adding a CI job that uses nightly rust (via rustup) is high on my
> priority list, but first of all I wanted to integrate clippy (because
> the main point of having a job with nightly rust is to have a heads-up
> on future clippy warnings). That said, I'm also not sure how one would
> go adding rustup to a container generated by lcitool (for example
> should I add a new dockerfile that is _based_ on one that already
> exists? would that change when Rust/rustc is added to that
> dockerfile?).

Having layered dockerfiles is something we try to aviod these days,
since each layer turns into another job dependancy in the CI
pipeline, expanding the number of stages.

If the job is merely to validate nightly clippy do we even need
any of the rest of the QEMU build deps present ?  Can we not just
use a generic pre-existing Rust container and only run clippy
in it.

If we want to actually build with the cutting edge, then I'd say
it is sufficient to have a container based on Fedora rawhide, since
that gives a heads up on what's soon to be impacting the next stable
distro release, upto 6 months ahead of time - we don't need to be
watching& debugging stuff that hasn't even been released by Rust
yet IMHO.

With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



  reply	other threads:[~2024-10-07 11:48 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-07 11:03 [PULL 00/12] Rust initial PoC + meson changes for 2024-10-07 Paolo Bonzini
2024-10-07 11:03 ` [PULL 01/12] Require meson version 1.5.0 Paolo Bonzini
2024-10-07 11:03 ` [PULL 02/12] build-sys: Add rust feature option Paolo Bonzini
2024-10-07 11:03 ` [PULL 03/12] configure, meson: detect Rust toolchain Paolo Bonzini
2024-10-07 11:03 ` [PULL 04/12] rust: add bindgen step as a meson dependency Paolo Bonzini
2024-10-07 11:03 ` [PULL 05/12] .gitattributes: add Rust diff and merge attributes Paolo Bonzini
2024-10-07 11:03 ` [PULL 06/12] meson.build: add HAVE_GLIB_WITH_ALIGNED_ALLOC flag Paolo Bonzini
2024-10-07 11:03 ` [PULL 07/12] rust: add crate to expose bindings and interfaces Paolo Bonzini
2024-10-07 11:03 ` [PULL 08/12] rust: add utility procedural macro crate Paolo Bonzini
2024-10-07 11:03 ` [PULL 09/12] rust: add PL011 device model Paolo Bonzini
2024-10-07 11:03 ` [PULL 10/12] meson: fix machine option for x86_version Paolo Bonzini
2024-10-07 11:03 ` [PULL 11/12] meson: define qemu_isa_flags Paolo Bonzini
2024-10-07 11:03 ` [PULL 12/12] meson: ensure -mcx16 is passed when detecting ATOMIC128 Paolo Bonzini
2024-10-07 11:11 ` [PULL 00/12] Rust initial PoC + meson changes for 2024-10-07 Daniel P. Berrangé
2024-10-07 11:26   ` Paolo Bonzini
2024-10-07 11:47     ` Daniel P. Berrangé [this message]
2024-10-07 11:52       ` Daniel P. Berrangé
2024-10-07 15:51         ` Paolo Bonzini
2024-10-07 17:56 ` Brian Cain
2024-10-07 19:15   ` Paolo Bonzini
2024-10-08  3:27     ` Brian Cain
2024-10-08  3:39       ` Pierrick Bouvier
2024-10-08 10:01       ` Alex Bennée

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZwPKPGkpklnY9i5z@redhat.com \
    --to=berrange@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=junjie.mao@intel.com \
    --cc=manos.pitsidianakis@linaro.org \
    --cc=pbonzini@redhat.com \
    --cc=pierrick.bouvier@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=zhao1.liu@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).